caid Skrevet 18. mai 2009 Del Skrevet 18. mai 2009 (endret) Hei, har planer om å lage et lite program som rekner om tankpeilinger i cm til liter, i C#. Problemet er tanker der en ikke kan bruke linjære funksjoner. Her er en peiletabell til f.eks en vanntank, som ser slik ut: 000 cm - 0 l 010 cm - 50 l 020 cm - 95 l 030 cm - 135 l 040 cm - 175 l 050 cm - 220 l 060 cm - 265 l 070 cm - 315 l 080 cm - 375 l 090 cm - 445 l 100 cm - 525 l 110 cm - 605 l Har lagt med et bilde av tanken også. Jeg trenger hjelp til en mest mulig effektiv algoritme, der jeg kan skrive in et vannivå på f.eks 37 cm, og få ut hvor mange liter det tilsvarer. Tror interpolering er stikkordet her. Noen som kan hjelpe meg litt på vei? Endret 18. mai 2009 av caid Lenke til kommentar
HDSoftware Skrevet 18. mai 2009 Del Skrevet 18. mai 2009 Så lenge du ikek har noe matematisk uttrykk for takens areal i alle nivåene så må du vel antagligvis lage deg en tabell anntar jeg, som representerer arealet for den angitte høyden. Så er det jo bare å legge sammen alle lagene f.o.m. bunnen t.o.m. anngitt høyde. Er "utsnittet" i tanken lineært eller om den følger en viss matematisk formel så kan du jo gjøre anntagelser i arealet du tar vekk. Er f.eks. utsnittet sirkelformet så kan du jo veldig enkelt bruke SIN og COS for å finne ut hvor mye av totalarealet som er "skåret" vekk. Er utsnittet mere som en jevn parabel så vil det jo være kjappt å måle seg frem til hvilken formel du må bruke. Er den derimot uregelmessig så må du vel sette opp en rekke med målinger og bruke dette når du beregner arealet. I så fall må du ha tette målinger for å få det så nøyaktig som mulig Når du har disse arealene så er det bare å summere dem opp Lenke til kommentar
SkydiveWings Skrevet 18. mai 2009 Del Skrevet 18. mai 2009 Om du ikkje trenger 100% rett svar kan du bruke regresjon, fekk eit svar som ikkje er så veldig galt! Lenke til kommentar
GeirGrusom Skrevet 19. mai 2009 Del Skrevet 19. mai 2009 Jeg ville brukt en kurvefunksjon for interpolering tror jeg. Lenke til kommentar
caid Skrevet 19. mai 2009 Forfatter Del Skrevet 19. mai 2009 Joda, planen var hele tiden at tabellene for tankene skulle legges inn i en xml fil, laget bare et lite bilde også, for å enklere vise hva jeg var ute etter Jeg ville brukt en kurvefunksjon for interpolering tror jeg. Tror jeg går for splinefunksjonen som er brukt i dette eksempelet: SplineInterpolation Polynom eksempelet ser ut til å gi litt for store svingninger. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå