Miten luodaan polynomi-aproksimaatio xy-datajoukolle?

Anonyymi

Hei, tarvitsen luokkaa 12 asteen likimääräistysfunktion joukolle mittausdataa, muotoa y = a*x^12 b*x^11 c*x^10 jne vakio. Data on x= virta, y=lämpötila ja mitauspisteitä on ainakin tuhat. Tiedän, että kun teen datajoukosta graafin, voin lisätä sille kuudennen asteen polynomilikimääräisfunktion ja voin valita tuon funtion esitettäväksi graafin otsikkotaulussa josta funktion voi kopioida. Mutta Excel sallii vain kuudennen asteen polynomin, se ei ole riittävän tarkka. Tarvitsisi siis oikeasti laskea tuo jotenkin enkä tiedä edes mistä aloittaisin. Kiireen tuntuakin on ilmassa, olisiko jollakin aikaa auttaa.

Pieni esimerkkipätkä datasta (mittalaitteet ovat paljon tarkempia kuin esimerkissä) :

I(uA) > T ©
1.01 > 20.10
1.10 > 20.12
1.21 > 20.13
1.31 > 20.14
1.41 > 20.15
1.52 > 20.15
1.61 > 20.17
1.72 > 20.18
1.81 > 20.18
1.90 > 20.19

7

255

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Olet siis sovittamassa pienimmän neliösumman menetelmällä 12 - asteista polynomia lämpötiladataan. Siinä sovituksessa tulee aika laaja parametriavaruus kyseeseen eli voi olla vaikea löytää todellista minimiä paikallisten minimeiden joukosta.

      Kysymys: Miksi pitää olla 12 sovitettavaa parametriä? Onko tuolle oikeasti joku tilanteen fysiikasta aiheutuva peruste?

      Oikea työkalu voisi olla Octave (tai Matlab, jos löytyy lisenssi) tai sitten R. Kun siis Excelin kyvyt asiassa ovat rajoittuneita. Myös Igor Pro osaa asia, https://www.wavemetrics.com/products/igorpro/dataanalysis/curvefitting

      • Anonyymi

        Onnistuu Excelilläkin kun vain tekee sen PNS-sovittelemaan etsinnän VBA:lla. Valmiina funktiona sitä ei taida löytyä. Jos ei ole koodausosaamista tai ei osaa VBA-kieltä, niin Octave ja R ovat ihan hyviä vaihtoehtoja.


      • Anonyymi
        Anonyymi kirjoitti:

        Onnistuu Excelilläkin kun vain tekee sen PNS-sovittelemaan etsinnän VBA:lla. Valmiina funktiona sitä ei taida löytyä. Jos ei ole koodausosaamista tai ei osaa VBA-kieltä, niin Octave ja R ovat ihan hyviä vaihtoehtoja.

        *PNS-sovitteen. Pahuksen autocorrect.


      • Anonyymi

        Täsmälleen, pienimmän neliösumman menetelmällä (saa kyllä olla parempikin menetelmä). Noin 12 asteinen polynomi tarvitaan, koska 6 asteinen ei taivu niin hyvin/tiukasti. Tässä on rajoitteina lopullisen hinta, koko ja virrankulutus. Sensoreilla on melkoisen omalaatuinen ominaiskäyrä mutta systemaattisesti sellainen. Datajoukkoja tullee olemaan noin 6 kpl, jokaisessa tuhansia pisteitä. Näen Excelissä, kun interpoloin raakadatasta on tulos paljon tarkempi kuin 6 asteen polynomiaproksimaation avulla. Mutta raakadatalle ei ole muistitilaa (paitsi jos lisään muistipiirin joka vie fyysystä tilaa ja virtaa), useille korkean asteen polynomeille on hyvin muistitilaa.

        Excel osaa luoda 6-asteen polynomin silmänraäpäyksessa (graafikäyrälle), joten täyyhän sen olla mahdollista taulukkosivullakin (?). En tiedä miksi graafikäyrien aproksimaatioon ei saa valita enemmän kuin 6 asteinen, luultavasti kyseessä on toiminta-aika, mutta tässä tapauksessa ei ole väliä vaikka kestäisi sekunteja.


      • Anonyymi
        Anonyymi kirjoitti:

        *PNS-sovitteen. Pahuksen autocorrect.

        Tuo auttoikin paljon. Nyt tiedän mitä "PNS-menetelmä" tarkoittaa.


    • Anonyymi

      Kuka kärsii alemmuuskompleksista, noin pahasti?

    • Anonyymi

      Avauksen esimerkille kertoimet ovat (laskevassa järjestyksessä eli 'a' on 12.asteen termin kerroin):

      a: -27.3658794661747
      b: 401.252089302067
      c: -2474.57689558702
      d: 8019.96561586043
      e: -12772.1513183952
      f: 0
      g: 42153.8536455465
      h: -87016.9751920586
      i: 86484.9179192169
      j: -40358.2533134018
      k: 0
      l: 7956.14532955263
      vakio: -2346.72396451096

      Excel laskee nuo yhdellä array-formulalla.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Useita puukotettu Tampereella

      Mikäs homma tämä nyt taas on? "Useaa henkilöä on puukotettu Tampereen keskustassa kauppakeskus Ratinan lähistöllä." ht
      Tampere
      169
      3319
    2. Asiakas iski kaupassa varastelua tehneen kanveesiin.

      https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava
      Maailman menoa
      373
      2141
    3. Kuka rääkkää eläimiä Puolangalla?

      Poliisi ampui toistakymmentä nälkiintynyttä eläintä Puolangalla Tilalta oli ollut karkuteillä lähes viisikymmentä nälkii
      Puolanka
      48
      2048
    4. Leipivaaran päällä on kuoleman hiljaista.

      Suru vai suuri helpotus...
      Puolanka
      41
      1951
    5. Meneeköhän sulla

      oikeasti pinnan alla yhtä huonosti kuin mulla? Tai yhtä huonosti mutta jollain eri tyylillä? Ei olisi pitänyt jättää sua
      Ikävä
      32
      1471
    6. Jos ei tiedä mitä toisesta haluaa

      Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em
      Ikävä
      93
      1241
    7. Määpä tiijän että rakastat

      Minua nimittäin. Samoin hei! Olet mun vastakappaleeni.
      Ikävä
      54
      1203
    8. Muutama kysymys ja huomio hindulaisesta kulttuurista.

      Vedakirjoituksia pidetään historiallisina teksteinä, ei siis "julistuksena" kuten esimerkiksi Raamattua, vaan kuten koul
      Hindulaisuus
      385
      1075
    9. Jumala puhui minulle

      Hän kertoi sinusta asioita, joiden takia jaksan, uskon ja luotan. Hän kuvaili sinua minulle ja pakahduin onnesta kuulles
      Ikävä
      114
      1003
    10. Koska näit kaivattusi viimeksi

      Milloin tapasit rakkaasi? Ja etenikö suhde yhtään?
      Ikävä
      45
      864
    Aihe