proj CaptChem read tanker.gf LBP 0, 95f variable L set L={FP} plus {AP} div 2 LBP {FP}, {L}, {AP} smod 1E5/5.0 `Light ship: WEIGHT 1.015085 @-100.9681 , 20.3017 @-98.39809 , 34.51291 @-88.4981 , 28.42239 @-88.39809 , 28.42239 @-25.49809 , 32.48273 @-25.39809 , 32.48273 @-9.498089 , 44.66375 @-9.398089 , 20.3017 @-.5000898 0 6.501701 `Added weights ADD"Crew and Effects " 4 -1 0 11.5 /MAX 4 ADD"Engine Room Spares" 15 -8 0 2 /MAX 15 ADD"Bosun's Stores " 8 -91.3 0 10.5 /MAX 8 ADD"Hoses and Fittings" 6 -25.88 0 9.899998 `Tanks as loaded: PART WBDB2.S | LOAD .1 | CONT SW PART WBDB2.P | LOAD .1 | CONT SW PART WBDB3.S | LOAD 1 | CONT SW PART WBDB3.P | LOAD 1 | CONT SW PART CGC3.C | LOAD .83 | CONT "LINSEED" .934 PART CGC4.C | LOAD .83 | CONT "BENZENE" .879 PART CGS3.S | LOAD .025 |CONT FW PART FOSET.P | LOAD .98 | CONT "FUEL OIL" .87 PART FODAY.P | LOAD .98 | CONT "FUEL OIL" .87 PART DODBER.S | LOAD .98 | CONT "DIESEL OIL" .75 PART DODBER.P | LOAD .98 | CONT "DIESEL OIL" .75 PART DODAY.S | LOAD .98 | CONT "DIESEL OIL" .75 PART LOSYS.C | LOAD .98 | CONT "LUBE OIL" .924 PART LOSTO.S | LOAD .98 | CONT "LUBE OIL" .924 PART FW.S | LOAD 1 | CONT FW PART FW.P | LOAD 1 | CONT FW macro drafts `drafts taken by crew (except the bad one at 55f) draft 4.04 @ FP, 4.06 @ 85f, 4.15 @ 75f, 4.14 @ 65f, 4.20 @ MP, 4.21 @ 35f, 4.23 @ 25f, 4.28 @ 15f, 4.34 @ AP / .drafts `Weights to correct draft & trim: deflect 0 add "Aft growth" 5.0, 0, 0, {FVCG} add "Fwd growth" DELTA, ?, ?, {FVCG} \LS prediction in the condition when the draft survey was done ls /notab wait report .drafts page status fixed, tanks:tot, displ disk intermediate.dat /holdreport variable (le) permsag=0.03 `this is the permanent sag to be accounted for `Make added weight "Sagger" to correct deflection `with a tapered distribution in order to avoid changing shear much variable (we) sagger=1 `initial guess at peak tons/meter variable (le) HL=30 `half length of distribution variable (le) L1, L2 macro sagger set L1={FLCG} minus {HL}, L2={FLCG} plus {HL} add "Sagger" 0 @ {L1}, {sagger} @ {FLCG}, 0 @ {L2}, 0, {FVCG} /nowarn .drafts deflect {permsag} solve weight, lcg / variable (le) ds variable q macro matchdefl .sagger ls /notab set DRLOC8={MP} set ds={deflect} minus {permsag} `want ds to be zero set q={ds} times 70 plus 1 `simple correction based on ds set sagger={sagger} times {q} \ ds: {ds:3} q: {q:4} sagger: {sagger:3} / .matchdefl (9) `try it 9 times to bring ds down to zero .drafts solve weight, lcg `Check result: disk off ls /notab status fixed, tanks:tot, displ page ls /notab:plotonly /profile print preview /thick:3 report off