
tobixen
Advarsel: Dette blir et skrekkelig langt og kjedelig innlegg. Jeg tar eksempelutregninger i et separat innlegg, så de som ikke er interessert i denne matematiske øvelsen kan hoppe glatt over dette innlegget.
On 7/29/2021 at 11:33 AM, tobixen said:Her har vi 7 ukjente variabler og 7 ligninger, så da skal det være mulig å finne formler for alle de ukjente variablene. Dette er triviell algebra. Jeg antar det finnes programvare for dette formålet, uten at jeg har noen oversikt over dét. Jeg har lyst til å bruke litt tid på å enten få oversikt eller løse opp ligningene manuelt ...
Jeg prøver å løse dette "manuelt", slik jeg lærte på barneskolen. Jeg tar utregningen med her - jeg gjorde ofte idiotiske feil på barneskolen under slike utregninger, og tabber meg fortsatt ut i ett sett, så de som evner å følge med får gjerne kvalitetssikre at dette blir riktig.
Ting ble fort veldig komplisert når jeg prøvde å la h være en kjent variabel og l1y og l2y som ukjente. La oss heller si at vi ønsker å vite hvor stor kraft vinden skal dra båten med for at vi skal oppnå en ønsket l1y og l2y. (Det slår meg også at l1, l1x, l1y er forferdelige variabelnavn, ettersom bokstaven l og tallet 1 ser dønn likt ut i enkelte fonter).
Først har jeg disse to (pytagoras - dekomponering av taulengde mellom anker og daumann (l1) og mellom daumann og båt (l2) i en horisontal (l1x, l2x) og vertikal (l1y, l2y) komponent):
l1x^2+l1y^2=l1^2
l2x^2+l2x^2=l2^2
Skrives om slik:
l1x=sqrt(l1^2-l1y^2)
l2x=sqrt(l2^2-l2y^2)
(l1x og l2x skal være positive, vi trenger ikke tenke på at det også kan finnes en negativ løsning)
En ting jeg tidlig la meg for vane til på barneskolen var å verifisere at enhetene ble riktig. l1x og l2x er oppgitt i meter ([m]). Vi får da:
[m] = sqrt([m]^2-[m]^2)
... og det stemmer.
Newtons lover om at summen av kreftene må være null når ting står i ro:
Ax = Bx
Ay = By-Dy
Forhold mellom vertikale og horisontale krefter avgjør vinkel på tauet:
Ax/Ay = l1x/l1y
Bx/By = l2x/l2y
... skrives først om slik (ref Newton):
Bx/(By-Dy) = l1x/l1y
Bx/By = l2x/l2y
... deretter slik (ref pytagoras over):
Bx/(By-Dy) = sqrt(l1^2-l1y^2)/l1y (1)
Bx/By = sqrt(l2^2-l2y^2)/l2y (2)
... arbeider vi litt videre med (2), blir den slik:
Bx = By*sqrt(l2^2-l2y^2)/l2y
Sjekker at enhetene er riktig (B måles i Newton - men én Newton er ett kilogram ganger med gravitasjonen, gravitasjonen er konstant, og daumannsvekta måles i kilogram - så for enkelhets skyld benytter vi kilogram som måleenhet på kreftene):
[kg] = [kg]*sqrt([m]^2-[m]^2)/[m]
meterene faller bort, og vi står igjen med bare kg, som er riktig.
... så kan vi sette inn det uttrykket vi har funnet for Bx inn i (1) ovenfor, og jobbe mot en løsning av By:
Bx/(By-Dy) = sqrt(l1^2-l1y^2)/l1y
By*sqrt(l2^2-l2y^2)/l2y/(By-Dy) = sqrt(l1^2-l1y^2)/l1y
By*sqrt(l2^2-l2y^2)/(l2y*(By-Dy)) = sqrt(l1^2-l1y^2)/l1y
By*sqrt(l2^2-l2y^2) = (l2y*(By-Dy))*sqrt(l1^2-l1y^2)/l1y
By*sqrt(l2^2-l2y^2) = l2y*By*sqrt(l1^2-l1y^2)/l1y - l2y*Dy*sqrt(l1^2-l1y^2)/l1y
l2y*By*sqrt(l1^2-l1y^2)/l1y-By*sqrt(l2^2-l2y^2) = l2y*Dy*sqrt(l1^2-l1y^2)/l1y
By*(l2y*sqrt(l1^2-l1y^2)/l1y-sqrt(l2^2-l2y^2)) = l2y*Dy*sqrt(l1^2-l1y^2)/l1y
By = l2y*Dy*sqrt(l1^2-l1y^2)/l1y/(l2y*sqrt(l1^2-l1y^2)/l1y-sqrt(l2^2-l2y^2))
By = l2y*Dy*sqrt(l1^2-l1y^2)/(l1y*(l2y*sqrt(l1^2-l1y^2)/l1y-sqrt(l2^2-l2y^2)))
Det ser helt forferdelig ut. La meg sjekke at enhetene blir riktig:
[kg] = [m]*[kg]*sqrt([m]^2-[m]^2)/([m]*([m]*sqrt([m]^2-[m]^2)/[m]-sqrt([m]^2-[m]^2)))
[kg] = [m]*[kg]*[m]/([m]*([m]*[m]/[m]-[m]))
[kg] = [m]*[kg]*[m]/([m]*([m]-[m]))
[kg] = [m]*[kg]*[m]/([m]*[m])
[kg] = [kg]
... bra.
Så er det å få noe nyttig ut av disse algoritmene. Jeg tenker ankertaulengde (l1+l2), dybde (h=ly=l1y+l2y - "dybde" inkluderer her høyden opp til festepunkt for ankertau), daumannlengde (l2), daumannsvekt (Dy) og ønsket pilhøyde ("dausynk"?) er fine innparametre. Så gjelder det å finne ly1 og ly2 basert på "dausynk" og dybde.
Ved dausynk=0 (noe som skal være en umulighet?) gjelder:
l2y/ly = l2/l
omskrevet:
l2y = ly*l2/l
Dausynk legges på l2y, og fortsatt gjelder ly = l2y+l1y
l2y = ly*l2/l+dausynk
l1y = ly-l2y
Utparametre, prioritert etter hvor "interessant" jeg synes de er:
[*] Vindkraft på båten som matcher ønsket "dausynk" (Bx)
[*] Vinkel på kraften på ankeret (gjerne som forholdstall - altså l1y/l1 - hvor 1/3 er ansett for å være i grenseland av det forsvarlige)
[*] Forskjell i svingradius med daumann, og hvilken svingradius man ville hatt uten daumann (eller sagt på en annen måte, hvilken svingradius man får dersom vinden øker kraftig på).
[*] Vertikal kraft på ankeret (Ay).
[*] Vertikal kraft på baugen (By).
[*] l1x, l1y, l2x, l2y
Jeg puttet dette inn i python, https://gist.github.com/tobixen/0abc42b0b51d87f5700a221a310b122e
Jeg husker ikke hva jeg kalkulerte sist, men resultatet fra testkjøringen er ikke så helt ulikt hva jeg fikk sist.
Ax: 23.829719218309915
Ay: 0.3177578359738913
Bx: 23.829719218309915
By: 10.317757835973891
Dy: 10
ankertaulengde: 30
daumannlengde: 25
daumannsvekt: 10
dausynk: 1.6
dybde: 10
l1: 5
l1x: 4.999555535800713
l1y: 0.06666666666666643
l2: 25
l2x: 22.941858880415268
l2y: 9.933333333333334