unlssfe flflflflflflflf0 swath ship15 16 structures computation, department mathematics and...
TRANSCRIPT
'-A0.AIIO 77 DAVID V TAYLOR NAVAL. SHIP RESEARCH AND DEVELOPMENT CE--ETC F/6 80/'.DOCUMENTATION FC'. SWATH SHIP RESISTANCE OPTIMIZATION PROMAN (S-ETC (U)SEP I T J NA8LU. AN04REEDUNLSSFE flflflflflflflf0 llff
I1.81111 .2 5 111111.6______111 11111 I .
MICROCOPY RESOLUTION TEST CHART
NATIONAL BUREAUI OfI STANTFIRDI I1
DAVID W. TAYLOR NAVAL SHIPU RESEARCH AND DEVELOPMENT CENTER
Bethesda, Maryland 20084z
DOCUMENTATION FOR SWATH SHIP RESISTANCE
OPTIMIZATION PROGRAM (SWATHO) USER'S AND
MAINTENANCE MANUAL
-.4
.9 Toby J. Nagle r-o* 7
and
0 Arthur M. Reed FEB 11198 2
0-4 E
-€ .APPROVED FOR PUBLIC RELEASE: DISTRIBUTION UNLIMITED
EEP-4
EnH SHIP PERFORMANCE DEPARTMENT
September 1981 DTNSRDC/SPD-0927-03
N1W\TNSRDC %602/3012800180)1 6lspwn3M/046)82 2 1 06
MAJOR DTNSRDC ORGANIZATIONAL COMPONENTS
DTNSRDC
COMMANDER 00TECHNICAL DIRECTOR
01
OFFICE R-I N-CHARGE I____OFFICER-IN-CHARGECARDEROCK IANNAPOLIS
SYSTEMSDEVELOPMENT
DEPARTMENT
SHIP PERFORMANCE AVIATION AND
DEPARTMENT SURFACE EFFECTSDEPARTMENT
15 16
STRUCTURES COMPUTATION,
DEPARTMENT MATHEMATICS ANDLOGISTICS DEPARTMENT
17 18
SHIP ACOUSTICS PROPULSION ANDDEPARTMENT AUXILIARY SYSTEMS
DEPARTMENT19 27
SHIP MATERIALS CENTRALENGINEERING INSTRUMENTATIONDEPARTMENT DEPARTMENT
28 29
GPO 866 993 NOW-DTNSRDC 30/43 (Rev 2-90)
UNCLASSIFIED_______* j SECURITY CLASSIFICATION OF THIS PAGE (When Doe Entered)
• REPORT DOCUMENTATION PAGE READ INSTRUCTIONSREPORT DOCUMENTATION BEFORE COMPLETING FORM
I REPORT NUMBER 2. GOVT ACCESSION NO. 3 RECIPIENT'S CATALOG NUMBER
DTNSRDC/SPD-0927-03 ' - L f" -C TITLE (and Subtitle) 5. TYPE OF REPORT & PERIOD COVERED
DOCUMENTATION FOR SWATH SHIP RESISTANCEOPTIMIZATION PROGRAM (SWATHO) USER'S ANDMAINTENANCE MANUAL - 6. PERFORMING ORG. REPORT NUMmER
7. AUTHOR(s) 1. CONTRACT OR GRANT NUMBERs)
by Toby J. Nagle & Arthur M. ReedS., / " /-
9. PERFORMING ORGANIZATION NAME AND ApDRESS 10. PROGRAM ELEMENT. PROJECT. TASKAREA & WO")I.jNIT NUMBERS
David W. Taylor Naval Ship R&D Center 6 254 N,'ZF43-421-01Bethesda, Md. 20084 1500-104-70
Ii. CONTROLLING OFFICE NAME AND ADDRESS 12. REPORT DATE
David W. Taylor Naval Ship R&D Center September 1981
Code 1506 13. NUMBER OF PAGESBethesda. MD 20084" .
14. MONITORING AGENCY NAME & ADORESS(Il different from Controlling Office) IS. SECURITY CLASS. (of thie report)
UNCLASSIFIED
15a. DECL ASSI FIC ATION" DOWNGRADINGSCHEDULE
16. DISTRIBUTION STATEMENT (of this Report)
APPROVED FOR PUBLIC RELEASE: DISTRIBUTION UNLIMITED
17. DISTRIBUTION STATEMENT (of the abstrect entered In Block 20, It different frog" Report)
IS. SUPPLEMENTARY NOTES
IS. KEY WORDS (Continue on reverse wide If neceeary and Identify by block number)
Small-waterplane-area Twin-hull (SWATH) ShitsResistanceResistance Minimization
20 ABSTRACT (Continue on reverse aide if necessary and Identify by block number)This report documents a computer program, SWATHO, which optimizes SWATH
ship geometry, resulting in a minimum resistance and EHP for a specified speedof the ship. Contained in the report is a detailed description of the proce-dure for assembling the input deck for use on the CDC-6000 computer system at
*, DTNSRDC, running the program on this system and understanding the output fromthe program. Also included are main program and subroutine descriptions ase].l as the theory behind the computations being performed.
DD ,JA 73 1473 EDITION OF I OV65ISOBSOLETE UNCLASSIFIED . 7S7 ' 1J"S N 0102- LF- 014- 6601 SECURITY CLASSIFICATION OF THIS PAGE (Who Date 81ne01)
SECURITY CLASSIFICATION OF THIS PAGE (When Date Entered)
SErIJRITY CLASSIFICATION OF THIS PAGE(Whn Dorm Enfered)
TABLE OF CONTENTSPage
LIST OF FIGURES........................................................... iii
NOMENCLATURE.............................................................. iv
ABSTRACT..................................... ................... ......... 1
ADMINISTRATIVE INFORMATION-....... o........................... .......... 1
INTRODUCTION,...................................... ....................... 1I
USER MANUAL
PROGRAM DESCRIPTION................. ........... ............ .......... 3
INPUT DESCRIPTION ..................... ..................... ........... 4
INPUT EXAMPLE.-................... ...................... ............ 9
OUTPUT DESCRIPTION ........ ............................. ........ .... 10
OUTPUT EXAMPLE..................................... .................. 12
JOB CONTROL SETUP FOR SWATHO.................. .......... ............ 34
MAINTENANCE MANUAL
INTRODUCTION.......................... ............................... 35
FUNCTIONAL LISTING OF FUNCTIONS AND SUBROUTINES..................... 40
COMMON BLOCK DESCRIPTIONS................................... ........ 43
SUBROUTINE AND FUNCTION DESCRIPTIONS................................. 59
REFERENCES............................................... ................ 100
APPENDIX A Objective and Penalty Functions........... .................. 101
APPENDIX B Computational Procedure for SWATH Resistance Prediction ...... 106APPENDIX C Relationships Between Chebychev Series and SWATH Huilform.
Coefficients .............................. ... ...............119
ACCeSicn
'For
NT7IS1J"r
1JIw _
AvN
ile
LIST OF FIGURES
Page
I - SWATH Ship Body and Strut Profiles (SWATHO).......................... 8
2 - 'Free Diagram of SWATH Program........................................ 39
3 - Form Drag Coefficient................................................ 67
4 - Body-Strut Configuration............................................. 95
fit
NOMENCLATURE
Smo Description
A(x) Body sectional area curve
A Maximum section area of body
A Bm Symmetric coefficients of Chebychev
series for body
A Symmetric coefficients of ChebychevSm series for strut
AW Area of the waterplane
b Half of the separation distance of
the hulls
BBm Anti-symmetric coefficients of Chebychev
series for body
B Sm Anti-symmetric coefficients of Chebychev
series for strut
CA Correlation allowance
CF Frictional resistance coefficient
C Fm Form drag coefficient
Cp PBody prismatic coefficient
CWP Waterplane coefficient
C Waterplane longitudinal inertiaCIW coefficient
g Acceleration due to gravity
hB Maximum depth of submergence of axis of
body
hs Maximum draft of strut
n(a) Bessel functions
iv
NOMENCLATURE
(Continued)
Symbol Description
LB Maximum length of body
LS Maximum length of strut
PE Effective power
R Reynolds numbern
R Total ship resistanceT
R WB Wave resistance due to one main body
R Frictional resistance
RFm Form drag
RW SWave resistance due to one strut
Wave resistance due to the interactionwSB of strut and main body
RW Wave resistance
S Wetted surface
T (T also used) Thickness at mid length of strutmax
t(x) Strut half thickness function
TB Auxiliary wave resistance functionmn used in calculation of RW
TS Auxiliary wave resistance function
mn used in calculation of RWs
V
NOMENCLATURE
(Continued)
Symbol Desc r ipt ion
T TSB Auxiliary wave resistance function usedmn in calculation of RWS B
Un (x) Chebychev cosine series term (symmetric)
V Velocity of ship
V (x Chebychev sine series term (asymmetric)m
WE Auxiliary wave resistance function usedran in calculation of RW
B
WS Auxiliary wave resistance function usedmn in calculation of RW
WSB Auxiliary wave resistance function usedmn in calculation of RuS
Variable of integration
P Density of water
Y' Dimensionless wave number related to body¥obob length and ship speed
- Dimensionless wave number related to strutos length and ship speed
4Variable of integration
vi
L I"" M nn. . .. .. ,,. ..._ . .
ENGLISH/SI EQUIVALENTS
I degree (angle) = 0.01745 rad (radians)
1 foot = 0.3048 m (meters)
1 foot per second (fps) = 0.3048 m/sec (meters per second)
I inch = 25.40 mm (millimeters)
1 knot = 0.5144 m/s (meters per second)
1 lb (force) = 4.448 N (Newtons)
I inch-lb - (Inch lbs) = 0.1130 N'm (Newton-meter)
I long ton (2240 pounds) = 1.016 metric tons; or 1016 kilograms
I horsepower = 0.746 kW (kilowatts)
vii
ABSTRACT
This report documents a computer program,
SWATHO, which optimizes SWATH ship geometry,resulting in a minimum resistance and EHP for
a specified speed of the ship. Contained inthe report is a detailed , escription of theprocedure for assembling the input deck for use
on the CDC-6000 computer system at DTNSRDC, runningthe program on this system and understanding theoutput from the program. Also included are mainprogram and subroutine descriptions as well as thetheory behind the computations being performed.
ADMINISTRATIVE INFORMATION
This investigation was authorized under a direct funded block from the
Naval Material Command (NAVMAT 08T2) under Program Element 62543N, Task
Area ZF43-421-001, and administered bv the David W. Taylor Naval Ship
Research and Development Center (DTNSRDC), Work Unit 1500-102-30, and
1-1500-104-70.
INTRODUCTION
The computer program SWATHO, developed at DTNSRDC, optimizes SWATH ship
geometry to arrive at minimum values of resistance and effective horsepower for
a predetermined speed. The minimum values arrived at by the optimization are
a result of initial ship geometry and constraints on the geometry as specified
by the program user.
The calculations use standard EHP prediction methods accounting for
frictional resistance, form drag, and wave resistance. Wave making predictions1
are made using the work of Lin and Day on twin hull ships.
Contained in this report is a user manual which explains how to assemble
the input deck as well as how to run the program on the CDC-6000 computer
1References are listed on page 100
~1
system at DTNSRDC. A description of the output and how to interpret it is also
included along with an overview of how the main program works. Following the
user's manual, a maintenance manual is presented, which contains a detailed
description o1 the common blocks, functions and subrcutines, and a trt-e
(i ag ruam. The appendices contain a description of the objective and penaltv fnc-
tions used for minimization of effective power, a presentation of the theor,'
behind the computational procedures for the resistance predictions, and art explana-
tion of the relationships between Chebychev series and SWATH hullform ctefficients.
This program will assist naval architects in finding a minimum resistance
hull design which satisfies the given geometric constraints. The User's Manual
portion of this document is intended to provide the user with the information
needed to prepare input for the program, and with a description ef the resulting
output. The Maintenance Manual provides the documentation needed to understand
the functioning of the program and its various subprograms, at a detailed enough
level that changes could be made in the program if necessary.
2
USER'S MANUAL
PROGRAM DESCRIPTION
The Program SWATHO optimizes a SWATH ship geometry to obtain a minimum
value of resistance and EHP for a specified speed of the ship. The program
can be better understood if it is divided into four parts, each part having
a specific purpose and result.
The first part of the program reads the input data that the user has
prepared on cards; thus initializing the ship description as well as setting
up the constraints. The array of scaling factors, which is used as the initial
geometry, is optimized and initially set to 1 in this part. After each run,
the values in the scaling array which correspond to the value of minimum EMP
at that point are input to the next run of the program, keeping the rest of
the INPUT cards the same. The actual description and format of the INPUT
cards are found in the INPUT DESCRIPTION and INPUT EXAMPLE of this USER'S MANUAL.
The second part of the program actually performs the optimization of
the EHP function. A detailed description of the method used and the actual
subroutines which perform the optimization can be found in the MAINTENAN'CE MANUAL.
The third part of the program evaluates the objective function, thus
finding intermediate values and a final value of EHP. A penalty function
is also calculated in this part, based on any violation of constraints
by the ship geometry at that time. Then more optimization is performed.
This optimization cycle is repeated until the computational time is exceeded
or sufficient convergence is reached.
The last part of the program outputs the initial ship description,
intermediate curves and a design description, as well as resistance calculations
over a range of speeds and other results of calculations. A detailed
description of the output is found in the OUTPUT DESCRIPTION and OUTPUT
EXAMPLE in the USER'S MANUAL.
3
INPUT DESCRIPTION
Diagrams showing the orientation of the geometry represented by the variablesinvolved in this input description are found in Figure 1.
INPUT CARDS (Total number of input cards is 8)
I. The first card contains the alphanumeric title of the model.
Variable: TITLE (8)
Format: 8A10
1 11 21 31 41 51 61 71[ITLE (1) ITITLE (2)ITITLE (3) TITLE (4)ITITLE (5) TITLE (6) TITLE (7)ITITLE (8)1
2. Data on the second card are:
XLSI - Length of strut in ft
HSI - Draft of strut in ft
TSMAXI - Strut thickness in ft at XLSI/2
CWPI - Waterplane area coefficient
CLCFI - Waterplane moment coefficient
KG - Height of CG above baseline
Variable: XLSI, HSI, TSMAXI, CWPI, CLCFI, KG
Format: 6FI0.6
1 1.1 21 31 41 51XLSI ]HSI TSMAXI CWPI CLCFI KG
4
3. Data on the third card are:
XLBI - Length of body in ft
BDIAI - Body diameter in ft at XLBI/2
BSI - Separation of hull centerlines
CSTRTI - Djst. of strut CL fwd of body CL
CPI - Body prismatic coefficient
CLCBI - Body moment coefficient
Variable: XLBI, BDIAI, BSI, CSTRTI, CPI, CLCBI
Format : 6FI0.6
1 ____11 21 31 41 51fiLEBI I BDIAI I BSI ICSTRTI ICPI ICL-CBI J1
4-5 Data on the fourth and the fifth card are:
S - Array of scale factors
Variable: S
Format :8 F10.6
1 11 21 31 141 51 61 715S(1) IS(2) S(3) IS(4) IS(5) S(6) S() S(8)
1 11 21 31IS(9) IS(10) I (11) I (12)
5
6. Datt oni the sixth card is:
OPTSPID - Optimization speed in knots
Vairiable: OPTSPD
Format: FIO.6
I
7. Data on the seventh card are:
DISPMN - Minimum ship displacement in long tons
DFAC - Minimum draft/body diameter ratio
DRFTMX - Maximum draft of ship
WMAX - Maximum width of ship
XFWD - Minimum distance from body leading edgeto strut leading edge
XAFT - Minimum distance from body trailing edgeto strut trailing edge
Variable: DISPMN, DFAC, DRFTMAX, WMAX, XFWD, XAFT
Format: 6F10.4
1 11 21 31 41 51DISPMN DFAC DFTMAX [WMAX ]XFWD XAFT
6
8. Data on the eighth card are:
MINGMT - Minimum TRANSVERSE GM
MINGML - Minimum LONGITUDINAL GM
LODMAX - Maximum body length over diameter ratio
LODMIN - Minimum body length over diameter ratio
TSMIN - Minimum strut thickness at 50 percent chord
Variable: MINGMT, MINGML, LODMAX, LODMIN, TSMIN
Format: 5FIO.l
MINGMT MINGML 2 LODMAX LODMIN 4 TSMIN
7
cnn
I E-4
E-44
K cn
rA4
INPUT EXAMPLE
Example of Input Data (Optimization):
1 11 21 31 41 51 61 71
ITLE (1) TITLE (2) TITLE (3) TITLE (4) TITLE (5) TITLE (6) TITLE (7) TITL(8
SWATH OPTIMIZATION PROGRAM
1 11 21 31 41 51
XLSI HSI TSMAXI CWPI CLCFI KG
210. 10.725 6.500 .8511 .014286 20.
1 11 21 31 41 51
XLBI EDIAI BSI CSTRTI CPI CLI
260. 14.30 68.50 15. .849 .01538
1 11 21 31 41 51 61 71
(1) S(2) S(3) S(4) S(5) S(6) S(7) S(8)
1.0154 .9900 0.9900 0.9783 -1.0 .9032 -1.0000 1.005
1 11 21 31
S(9 I- S(10) S(11) I5(12
.9900 1.2500 1.0000 .5000
1
20.
1 11 21 31 41 51
DISPNN DFAC DRFTMX WMAXI XFWD L AF
2675.0 1.67 30.0 106.0 7.50 30.0
1 11 21 31 41
MINGMT MINGML LODMAX LODMIN TSMIN
30.00 30.00 20.00 16.00 5.0
9
OUTPUT DESCRIPTION
The first page of output consists of an echo print of the input
including the S array of scaling factors. Following the array of scaling
factors, NL and NF (value of counters in the optimization procedure)
P (the penalty value), PEHP (the function to be minimized), and a repeat
of tle scaling factors (S array) are printed.
The second page of output consists of an intermediate plot of a body
sectional area curve and strut waterplane outline curve where the symbols
B and S stand for body and strut respectively. At the bottom of the plot,
the values for the strut and body geometry are printed with the effective
horsepower required for the design.
The third page of output lists values for intermediate design
consisting of the symmetric and antisymmetric Chebychev coefficients for
the body and strut and the wetted surface and ship geometry for the optimization
speed. Also a table of speed-length ratios, wave resistance, frictional
and residual resistance coefficients as well as the actual resistances
and the EHP predicted is printed for the range of speeds from 10 to 26 knots.
The fourth page of output consists of a tabular listing of all of
the scale factors of the S array corresponding to the strut and body
geometric variables, as well as the penalty value and PEHP. The second
difference array D(*) is printed out at the bottom of the listing. Also
printed is NL, NF, PEHP and the values of the S array corresponding to
a minimum PEHP so far. These S values are input by the user for the next
run of the program. Often, when the execution time limit is exceeded, the
output will stop in the middle of this tabular listing, in which case
the minimum PEHI' is found and the S array of scale factors are picked
out from the table and used as input for the subsequent run.
The sequence of body sectional area curve and strut waterplane curve,
intermediate design description, followed by tabular output is repeated
until the time limit is exceeded or until convergence of the PEHP function
is reached.
10
When the program has reached a prescribed degree of convergence,
a final page is printed out, entitled "Wave Resistance for Strut and Body
Geometric Characteristics." This page contains the optimum strut and body
geometric characteristics, separation in feet, B/LB, strut centerline
distance from body centerline (STRUT OFFSET), strut offset/LB, the wave drag
for strut and body and the frictional drag of body and strut. The coefficients
of resistance as well as the minimum EHP calculated at certain speeds are also
given.
.1'
OUTPUT EXAMPLE
12
ei
0,0
. .. .. ..
01C
000
'o Nl N
4LC WP.. 0000U 0 00 C
Ji...CCN CCCCCC C
,P* P. 0r 4, C
ma C 'a IV C
ocC..O*C CC C p
I . z C.1 4* 1 00 C 10-
a.a 0 .. _se C0S 'lc . c
x -K C .0 Q- Ad Ww;9 wwN,.g.lAAd C~bl C Ab
u b i C S
N 25 ~ WWC.13
0 D
* 0000
10 *00 n
* *0
. . .0 . .00..
m 0 . . . .0 ..... . . -
m 0 'A
w 0 0c 0
0 co A
. . .. . to
. . . . .o
0 N. 0 @0
0 * 0 . . *14
.... . .O 0. .
.4_m
Al0 l l&,PS0e i
p-A4-l J.
.W.5 W5!! 4 no Is 'S
zzzz -- ww-z----- 0
% _ZSxl"U .*,*ae * ai w.
U~AdAtbia wwn..o
b.WW Oui . w t;co Al AS4 iSV s AS J*0l 0 .- a
*00u 7 -. u 4 Ca w000zo
AAO 23;0 1
V .0 me 0 -IS
00 . .40 14 l .U " .O0
0~ * 0 eh1 pt m300 l*~:: 00 , so 7;On ...
40006 'At II Jos -. 00* --aSM
0* : z 1
~0e022U.i22~* l~lIA.*15
. . . . .. . . . . . . . . . . . . . . . ... . .. . . . . . . . . . ... . . ...
. . o . . . . . . . . . . . . .o . . . .
... .. . . . . . .. 0.0.0.0. .. .
. . . . .. . . . . . . .. °.. 0,.. . .. . .. . . , ,° ° , ,, o, , , °° , °,°. * * ,o4 * ° ° ° ,0
. . . . . . ......... 9 X ... .... X .... . . . .S o . . . . . . . . . . . . . . . . . . . . . . . . . .. .....I- *--- - - -- - - -- - - -- -- *'-0------- ----- -NNt- -- - - -
COO....0°0 00 0..00 0 0000......0.0..0
oooooooooooo4' o oo o oo oo o3 3 oo*0 oo0 o0 o0 Ao
4- 4--- - -- - - -- - - -- ---------00- - - .- -----------
00 00 00 00 0 0 0 0 0 00 0 0 00 0 0 0 000 0
oOOooooooooooooooO~ O oOOoo~oo ooO o~o~~ oO~~~
0 0 0 0 0 0 0 0 0 - - 0 0 -0 -0 00 0 0 0 000 -0 0 0 0 0 0 0 0 00 0000 - - - - - - - - - -
............ g g~gg o ... gg g o
aOo o o o O O OoOo oOooooooooo oo ooooOooooo 00
oooooooooooooooooooo~oooooooooooooo oooO ooOOoooo000o
00000000000000000000000000000000000000000000000000000 0000*
.. .. .... .............oo o o o o o oooo o o oo o o oooo o o o o o o o
...... ~... .......oo . . . . .
. . .ooo oo oo o . .. .. .. .. .. .. .. ..... . - . . .. .. .. .. .. .. ..
....... .. ...o .o. .oO .. . . . .. .. . .... .
Lh
-0c4 O. . .. .
O00000
00 hp4nA"V.
ON 0 n 00 00tN
4, 0 0:::
0 0 0
.0000 0000O
ON 40000000N*
91~ i 000000O
0 00 000
*e 000000
. . . . .e
*~ a
*~ a
. .. . . .. . . . . .. . . . . .
. . .0 . . . ct04.
. . .0 . . . 0.
00 0 lot
00 .. . .00 ...... ..... . . .0
. .. . . . IL
Q 0 ow*Al I
T, . .S
O * a. 00*
* . . .. caca*..........
4to 7 *
* . 0 .. . *00
*00Z1~~l do,0 *S t
S OS 0 * .S *18
A -4 ro 00.14
Uft44 N#W N o ouft I o
0I
U..
on 0
44V . . . n1 0 1
0V O .~4 :444
4)-W - i . . .. ..A0
1.410
It 0 0 0 *@IAwl . . . . . . o04000 4.
.
,00 . - Yap a. . -Z- ! A ONZONU
000
Z4 .0ig'w40 0 o w, z' 0 e l ~ 0 l 0 1000
'200
.0 . *
19'
118011111il ..4.41 -1 484 -a- -,
0~~~ . . .C .r. .Ct. . .. . . -. .- CCCC
. .0-. ..... ..... .44.4 .P- .0 .1 . . . . . . . .. . . .-. .C .4
M MM
NN NNN N N N00. N 0 N W I i % M4 Nfa N
> t 40 044 44 tC*444 4
f44t04~I44M~4 *0)My400,UPt lt 0, 4
7 CCCCQ,0C~.. ...... ...... .......AN f O i C t O~ ...
0~000 00000 0000 00000 C-------------04 g - - - - - -
-N flflf NA
.N 44i0 . O NO
t-t--..P %Nttt- m F-C wtO.
............. N JN N ~ CN iNi~ gfi~ g
0 ~0~ 000~0 7000 00000 0007~ 0070 40000 0O00 0C0C0 0C0C
-~ ~ ~ .m 00------0000000-0 - -- O000000
com0 000 000
-- ---------- ---------- -------------------- 0--------
0 0 0 0 0 0 0 0 0 0 0 0 0 0 N 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 N
. . . N.C... . .. . . . . . . .44.. . . . .. . .
. .. .. .. .. . 0NO A 4-~~. 4 Cv00 C C C 0 C Z . O C C C CC C C C C C C C 4 O 0 0 0 0 0
CC04C4C~~~~C44,CC 4tC C C 4 4 C ~ A N 4P0~~~~~ 00-00 00 0 0 0 0 - - -O - - - - - - - O-O-O-O-O-O-O-O- 00
fl00tf0S~r0404 14 44 44 A 44 AO i~fl AA O C, 04 4-t20, 0
. . . . . .4 Ls
. . .. .
.......... .......... .... . .. .......... . . . .... .. .0
In 0
* A *I ' I
* : . . ..
:Tz z
c. . . . . . k'
0 . . . AP,A -0t: 1. m
7.CD a
* ".... 4
-. . . .... . ... .. . ..... "
* .. .. . uu
7 .' . . • .
• - W, -n
* • . :. ... .2
.... .... * . . .. .:. .. . . . . .*... .. .. .,4 . . * ., *fii
U * A U ,,*
* au~. . .* t'
5 eU A .
-00~O~A
00 - 0 0 4-
* - NP4.0.-
C : . C. . . ..
41, -50 bG 4
I- WIat
? ol U-f M4.
I~~~. 11 0 0C3z 0 -. P. . ..
UN COG ZA C
IntU-OO 0.4 -o~ 0-oCCOCz
*r P. MC M.tI
uvC v. - Ut
*C(K 04.4PC U
000 .~ 0 1n12
O~oC ZZZZO NN0PG422
&&
1
Is
&
S
U
&
'A
U' , 00 0
C °. .
'A
23
- ..
*0001-) 0a0
000 M-> 0 0 r- 0 0 M
e 0g V. p M VN.
4D 0 4D 1% II4g mgL -w f( k
7N 3kN0nIf If 000 0
I.-4
I o~ x ltl 3:l tin ii U.1
It00)00 ZZ L4ZZZ00O eMew o .. I . 0 I a 1 1 It 1 It tIt t 1 4 it it It Zf I 1 f
A 4 0V n 4 9. .-% nIn ~ i 6- U " 1-4 .- r
0 .4.4 4 " 4-0DU1 4Ai*
- i Q u *~ Q z z z 10- 1.- u Oldx - ee. 0" ' 404 G -~~4 tttN. N MJ Se***.1***1*-
b-c 41-C I& & L U. W L L I n I - U .L-.4 LI 14 1.- "
fy ~ ~ ~ ~ 1 L. u Lu La - A
* Z NWJ ZJU j 4)V M 4 (0.. QUUU(f coo I.. I- XL~ " 0 W 0 " O W
IP1 Z>- 30p3 I)-Z( I--1 w ww thf wWO ' x x 1-X
h4 w U.) uaJ tcf.-l'- w U.n 7r 71& 0 7 or ~ 1- r - 0 7
x UJ 0-- WIJ4 -LLLAJI- Z - xZ .J 'j. ..,
('~ *II~lsI.- CJ()( a t M I.- (X 1.- Li <at-II.-
a. Z . 1 wUUU )..-A -4 1.- >- >-.-- .CU.I < -- D.
1.1- 0 1- 0 1--4 a .4c w W w -4 -4 OL&JZM-x of
Z WWOaJth Ow-f~f 00s'LJZaJ- UO 0 -. flol'- y~0 0 u . s ' .11 1 ~ '.49 J UJ 0 0 1I-4 IO~ 0 V U%.(lLII-3 ))9 &JsLJ L~ f- t4 .
4 ~ -~t- i-ww wZzZ i~ni-24
NJ LJWLJW -1-- I IL~27l .70y~fW Rj 0OWN-,-
o 0 0
C
am 6164It 19 et w H u
o I.
4 cm-
40 0
in
H I II- o M I- z"
a - , ,- * 0.
0 -6
, , _j ++ + . ,•~ 0+ !;, 0 a d' 0 00 aIO i ,e .
1-. . - N 0 O
0 0 -1 ,
4n I n A n I s
on o Io A O
$_ *N NC (m0A z16 Z N244.190
Do 0 0 -W , , .o. cm - m 2,. a-
lt 1 0 (Z 2 *a ma I2 a Q1 m 12 o I
It a- - m o or z c 0 6 - 0e U. Z C :6
411,- O0 1.- *. P
*m 4 haJ ha ha* ha Is,~ 100 N
•' 411 .i_ 2 1
(A 6-0 a 4 I .- -a ,00 a ..
0 .9E x H2 .1 06 a[ z- or~ I- cc U... r
IN 0- u R Nr PJ m Z
IL u - w 0 1- 1.- (A 0- T I- (A
ki % u. * e 6 * n
wA 66 IA O A L o O
i P.. - Hj H H Hin M Cn. 0 4 0 4.1H H
4- C; 1 0 1 1 n 46U -- . eve Pt " 2~m
4- r4 P, 9 n4 4
'A x n -- a IL N 26 0 0 0 4 ~
Ko -HO * 0 et aI--S4 = x - 25
j . 4 (L 1'6 (A~ 71 966 f
3. or ha v 0 m3 43 4* haI-ZN6.
4 NH NH *6 - 2 0 ~ 0* 25 R . a -%60
0 -
00 0
- N 0O N C U
Il go m f. 42 1 4 a
4r k- of -
-j
z I- I- m A O i DI
fo 0.- 6- 00-rm t
-i NJ -l IIgo 41 1. toii 6
in 46 00 I.- t 6w0 -z1in *N 4O CC2 . 4 ':
Il inM at 0C)o K 1 y -. WC34 P- 4NfI N 6 r W ,l
0 0 0 a 0 2-0 w "6 a *6-x w6- :3 x D 0 40 MO 19x 1. 0 or 0 b-. 48 0008
m 06 - 06 a W l 06 06 : go
Lg hIP hI. in1- 0&' on C T Pll NK~~~~o (A1 a- m* 1 LO0 (in w m. 0 )1. x I.- . 0 Uut 4, 4.A I. V, 1- of N or 6. or -o0VI, o
U~~~4 to I n 6
48 6- 841 U. J -1-('0 L U It a U
1. it fusK 6 1 6 I I 6
II 6 P4 L, I- m r -86- 4.) 00. 4) A - - - 66 N N NU - . i6 I It 9N ON ae 0 1 .Z M 40 000 * 6. 0 0 3 8 3 0
A. 0 0 8 n 4x- 8 0 0 O Zn 0 0-j M Co. 6 -. 6 i i lL 6S
~ :61
000OAl 00 *0,, * o Im+
0 ~ i # 0 10J h~
maa in top *~
t a P.
otoI • -I• • i
- u1 u
0 0 -W It
L? ,,, w. . . " A .m- 10J in a. IV0 F NO : N0 I
" a
• . 3-4. "I... . . + "1
cr t,+ t
0 CAU
w - O 1 ,. ,, .I,IL 0 -.10
I0 It - 30 0z
M . 0 Uxa to 0 7 a IN fa U
0 x 7 0. 3. .0 -my a. -2*
.0 wn n4 v2 I ~ a - WAVC A WO P-, , -j NH 1'. CA A n A.O 2a 60 1 '
r 0 II 1-l d * 6. 4 .0 4I.- % T is 4 N'm A 0 0 .-*9 I 11 It -1 I 0 :4. A . w 0 N
CA A I. IJZ x
o to I 1 C - ATr I.D in. nI II H lx It m HN. UHa
0 0 u 14 0 "I i rA IO
, Q- 1C In 4 - 1/- 1 a- AJ a C-'LA C- w. 0 a - f 0 1A M N o- or a-1 4
(A -. 1 'AP A £A CA mN A* 0 *
tV u* '.1 1 * * . 4
a .N A, In CID 00 80 00 £ ..
Ii r N E 4 (Y CID 00 U W
N C' .4D N 0 03 4 * w 2 N-
1- Ay l' (z w 4 - a
2 ~ ~ ~ ~ -0CA CS 4 0 - 8
a II4 I* WA IF 7 f' Oi Nl' Nl f -AU1'
gN.j . .4 *a A9 A
a.8 CA a C .4 C.
04 ON ft .0 427
00 on0l
II *
II~ 3. 1~ r*-0I 0(4D u. c -F it % oror
o~~~ u 6 . 0.
m MM it p I
110 IO u I In *I
a F- (4004000 .0 n 0,
6~~l u a . t j .
I.- r
on b01' c3 '
0 If If.1 61 i o 1 i
40 00
40 IL C, F- 0 0 # 0 1'* 10 4 000
0 m mU -O I - 1 043 Q3 01 01 z C n fo
(IM w - I.J CA LL.J Z1 z.. *I"11.IJ
.J~~ Ir jI .* - N 310 -0 0 N 0 j
Q.a of It 'A 0 LI x I -x 6 0..* Ks 0 m at 0 F- aC (Z 0
IAI u It- 0 I Cr to -
u I-r In P.- Z I.- T 1ul s- .4 * >.
1. F- A. 7 1-
ci uI 101
u cA o t, w
41 V0 ff 10 a (A IA ( 010 In -j I' 41 C34 . 1
(A 11 N . .0 F- - A N N 0
Z U.1I So. 11 N 2 0 oZ U 'e, .. j 'A* 70 - M 0
40 - 0 0 1 .9 l (4 Ll 0
11. Nr I. 3r0A I j- UI- 2- 15ZA91- 'U40'1~ 3 IF d - LZ.s- to (A i. . 4 0 w .0 Z .
4 Sll (II ( - . 0 0 .0 RN .. wN .- '. -28.
C
a 0
404M M 0 00 0
e6l-.J
3~4 hi hi c66.h 0 6A
'A 10 4)
I II
,0 en enI--- In ' n
40 m. coo* 4
It 0 . _ 6 -
-0
(ft 3 44 fUa
0 IA6.. -
6*D 46 @a4
0. 0 .1 #A j f. LS; LA 0 -a
2, 6AM 00.
In A4 1 ,
o &o 0 C-
P 0a
N~I CA 4 64 A IA*'gII6-I .- IX M- 09 40 4 zA I0 031 g N el IOU or (L 0 06 CU*
10 La N Ld N hi(A in 0 1 Q Nn -. r- 6613ut 0K .* z66 N0 1.- 0 0 0 A - -ar ~ ~ ~ ~ ~ ~ 66 .N .x t. & 0.
'A 6-o-40. cc .4 n In m6 ruN 1
V.h
9 u w 0 UIta16 36
u fu 1A W, 4* 66 . 0 6
mw
9 - ly 6- - - - 16 3#A a - us A. N O * * 6 *Z
K -. i f * N CL 0 ,O 3 * * 6 .O
-6- 0 4 ........i44... ...
to 6 4 * e 2 2 2 i 4 60 4
- 4 666 l V 2 . 2 9 ( 6 6 6 ~ l -
N N . (A 06* 16 W - we 2..him.
II WI)m
* ~ ~ ~ u IL.I1. 4 M
0 0 C NE O- OD
- - - .i - N j4
4-I~ 1) N )4- PiN
m us-A
ct 0. 0 0 0
00 0 TO0 M P.M
IA, C, 00:
m In
If 1-I4 ~ ~ ~ l 0N LA 1 J1 N 1J
t ~ ~ ~ ~ ~ f 0.1 ( C N N *O O4J ~ jx .- - INID - I r Itr N .
As f% 'A U Ura'A N- ft - 'tI,
it Z. *I*'
3 0 t ,AI!N, Zr no. I S U. II I N U U I I0 40 ew rI S S I SK ~~zN 0 0 A I I U
U r T U- 01 - :)N I
Q- 1- NI j 1- 0I- N N *U- 44 00 10 u Wa * 0 ..
In C1 Inf . ~ W n J A f
0: 0. 3 I 3 00
P. N t .'I" O 40 N I 0 oO O -I lJ'4 to LL Li K ~ G G. SG -1-
In 0-A 4 - - -~ .
0gO IA114 D4 IA I
-I~ 2 0 C30
PiI m n @0 0 0
1c P1 ce 4
I . "a 60 V.0 ,. *t. O OMP.'.IFS0 I "- - ,.
o r I u I 0 4,
4 (a ,,- In,* '
It
wil a0 U 1I
C. I I I I I
1- 0- AJ W 44
j cc m- p- 00ft-I
-1 10-1 0
o,3 . i NO I l ,,(A (A. 11 0
I, IdII i '' If If I '(L N l 0 -
~~I I" in a t •o,, 'A., o 0 ..
'0 11) N-[ 0 ta * (L * a Ie eeoc
V c Al I w Ix T Ix u0 m . b.
0. 0 / II 'II hI *!i *1. *h 4i
on 10 aU MS or Al U MJ w : 0
S,- P "10 1 ,J * I* ,,. (A . 0. (A L, (A'1-
J X.J 4 I I/ % 00 4 I "I I- -il ' 00 0 0 .'
O K - w. o- Al n A $Al
"9 I f f m
. 0 S., I -
oz u Ir 4a m
, In.. m IVw u 0LL I- tL Id, I ' 0
x In W 0 m NC IA 0 It
"' ' r ..,. + o, .J ') .* 7 . 1 *
o- it &.0 0 .,0 0 ~ 43 0 -
72t V Ir IV I
0 I. In 0 I0.- . . I e N .
Al Al IL IA OA L 1.- 111 0 LRZA I
A et a 0. h' . - , 0- '-LA 0 9I1A 0 hi ? I- i 0 0
lAO-~~~ - I- h . U 4' 0. 4. 4 - -L I
P.. 0 Al If-I40- In II I-D
I- - .i I *3L
in~4 .004
O ~ ~ P l 4 0- * 44J 4444
4444 ~ $- -j4P 0 0
fu 1
* 0 443
to 4- in40
f- NA4-
w iL 4 w I . 4*
0a' 4-) 4.Z UK M mI'm4 NO
M. if .044
.o 00
12 441 : , t-
K - - 04r 0 04 M 4 0U M *~ a 4.
4 f14/ 0 'n I, a 44 .4 L..4 I- u* Al . N
T,4 NJ 1-
-li * N44
04 S. so.3 0 CA N 2- @. 1.- U
=401 IS 2. 44 or) Z 0 *K -s
4 .4 n .4 L, * *
0 13 0 (A m I
i- j4 r 4 H I i 4 4 4
4. 1-
m -a ( - A in L., 111 440 e40 0 10
'44 ~ 0 '44.J - 0 7 . 0 40 Y 47
- 44 N0 . 0 00 37 3 0
0- * 0u W w4. 4. K .Z 0344
.4 0 4 CA 4 0 Z m 4 0 hC~0 Z .
v In 4 D 44 T 0 Q . . 0 K N 4.N 4 J ".P
0 ~-~ * V V '.1% 4% Z L44V-32
/4 0a .4'. ' ~ .i .. AM
0 00 00
5.1 F"1 @ 00 I 05
CD 006
ID 11 In m1 1 di A40 - -In* -
0, .0 * .
. s W I, _8 II IJ
P- 0. . J4o~0 0 1 P
IV 40In
- ESS P.
I- I
; -. N110 4A In In'
I P. 55w 1_ j(V _ y 0-
. In 4 ID 0 . 0t x*0 55 0 * ~O0 0
.4 10 vM : P- * 5 1 5 5 - - .(L Na 4P 00 -N III to 51~e
4.5~ ~ Ii w it 51 510
CI 3 M or 4 7 Pr 0 .U5 Z. 0,:Ut0 w A Pr 0 z1 - -1 -
0m P . . S,O! AJ I- Y
A Aa co c5 a r T N H 15 1
Z z 2. 0 or Ix IA 1 tIA
#A- *55 06 Q &La * ~ 3 1 3 0 0LA -' .9 IA do3 03 0 0 0* I .0
- ~ ~ ~ ~ L 01 M* 4 P I~ * 00 E. U U 535
IV C 04 0 5 . 2 4 - 0 3 U 3 ZA019 - r 4 555 Ml~S. A U P
P. ry P. I- 5 I 3 4 0 W 0 Z .
0J 0U 0 0 "A - 30. 40 0 - 7-0iflSs V, 064- 0 % % 5.. 515-
s-so - I. 7 0 t P
P..J . 1.5 03I
JOB CONTROL FOR SWATHO
The Fortran code file of SWATHO is stored on a bTNSRDC Computer Center disk
pack. To access the disk pack and make use of the program the following directions
should be followed.
One must first set up an account with the DTNSRDC Computer Center and acquire
a user ID. A Computer Center Reference Manual will provide the user with a
further explanation of the Job Setup Control cards.
1. To get the program from the disk pack to a permanent file:
JOB CARDCHARGE CARDPAUSE. JOB REQUIRES DV4865.MOUNTVSN=DV4865,SN=CHRELIB.REQUESTLOG,*PF.ATTACH,OLDPL,OPTSWATH,ID=CHRE,SN=CHRELIB.
UPDATE(PF)FTN(I-COMPILE,R=3)CATALOG,LOG,USER'S NAME OF FILE,ID=USER ID7/8/96/7/8/9
2. To run the program which is stored on the user's permanent file:
JOB CARDCHARGE CARD
ATTACH,USER'S NAME OF FILE,ID=USER ID.FIRST SEVEN LETTERS OF NAME OF FILE (PL.50000)7/8/9INPUT CARDS6/7/8/9
The user's permanent file which is set up with the catalog card in Part 1 will
be purged after 30 days of inactivity.
34
• ]
MAINTENANCE MANUAL
This part of the report contains a description of the main program,
SWATHO and the subroutines directly called by it as well as descriptions
of how other important subroutines fit together. Also included in this manual
are descriptions of the common blocks, functions and subroutines and
a functional listing of the functions and subroutines.
INTRODUCTION
The main program, SWATHO, first calls subroutine INPUT. Subroutine INPUT
reads the input cards prepared by the user. The strut geometric characteristics,
waterplane area and moment coefficients as well as the height of the CG above the
baseline are read. Next, the body geometric characteristics, separation of hull
centerlines, placement of the strut centerline in relation to the body centerline
and the body priqmatic and moment coefficients are read. Following that the S
array of scaling factors, the optimization speed and limiting values are read.
After returning from INPUT the program calls PRAXIS, the optimization
routine, which is described in detail in the following pages of this report.
Upon the completion of the optimization by PRAXIS, the subroutine SCALE is
called which sets up an array of current working values of X, each member of the
array corresponding to one of the ship geometric characteristics. The X array
is calculated by multiplying S by XI where the S's are the scale factors and
the Xl's are the initial values of the ship geometry. Both S and XI are read
by subroutine INPUT. Initially the members of the S array all have values of 1
and then, on subsequent runs, the S's correspond to the lowest value of EHP so
far encountered by the user in the output from the previous run of the program.
All of the initial variables are left unchanged.
Subroutine CHEB, called by the main program next, calculates the Chebychev
coefficients for the ship as well as the wetted surface of the body and strut.*
It also calls another subroutine, PCHEB, which plots the strut waterplane and
body sectional area curves.
LISTEX is then called and values c' ship geometry, etc. are listed to display
the proximity of the solution to the extreme limits.
See Appendix C for a discussion of the relationship between the Chebychev
coefficients and the hullform coefficients,
35
Function EHP is lastly called at which time final design resistance and power
is output. Whether the program gets this far is contingent upon how much time
the computer is given for the computations.
Subroutine PRAXIS accomplishes the optimization of the objective function,
EHP. PRAXIS finds the minimum of a function using the principal axis method as
implemented by Brent. The arguments of the subroutine are TO, HO, N, IPRIN, X,
F, and FMIN. PRAXIS attempts to find this minimum such that if XO is the true
local minimum near X, then NORM (X-XO)=TO + SQUARE ROOT (MACHEP) *NORM (X), where
MACHEP is the machine precision, the smallest number such that 1 + MACHEP> 1, and
TO is the tolerance.
The values of TO, HO, N and IPRIN are set in the data statement in SWATHO.
The value of MACHEP should be 2**-47 (about 7.105 E-15) on the CDC 6000 series for
single precision arithmetic or 16"*-13 (about 2.23 E-16) for double precision
on the IBM 370 system. HO is the maximum step size, and should be set to about
the maximum distance from the initial guess to the minimum. This value of HO
affects the initial rate of convergence, in the current program HO - .25. N is
the number of variables upon which the function depends, in this case N - 12. N must
be at least 2. IPRIN controls the printing of intermediate results of the optimi-
zation.
X is an array which contains a guess of a point of minimum and an estimated
point of minimum, on entry and return, respectively. F(X,N) is the function to
be minimized, in our case it is PEHP. F needs to be a real function declared
EXTERNAL in the calling program. FMIN is set to the minimum value of F that is
found.
The approximating quadratic form is
Q(X') = F(X,N) + 2 * (X' -X) TRANSPOSE *A* (X' -X).
Here A is INVERSE (V-Transpose) *D* INVERSE (V) where V(*,*) is the matrix of
search directions and D(*) is the array of second differences.
PRAXIS in operation proceeds as follows. PRAXIS calls PRMIN which minimizes
the function along first direction V(*,J). PRMIN then calls function PRLIN which
is a function of one real variable, which it minimizes. Function RANDUM is called
and a random number is returned to PRAXIS to avoid resolution valleys. PRMIN
continues to minimize the PRLIN function in different directions. PRQUAD is then
36
called and this subroutine tries a quadratic extrapolation in case minimization
is being done in a curved valley. PRAXIS then calls PRFIT to find principal
values and directions of the quadratic forms and PRSORT is called to sort the
eigenvalues and eigenvectors. PRPRIN prints out the scaling factor on the first
page of the output as is described in the output section of the USER's manual and
VCPRINT prints the second difference array.
The optimization procedure is performed on the function PEHP. PEHP gets its
value from the EHP calculated by the function by that name and a penalty P, so
that PEHP = (1 + P)* EHP. P is determined from an array calculated in subroutine
CKLIM. CKLIM uses the constraints determined by subroutine INPUT to check the
current ship values for violation of these constraints. The checking procedure
is quantified with an array GG of violation coefficients, in the following way.
The current value of ship displacement is multiplied by a member of a scaling
array, ALPHA, given in a data statement in CKLIM. This results in a violation
coefficient GG(l) for displacement. Nineteen of these coefficients are calculated
and this array of GG(I)'s is used in function PEUP. Since GG(I)>O means that
the constraint is violated whereas GG(I)<O means that the constraint is satisfied,
the function PEHP totals up all of the GG(I)'s greater than zero and this becomes
the value of P, used to calculate PEHP. For further details on penalty functions
see Appendix A.
Other important subroutines have not been mentioned yet. Subroutine RWAVE,
called by Function EHP, computes the auxiliary wave resistance functions T and W
as explained in Appendix B, using the Chebychev expansions calculated in subroutine
CHEB, as discussed in Appendix C. Subroutine RINTEG integrates these auxiliary
functions with subroutine INIT initializing the arrays. The symmetric matrices
of T and W are reflected by subroutine REFLKT. Using the Chebychev coefficients,
subroutine WSURFB determines the wetted surface of the body of revolution and
WSURFS determines the wetted surface of the strut.
Subroutine ROUT is called by function EHP, it computes values of Froude number
and speed-length ratio as well as wave resistance coefficients and frictional drag
coefficients and returns the value of EHP to function EHP. It also prints the
intermediate and final design values. Which one of these is printed is determined
by the value of KEY. If KEY = 0 no output is printed, instead only the compu-
tations in ROUT are performed. If KEY = 1 the optimization is complete and just
the final design is printed. If KEY = 2 when ROUT gets to the output section,
37
the intermediate results are printed. The different values of KEY are set in
the subroutines which call FUNCTION EHP which in turn calls ROUT; KEY is set to
0 in PEHP, 1 in SWATHO and 2 in AUXPLOT.
38
----- . .. . .. . ...-
Figure -TREE DIAGRAM OF SWATH PROGRAM
LI STEX
WSURFB EVAL
CHBWSURFS EVAL
SCALE SCALE
PEHP CHEB
RANDUM - CKLIM -EVAL
VCPRNT -EHP r PLOTIMAPRNT -PLOT 2
PRAXIS -PRFIT PCHEB -PLOT3
-PRSORT ~ - SCALE L PLOT4-QPLOTZ5-PRMIN - PRLIN -CHEB
EPRPRIN -U XPLT---Lj LISTEX
PRQUAD- PRMIN
IEPSWATHO CFITTCf FORMDR YINPT
ROUTsu
EHP BESSJ
RWAVE RINIT
REFLKT NOT CALLED:
SIMPSN POMITi
POMI T2
RINTEG -BESSJ
LINPUT
39
FUNCTIONAL LISTING OF FUNCTIONS AND SUBROUTINES
Subroutine Name Description
AUXPLT Prints titles and labels for body sectionalarea and waterplane curves
BESSJ Evaluates Bessel function
CHEB Determines Chebychev coefficients forbody and strut
CKLIM Checks for violation of geometric constraints
INPUT Reads in initial values of ship geometryand constraints
LISTEX Lists various values of the design to see howclose to the limits the solution lies
MAPRNT Prints columns of matrix
PCHEB Plots body sectional area curve and water-plane outline curve
PLOT1 Sets up spacing and determines values of theaxes for printer plot
PLOT2 Establishes formula for computing locationin the image region where the point will beplotted, in the printer plot
PLOT3 Assigns an alpha character to each point
to be plotted on the printer plot
PLOT4 Prints image of completed graph on theprinter
POMITi Causes certain grid lines on printer plot
to be deleted
POMIT2 Causes values at grid lines to be deleted
PRAXIS Finds the minimum of the objective functionusing the principal axis method
PRFIT Fits points to a quadratic curve
PRMIN Minimizes the objective function, F, in onedimension
PRPRIN Prints intermediate results and calls theroutine which does the printer plotting
40
FUNCTIONAL LISTING OF FUNCTIONS AND SUBROUTINES (CONT)
Subroutine Name Description
PRQUAD Looks for minimum of F along a quadraticcurve
PRSORT Sorts the elements of a matrix to find theeigenvalues and eigenvectors
QPLOTZ5 Calculates scaling information to label theplot
REFLECT Reflects matrices of auxiliary wave resistancefunctions
RINIT Initializes the auxiliary wave resistancefunciton matrices to zero
RINTEG Evaluates the integrand of the auxiliarywave resistance function
ROUT Calculates EHP, wave resistancecoefficients and constants, and alsoprints the intermediate and final designresults
RWAVE Computes the auxiliary wave resistancefunctions
SCALE Calculates working values of ship geometry
SIMPSN Sets up Simpson's multipliers for numericalintegration by Simpson's rule
SUM Computes the components of wave resistanceas a matrix multiplication involving theChebychev coefficients and the auxiliarywave resistance function matrices
VCPRINT Depending on the option; prints thesecond difference array, scale factors,value of quadratic, and value of theobjective function as part of theoptimization
WSURFB Determines surface area of a body ofrevolution given by Chebychev coefficients
WSURFS Determines surface area of strut whosethickness distribution is given byChebychev coefficients
41
FUNCTIONAL LISTING OF FUNCTIONS AND SUBROUTINES (CONT)
Function Name Description
CFITTC Determines frictional resistance
coefficient from ITTC line
EHP Calculates body constants and frictionaldrag coefficients
EVAL Evaluates the Chebychev series
FORMDR Evaluates form drag coefficients
PEHP The objective function to be minimizedby PRAXIS
PRLIN Function of one variable minimized by
PRAXIS
RANDUM Returns a random number which createsrandom steps during the optimization
YINTP Interpolates through a set of discretedata
42
COMMON BLOCK DESCRIPTIONS
43
COMMON/COEFS
PURPOSE: COEFS stores the values of the Chebychev coefficients for thestrut and body
NAME TYPE LENCTH DEFINITIONASM R (3) CoeffIcients of Chebychev Sine Series for strut
BSM R (3) Coefficients for Chebychev Cosine Series
for strut
ABM R (3) Coefficients of Chebychev Sine Series forbody
BBM R (3) Coefficients of Chebychev Cosine Series forbody
MMAX Maximum order of Chebychev Series
44
COMMON/ EXTLIM
PURPOSE: EXTLIM defines and stores physical constants and geometricparameters
NAME TYPE DEFINITION
DISPMN R Minimum ship displacement in long tons
DFAC R Minimum draft/body diameter ratio
DRFTMX R Maximum draft of ship
WMAX R Maximum width of ship
XFWD R Minimum distance from body L.E. to strut L.E.
XAFr R Minimum distance from body T.E. to strut T.E.
MINGMT R Minimum GMT (transverse GM)
MINGML R Minimum GML (longitudinal GM)
LODMAX R Maximum length over diameter ratio
LODMIN R Minimum length over diameter ratio
TSMIN R Minimum strut thickness at 50 percent chord
KG R Height of center of gravity of ship abovebaseline
45
COMMON/INITL
PURPOSE: Store initial values of ship geometry
NAME TYPE DEFINITION
XLSI R Length of strut in ft.
HSI R Draft of strut in ft.
TSMAXI R Max. strut thickness in ft.
CWPI R Waterplane area coefficient
CLCFI R Waterplane moment coefficient
CIYYI R Waterplane inertia coefficient
CLCBI R Body moment coefficient
XLBI R Length of body in ft.
BDIAI R Body diameter in ft. at XLB/2
BSI R Separation of hull centerlines
CPI R Body prismatic coefficient
CSTRTI R Dist. of strut CL fwd of body CL
VBI R Initial displaced volume of the body in
cubic ft.
VSI R Initial displaced volume of thestrut in cubic ft
KBI R Initial height of center of buoyancy abovethe baseline
BMLI R Initial longitudinal metacentric height
IYYI R Waterplane moment of inertia
46
COMMON/NOCHG
PURPOSE: Checks whether certain ship geometry variables change or not.
NAME TYPE LENGTH DEFINITION
LL I 6 LL(I) thru LL(6) represents positions
in WORKVL of XLS, BS, HS, XLB, BDIA
CSTRT. In the data statement in
SWATHO they are assigned values;
LL(l) = 1, LL(2) = 10, LL(3) = 2,
LL(4) = 8, LL(5) = 9, LL(6) = I
SS R 6 Holds array of scale factors correspon-
ding to the six ship geometry variables
in the LL array
SAME L Variable which indicates whether scaling
variables have changed or not.
47
COMMON/OMEGA
PURPOSE: OMEGA stores the values of variables and constants forevaluation of auxiliary wave resistance functions and shipresistance coefficients
NAME TYPE DEFINITION
VMFPS R Speed of ship (feet per second)
GAMAOS R Yos
GAMAOB R Yob
GOSQ R (Y os)2
HSOLS R Ratio of draft to length of strut
HBOLB R Ratio of draft to length of body
WETS R Wetted surface area of strut (ft )
WETB R Wetted surface area of body (ft2 )
WTSURF R Total wetted surface area (ft )
SEP R 2b (Y osL)
PHIS R 2(h)
LsYos
PHIB R 2(hb)
I1 Y ob
RATIOL R Yob /Yos
CFS R Frictional drag coefficient of strut
CFB R Frictional drag coefficient of body
48
COMMON/PHYSCO
PURPOSE: PHYSCO stores physical constants
NAME TYPE DEFINITION
RHO R Density of water
GNU R Kinematic viscosity of water
G R Acceleration due to gravity
PI R Ratio of circumference to diameter of acircle
DELCF R Correlation allowance
KTFPS R Conversion factor for changing ft/secinto knots
49
COMMON / PRCOMM
PURPOSE: Used by optimization subroutines to transmit values
amongst themselves
NAME TYPE DEFINITION
FX R Function to be minimized
LDT R Used in step size computations
DMIN R The square of the machine precision
NF I Function evaluation counter
NL I One dimensional search counter
50
COMMON/PSI
PURPOSE: PSI stores the values of the variables and constants used in
integration routines
NAME TYPE DEFINITION
NPTSZ I Number of integration steps from
Yos to y os+1-
PTSAF R Scaling factor of step size in
integrating from a to amax smax
EXPN R Empirical constant for integration
to stop
NALMAX Maximum number of integration stepsfrom Y +l to a
0s max
NAL I Counter of integration steps
ALFA R Integration variable (a)
ALSMAX R Maximum of a for integration
Comments: Values of NPTSZ, PTSAF, EXPN, NALMAX and ALSMAX are
assigned in data statement in SWATHO
51
COMMON/Q
PURPOSE: Used by optimization subroutines to transmit functionrepresentations amongst themselves
NAME TYPE DEFINITION
V R Matrix to define directions for linearsearch
Q0 RVariables which define the plane for thequadratic search
Q1 R
QA R
QB R Variables which define a parabolicspace curve
QC R
QDO R Variables used in QA, QB, QC to define
QDI R quadratic curve
QFI R Value of function defined by QA, QB, QC
52
• . . . .. . . ..7 -. , ...2 ._ . '
COMMON/SPEEDS
PURPOSE: Stores speeds at which resistance clculations are made
NAME TYPE LENGTH DEFINITION
NSPEED I Number of speeds
SPEED R 20 Speeds in feet per second
.5
53
COMMON /XRPLOTF
PURPOSE: XRPLOTF stores the values of variables for the plotting
routines
NAME TYPE DEFINITION
XL R Value of abscissa at left-most gridline
XH R Value of abscissa at right-most gridline
YL R Value of ordinate at bottom grid line
YH R Value of ordinate at top grid line
XI R Increment of divisions along theabscissa
YI R Increment of divisions along theordinate
YMOV R Ordinate index increment number of
array GRAF
XMOV R Abscissa index increment number ofarray GRAF
54
COMMON/XRPLOTG
PURPOSE: XRPLOTG stores the values and characters of variables forthe plotting routines
NAME TYPE LENGTH DEFINITION
GRAF I (11,204) Array containing the image to be plotted
55
COMMON/ XRPLOTQ
PURPOSE: XRPLOTQ stores the constants and characters for the plotting
routines
NAME TYPE DEFINITION
I, II I Ordinate scale factor is 101
J, JJ I Number of digits following
ordinate decimal point
K, KK I Abscissa scale factor is 1 K
L, LL I Number of digits following
abscissa decimal point
A, NHL I Integer number of horizontal grid lines
G, NSBH I Integer number of spaces beyond eachhorizontal grid line to next grid line
C, NVL I Integer number of vertical grid lines
D, NSBV I Integer number of spaces beyond eachvertical grid line to next grid line
E, HCHAR Horizontal grid character
F, VCHAR Vertical grid character
M, IX, ISX I Number of horizontal spaces
N, IY, ISY I Number of vertical spaces
V L Logical variable = TRUE when maximumand minimum values of the ordinate aredetermined
H L Logical variable = TRUE when maximum andminimum values of the abscissa aredetermined
56
COMMON/WORKVL
PURPOSE: WORKVL stores the working values of the ship geometry
NAME TYPE DEFINITION
XLS R Length of strut in ft.
HS R Draft of strut in ft.
TSMAX R Max strut thickness in ft.
CWP R Waterplane area coefficient
CLCF R Waterplane moment coefficient
CIYY R Waterplane inertia coefficient
CLCB R Body moment coefficient
XLB R Length of body in ft.
BDIA R Body diameter in ft. at XLB/2
BS R Separation of hull centerlines
CP R Body prismatic coefficient
CSTRT R Dist. of strut CL fwd of body CL
AX R Maximum body cross-sectional area insq. ft.
HB R Body centerline submergence
DISP R Displacement of total ship in long tons
AWP R Waterplane area of one strut
NLOC I Switch indicating presence of secondstrut
CSTRT2 R Dist. of strut CL fwd of body CL
OVMFPS R Optimization speed in ft/sec
57
COMMON/WORKVL (CONT)
NAME TYPE DEFINITION
KB R Height of center of buoyancy abovebaseline
BML R Longitudinal metacentric height
BMT R Transverse metacentric height
58
SUBROUTINE AND FUNCTION DESCRIPTIONS
59
NAME: SUBROUTINE AUXPLT
PURPOSE: Prints title and values for ship geometry onthe body sectional area and waterplane outline
curve. Subroutine PCHEB prints the actual curve
CALLING SEQUENCE: Call AUXPLT (S, N, HP)
ARGUMENTS: S - Scaling values for each of the variables
N - The number of variables upon which thefunction depends
HP - Horsepower
COMMON BLOCKS: INITL, NOCHG, PHYSCO, SPEEDS
SUBROUTINES CALLED: SCALE, CHEB, LISTEX, PCHEB, EHP
CALLED BY: PRPRIN
60
NAME: SUBROUTINE BESSJ
PURPOSE: SUBROUTINE BESSJ evaluates the Bessel functionfrom order 0 to order N
CALLING SEQUENCE: CALL BESSJ (X, N, VJ)
ARGUMENTS: X - Argument of the Bessel function
N - Maximum order of the Bessel functionVJ- Array holding (N+l) values of the Bessel
function of order zero up to N, where
VJ(l) = J (X)
COMMON BLOCKS: NONE
SUBROUTINE CALLED: NONE
CALLED BY: RINTEG, RWAVE
61
NAME: FUNCTION CFITTC
PURPOSE: Function CFITTC determines the frictional
resistance coefficient based on the ITTC
correlation line
CALLING SEQUENCE: C f CFITTC (RN)
ARGUMENT: RN - Reynolds number at test condition
COMMON BLOCKS: NONE
SUBROUTINE CALLED: NONE
CALLED BY: Function EHP
COMMENTS: C = 0.075(log, 0 (RN) -2) z
62
- -.. ... -
NAME: SUBROUTINE CHEB
PURPOSE: Determines Chebychev coefficients for theship, and calculates wetted surface of bodyand strut
CALLING SEQUENCE: CALL CHEB (TITLE, KEY)
ARGUMENTS: TITLE- Label printed on outputKEY - Variable used to skip or include the printed
output.
COMMON BLOCKS: COEFS, OMEGA, PHYSCO, WORKVL
SUBROUTINES CALLED: WSURFB, WSURFS
CALLED BY: SWATHO, PEHP, AUXPLT
63
NAME: SUBROUTINE CKLIM
PURPOSE: Checks for violation of constraints andscales penalties by the values in thearray ALPHA
CALLING SEQUENCE: CALL CKLIM (GG, NGG)
ARGUMENTS: GG - actual amount of violationNGG - number of values to be checked for
violation
COMMON BLOCKS: COEFS, EXTLIM, WORKVL
SUBROUTINES CALLED: EVAL
CALLED BY: Function PEHP
64
NAME: FUNCTION EHP
PURPOSE: Calculates body constants and frictional
drag coefficients and calls ROUT to
calculate EHP
CALLING SEQUENCE: EH = EHP (SPEED, TITLE, KEY)
ARGUMENTS: SPEED - Speed of ship in feet per second
TITLE - Label printed on output
KEY - Variable to skip or includethe printed output
COMMON BLOCKS: NOCHG, OMEGA, PHYSCO, WORKVL
SUBROUTINES CALLED: ROUT, RWAVE, CFITTC
CALLED BY: SWATHO, AUXPLT, PEHP
65
NAME: FUNCTION EVAL
PURPOSE: Evaluates the Chevychev iries
MAXF~x) - E A(M)*U(M,X) g(M)*V(M,X)
Min1
CALLING SEQUENCE: EV =EVAL (X,A,BMAX)
ARGUMENTS: X -Arguments of the Chebychev seriesA -Coefficients of the Chebychev
Cosine seriesB -Coefficients of the Chevychev Sine
seriesMAX -Maximum order of the Chebychev series
COMMON BLOCKS: NONE
SUBROUTINES CALLED: NONE
CALLED BY: CKLIM, WSURFB, WSURFS
COMMENTS: UM(X) -COS {(2-)()'
VMCX) - SIN 2MG
e= SIN1 (X)
66
NAME: FUNCTION FORMDR
PURPOSE: Function FORNDR evaluates the form
drag coefficient
CALLING SEQUENCE: FOR = FORMDR (VL)
ARGUMENT: VL = Speed-length ratio of ship based
on strut length
COMMON BLOCKS: NONE
SUBROUTINE CALLED: FUNCTJON YINTP
CALLED BY: ROUT
COMMENTS:
1.0
o 0.9
x
S 0.8
.,-4
0.70
c 0.6
0 0.5
0 .4 I I I I I I
1.0 1.2 1.4 1.6 1.8 2.0 2.2 2.4 2.6 2.8
V/4-L, Speed-Length Ratio of Strut
Figure 3. FORM DRAG COEFFICIENT
67
NAME: SUBROUTINE INPUT
PURPOSE: Reads iato common b~o,-k/INITL/the initialvalues of ship geometry and constraints,coucurrently defining array XI. It thenpr.ints the stazting point, along with anecho ot the inpat values
CALLING SEQUENCE: CALL INPUT (TITLE, S, OPTSPD)
ARGUMENTS: TITLE - Label printc~d on outputS - Scale factors
OPTSPD - Optimization speed in knots
COMMON BLOCKS: EXTLIM, INITL
SUBROUTINES CALLED: NONE
CALLED BY: SWATHO
68
NAME: SUBROUTINE LISTEX
PURPOSE: Lists various constraint values sothat it can be determined how closeto the extreme limits this solutionlies
CALLING SEQUENCE: CALL LISTEX
ARGUMENTS: NONE
COMMON BLOCKS: EXTLIM, PHYSCO, WORKVL
SUBROUTINES CALLED: NONE
CALLED BY: SWATHO, AUXPLT
69
NAME: SUBROUTINE MAPRNT
PURPOSE: Prints the columns of the NxN Optimizationmatrix V with a heading as specified by OPTION
CALLING SEQUENCE: CALL MAPRNT (OPTION, V, M, N)
ARGUMENTS: OPTION = 1 LABELS NEW DiRECTION2 LABELS PRINCIPAL AXES
V - Logical variable = TRUEM - The maximum step sizeN - Number of variables
COMMON BLOCKS: NONE
SUBROUTINES CALLED: NONE
CALLED BY: PRAXIS
70
NAME: SUBROUTINE PCHEB
PURPOSE: Subroutine PCHEB plots by line printer thebody sectional area curve and waterplaneoutline curve from the given Chebychevcoefficients
CALLING SEQUENCES: CALL PCHEB (AS, BS, AB, BB, NN, TITLE)
ARGUMENTS: AS - Coefficients of Chebychev SineSeries for strut (Symmetric)
BS - Coefficients of Chebychev CosineSeries for strut (Antisymmetric)
AB - Coefficients of Chebychev Sine
Series for body (Symmetric)
BB - Coefficients of Chebychev CosineSeries for body (Antisymmetric)
NN - Dimension of AS, BS, AB, BBTITLE- Array containing the alphanumeric
characters of the title of theproject.
COMMON BLOCKS: NONE
SUBROUTINES CALLED: PLOTi, PLOT2, PLOT3, PLOT4
CALLED BY: AUXPLT
71
NAME: FUNCTION PEHP
PURPOSE: PEHP is the objective function to be
minimized by PRAXIS
CALLING SEQUENCE: PE = PEHP (S,N)
ARGUMENTS: S - Array of scale factors being optimized
N - Maximum order of the Bessel function
COMMON BLOCKS: OMEGA, WORKVL
SUBROUTINES CALLED: SCALE, CHEB, CKLIM, EHP
CALLED BY: PRAXIS
72
NAME: SUBROUTINE PLOTI
PURPOSE: Subroutine PLOT1 sets up spacing anddetermines the values of the axes
CALLING SEQUENCE: CALL PLOTi (NSCALE, A, B, C, D, E, F)
ARGUMENTS: NSCALE - Integer array defined as
follows:
NSCALE (1) - I, if printed, values ofthe ordinate are 10 ** Itimes the actual values
NSCALE (2) - J, if printed, values ofthe ordinate are 10 ** Jtimes the actual values
NSCALE (3) - K, if printed, values ofthe abscissa are 10 ** Ktimes the actual values
NSCALE (4) - L, if printed, values ofthe abscissa are 10 ** Ltimes the actual values
A - Integer number of horizontalgrid lines
B - Integer number of spacesbetween each horizontalgrid line
C - Integer number of vertical
grid lines
D - Integer number of spacesbetween each vertical gridline
E - Horizontal grid character
F - Vertical grid character
COMMON BLOCK: XRPLOTQ
SUBROUTINE CALLED: NONE
CALLED BY: PCHEB
73
NAME: SUBROUTINE PLOT2
PURPOSE: Subroutine PLOT2 examines the minimum andmaximum values of the abscissa and theordinate and establishes an internalformula for computing location in theimage region corresponding to the pointto be plotted
CALLING SEQUENCE: CALL PLOT2 (XMAX, XMIN, YMAX, YMIN, NSCLI)
ARGUMENTS: XMAX - Value of abscissa at rightmost
grid lineXMIN - Value of abscissa at leftmost
grid lineYMAX - Value of ordinate at top grid
lineYMIN - Value of ordinate at bottom
grid lineNSCLI - Logical flag (should be FALSE,
if PLOTI has not been calledand standard grid is desired)
COMMON BLOCKS: XRPLOTF, XRPLOTQ, XRPLOTG
SUBROUTINE CALLED: NONE
CALLED BY: PCHEB
74
NAME: SUBROUTINE PLOT3
PURPOSE: Subroutine PLOT3 assigns an alpha-
character to each point to be plotted
CALLING SEQUENCE: CALL PLOT3 (PCHAR, X, Y, SDATA, FDATA,
DDATA)
ARGUMENTS: PCHAR - Plotting character
X - Array containing the X
coordinates to be plotted
Y - Array containing the Y
coordinates to be plotted
SDATA - Integer position in the arrays
of the first ordered pair to
be plotted
FDATA - =1 if each point from SDATA
to DDATA is to be plotted
=2 if every other point is to
be plotted=3 if every third point is to
be plotted
DDATA - Integer position in the array
of the last ordered pair to be
plotted
COMMON BLOCKS: XRPLOTF, XRPLOTG
SUBROUTINE CALLED: NONE
CALLED BY: PCHEB
75
NAME: SUBROUTINE PLOT4
PURPOSE: Subroutine PLOT4 prints the image of thecompleted graph on the printer, includingthe values of the abscissa and the
ordinate at the grid lines outside thebottom and left edge of the graph
CALLING SEQUENCE: CALL PLOT4 (MCHAR, NCHAR)
ARGUMENTS: MCHAR - Single dimension arraycontaining alpha characters
to be plotted at the left
of the graphNCHAR - Number of valid characters in
MCHAR
COMMON BLOCKS: XRPLOTF, XRPLOTG, XRPLOTQ
SUBROUTINE CALLED: QPLOTZ5
CALLED BY: PCHEB
76
NAME-: SUBROUTINE POMITI
ETo cause certain grid lines on graph to be
deleted, depending upon which arguments
are labeled TRUE
CAI.ING SEQUENCE: CALL POMITI (T, B, L, R)
ARGUMENTS: T = top line on graph
B = bottom line on graphL = left line on graphR = right line on graph
COM2MON BLOCKS: XRPLOTG, XRPLOTQ
SUBROUTINES CALLED: NONE
CALI.ED BY: Main program
COMMENTS: This subroutine is part of a plotting
package and is included in thisprogram only to keep this packageintact
77
NAME: SUBROUTINE POMIT2
PURPOSE Causes horizontal and/or vertical valuesat grid lines to be deleted
CALLING SEQUENCE: CALL POMIT2 (ARG)
ARGUMENTS: ARG ARG = 1 values of abscissa at
grid lines deletedARG = 2 values of ordinate at
lines deleted
ARC = 3 both sets of valuesdeleted.
COMMON BLOCKS: XRPLOTQ
SUBROUTINES CALLED: NONE
CALLED BY: Main program
COMMENTS: This subroutine is part of a plotting
package and is included in this programonly to keep this package intact
78
NAME: SUBROUTINE PRAXIS
PURPOSE: Finds the minimum of the function
F(X,N) of n variables using the principalaxis method. The gradient of the functionis not required.
CALLING SEQUENCE: CALL PRAXIS (TO, HO, N, IPRIN, X, F, FMIN)
ARGUMENTS: TO - is a tolerance
HO - is the maximum stepsize
N - the number of variablesupon which the functiondepends (must be at
least two)IPRIN - controls the printing
of intermediateresults
x - contains oh entry a guessof the point of minimum,
on return the estimatedpoint of minimum
F - the function to be
minimizedFMIN - is set to the minimum
found
COMMON BLOCKS: PRCOMM, Q
SUBROUTINES CALLED: PRPRIN, PRMIN, PRQUAD, MAPRNT, PRFIT,
PRSORT, VCPRNT, RANDUM, PEHP
CALLED BY: SWATHO
COMMENTS: The approximating quadratic form is:
s(X') - F(X,N) + *((X'-X) - Transpose *A* (X-X'))
X is the best estimate of the minimumA is Inverse (V-Transpose) *D* Inverse (V)V(**) is matrix of search directionsD(*) is array of second differences
79
NAME: SUBROUTINE PRFIT
PURPOSE: An improved version of MINFIT restrictedto M - N,P - 0. The singular valuesof the array AB are returned to Q, andAB is overwritten with the orthogonalmatrix V such that U DIAG (Q) = AB.V,where U is another orthogonal matrix.
CALLING SEQUENCE: CALL PRFIT (M, N, MACHEP, TOL, AB, Q)
ARGUMENTS: M - is the maximum step sizeN - the number of variables upon which
the function dependsMACHEP - is the machine precision, the smallest
number such that I+MACHEP>I. MACHEPshould be 2**-47 (about 7.105 E-15)for single precision arithmetic onthe CDC 6000 system or 16**-13 (about2.23 D-16) for double precision onthe IBM 370 system.
TOL - ToleranceAB - Array for which singular values are
to be determinedQ - Where the original values of the array
are to be stored.
COMMON BLOCKS: NONE
SUBROUTINES CALLED: NONE
CALLED BY: PRAXIS
80
NAME: FUNCTION PRLIN
PURPOSE: PRLIN is the function of one real
variable L that is minimized by thesubroutine PRMIN
CALLING SEQUENCE: PR = PRLIN (N, J, L, F, X, NF)
ARGUMENTS: N - Number of variableJ - Defines direction for search/
minimization in the V matrixL - The single variable in the rotated
coordinate system upon which thefunction is assumed to varyquadratically
F - The function to be minimized
X - Coordinate of the initial pointin the quadratic space
NF - The function evaluation counter
COMMON BLOCKS: Q
SUBROUTINES CALLED: NONE
CALLED BY: PRMIN
8|81
NAME: SUBROUTINE PRMIN
PURPOSE: Minimizes F from X in the direction V(*,J)unless J is less than 2, when a quadraticsearch is made in the plane, defined byQ0, Q1, x
CALLING SEQUENCE: CALL PRMIN (N, J, NITS, D2, Xl, Fl, FK,F, X, T, MACHEP, H)
ARGUMENTS: N - is the number of variables upon whichthe function depends.
J - Defines direction for search/minimiza-tion in the V matrix.
NITS - Controls the number of times anattempt will be made to halve theinterval
D2 - is either zero or an approximationto half F
Xl - is estimate of the distance fromX to the minimum along V (*, J)
F1 - PRLIN (N, J, Xl, F, X, NF)FK - Logical operatorF - The function to be minimizedX - Coordinate of the initial point
in the quadratic spaceT - Tolerance
MACHEP - Machine precisionH - Step size
COMMON BLOCKS: PRCOMM, Q
SUBROUTINES CALLED: PRLIN
CALLED BY: PRAXIS, PRQUAD
82
NAME: SUBROUTINE PRPRIN
PURPOSE: PRPRIN prints intermediate optimization
results including the number of functionevaluations, function value, and currentcoordinates
(ALLING SEQUENCE: CALL PRPRIN (N,X, IMPRIN)
ARCUMENTS: N - the number of variables upon whichthe function depends
X - contains on entry a guess of thepoint of minimum, on return theestimated point of minimum.
IPRIN - controls the printing of intermediateresults
COMMON BLOCKS: PRCOMM
SUBROUTINES CALLED: AUXPLT
CALLED BY: PRAXIS
83
NAME: SUBROUTINE PRQUAD
PURPOSE: Looks for the minimum of F along aquadratic curve defined by Q0, Qi, X,
in case minimization is being done ina curved valley
CALLING SEQUENCE: CALL PRQUAD (N, F, X, T, MACHEP, H)
ARGUMENTS: N - Number of variableF - The function to be minimized
X - Coordinate of the initial pointin the quadratic space
H - Step size
COMMON BLOCKS: PRCOMM, Q
SUBROUTINES CALLED: PRMIN
CALLED BY: PRAXIS
84
NAME: SUBROUTINE PRSORT
PURPOS E: Sorts the elements of D(N) intodescending order and moves thecorresponding columns of V(N,N)
resulting in eigenvalues and elgenvectors
CALLING SEQUENCE: CALL PRSORT (M, N, D, V)
ARGUMENTS: M - The maximum step sizeN - Number of variables
D - Second difference arrayV - Matrix of search directions
COMMON BLOCKS: NONE
SUBROUTINES CALLED: NONE
CALLED BY: PRAXIS
85
NAME: SUBROUTINE QPLOTZ5
PURPOSE: Subroutine QPLOTZ5 calculates thescaling information needed to
generate the format to label the left-hand side of the printer plot.
CALLING SEQUENCE: CALL QPLOTZ5 (PDQ)
ARGUMENT: PDQ-scaling factor for ordinate plot
COMMON BLOCKS: XRPLOTF, XRPLOTQ
SUBROUTINES CALLED: NONE
CALLED BY: PLOT4
86
/ Ab-AIO ?77# DAVID V TAYLOR NAVAL SHIP RESEARCH AND OEVELOPMENT CE--TC F/S 20/4DOCUMENTATZON FOR SWATH SNIP RESISTANCE OPTIMIZATION PROSUAN (S-ETC(U)SEP 01 T J NAK, ANREM
NCLASSPIEID DTNSRDC/SPO-93L-S
I IN
U.___ f 2. 5
iiiii ,___,1 I 11 2
411111 1.25 -11114 h
MICROCOPY RESOLUTION iEST CHARTNIN(NAl BIIR AU 01 IANDAAN I A
NAME: FUNCTION RANDUM
PURPOSE: To avoid resolution valleys, by makingrandom steps on a periodic basis,Function RANDUM returns a random numberuniformly distributed in (0,1)
CALLING SEQUENCE: RA = RANDUM (NAUGHT)
ARGUMENTS: NAUGHT - number used to initializethe random number generator
COMMON BLOCKS: NONE
CALLED BY: PRAXIS
87
NAME: SUBROUTINE REFLKT
PURPOSE: Subroutine REFLKT defines the lowerhalf of the symmetrical matrices T andW, the auxiliary wave resistance integrals,
by reflection about the diagonal of thematrix.
CALLING SEQUENCE: CALL REFLKT
ARGUMENTS: NONE
COMMON BLOCKS: AUX, COEFS
SUBROUTINE CALLED: NONE
CALLED BY: RWAVE
88
NAME: SUBROUTINE RINIT
PURPOSE: Subroutine RINIT initializes the auxiliarywave resistance matrices, T and W, to zero
t
CALLING SEQUENCE: CALL RINIT
ARGUMENT: NONE
COMMON BLOCKS: AUX, COEFS
SUBROUTINE CALLED: NONE
CALLED BY: RWAVE
89
NAME: SUBROUTING RINTEG
PURPOSE: Subrouting RINTEG evaluates theintegrand for T and W functions.
CALLING SEQUENCE: CALL RINTEG (ALFA, B, D, NLOC2, WTINT,
SEPCOS, SQ)
ARGUMENTS: ALFA - Integrating variableB - CSTRTl(I)/XLSD - CSTRT2(I)/XLSNLOC2 - Flag indicating the
presence of a second strut
NLOC2 = 0 if single strut= 1 if tandem strut
WTINT - Weighting constant
for the integrandSEPCOS - Value of the cosine
function in theintegrand
SQ - Value of the integrand
1
(a2 - Y2 )1/2
COMMON BLOCKS: AUX, OMEGA, COEFS, WORKVL
SUBROUTINE CALLED: BESSJ
CALLED BY: RWAVE
COMMENTS: Integrals used in calculations are of the form:
Yo + /d G da
f + 2 da f(a) + f f(a)YOS C1a 802 fo S + 1 %/ a2 y s2
- -- 1of
For the first integral we use the substitution: a = y + C2 where.d = 2dz.
Therefore the first integral becomes fI o + 2 f(Yos + 2
Where the function f(a) takes the form of E0(a) Jm(a)5n(a )
where the order of the Bessel functions is determined by which auxiliaryfunction is to be evaluated.
90
NAME: SUBROUTINE ROUT
P POSE: Calculates EHP, and wave resistance coefficients,frictional drag coefficients, speed constants,and prints the intermediate and final designresults
CALLING SEQUENCE: CALL ROUT (TITLE, EHP, KEY)
ARGLWMENTS: TITLE - label printed on outputEHP - effective horsepower of the shipKEY - variable used to skip or print output
COMON BLOCKS: OMEGA, PHYSCO, WORKVL
SUBROUTINES CALLED: SUM, FORMDR
CALLED BY: Function EHP
COMMENTS: The type of output from ROUT is determined bythe value of KEY, which is set in the subroutineswhich call ERP. If KEY = 0 (set in PEHP) nooutput is printed and ROUT just does computations;
if KEY = 1 (set in SWATHO) the optimization iscomplete and the final design values are printed;
if KEY = 2 (set in AUXPLOT) the intermediatedesign results are printed
91
NAME: SUBROUTINE RWAVE
PURPOSE: Subroutine RWAVE computes the auxiliary waveresistance functions T and W.
CALLING SEQUENCE: CALL RWAVE (B, D, NLOC2)
ARGUMENTS: B -CSTRTI(I)/XLSD -CSTRT2(1)/XLSNLOC2 -Flag indicating the presence of a
second strut
NLOC2-Jo if single strutI if tandem struts
COMMON BLOCKS: AUX, OMEGA, PSI, COEFS, PHYSCO, WORKVL
SUBROUTINES CALLED: RINIT, SIMPSN, RINTEG, BESSJ, REFLKT
CALLED BY: FUNCTION EHP
COMMENTS :
Integrals evaluated by RWAVE:
T = (2m-1) (2n-1) f S 4,,2 _y 2 2
WS = (2m) (2) 1d_ 2 _ y E2s (C) 3 m- (c) 3m()
Smn "yos C12 os EB (a) J 2m(a) J 2n(a)
T = (2m) (2n) f'o a2 2. .(a) (a) EB()"B m( (n) fy fa 2 -_ 2 EB 2m-1 2n 1os
WB = (2m) (2n) f E c da E2 (s)n Yos a 2 - 2 B
T B m(2mn-1) (2n-1) f 1 da E S(() EB(5) 3 m-(a) Jj(6
os
WSBmn - (2m) (2n) oP doa ES(a) EB(8) J2m(CO J2n( )
M' s 2 -.f '0500 ¥os
92
. . . .. .w e .. . . .. . . .
NAME: SUBROUTINE SCALE
PURPOSE: Creates current working values X, by X - S*XI,
where S is the scale factor, and XI is thevector of initial values.
CALLIk SEQUENCE: CALL SCALE (S, N)
ARGUMENTS: S - scaling value for each of the variables
N - number of variable
COMMON BLOCK: INITL, NOCHG, PHYSCO, WORKVL
SUBROUTINES CALLED: NONE
CALLED BY: SWATHO, PEHP, AUXPLT
93
NAME: SUBROUTINE SIMPSN
PURPOSE: Subroutine SIMPSN sets up Simpson's multipliersfor numerical integration by Simpson's rule.
CALLING SEQUENCE: CALL SIMPSN (NPTS, SIMP)
ARGUMENTS: NPTS - Number of integration steps
SIMP - Array containing the Simpson's multipli~rs
COMMON BLOCKS: NONE
SUBROUTINE CALLED: NONE
CALLED BY: RWAVE
COMMENT: These values are used to integrate the auxiliary
wave resistance integrals, T and W, for valuesof the integral between Yos and Y08 + 1
An example of one of these integrals in the range Y., to Yos+l is
fYos + d_ f (a) 1 2d; + os + C2 )
0s Os9
94
NAME: SUBROUTINE SUM
PURPOSE: Subroutine SUM computes the sums for the waveresistance from the Chebychev coefficients andthe auxiliary wave resistance functions, T and W
M NE (A A T + B B W )
(A ni m n mn m n mn
COMMENTS: where Am and Bm are the symmetric and antisymmetric Chebychev
coefficients for the strut or body, and Tmn and Wm are theauxiliary wave resistance functions for various nu1h-strutcomb inat ions
CALLING SEQUENCE: CALL SUM (SUMIS, SUMIB, SUM1SB, SUM12S,SUM12B, SUMI2SB)
ARGUMENTS: SUMIS - Partial sum for strut 1SUMIB - Partial sum for body 1SUMISB - Partial sum for interaction
between strut 1 and body 1SUM12S - Partial sum for interaction
between strut 1 and strut 2SUMI2SB - Partial sum for interactions
between strut 1 and body 2 orstrut 2 and body 1
COMMON BLOCKS: AUX, COEFS
SUBROUTINE CALLED: NONE
CALLED BY: ROUT
5oU141ZS
SUM2S
Figure 4 -Body-Strut Configuration
95
NAME: SUBROUTINE VCPRINT
PURPOSE: With certain input options, this subroutineprints a vector of given length using two ofseveral formats
CALLING SEQUENCE: CALL VCPRINT (OPTION, V. N)
ARGUMENTS:. OPTION =1 Prints the Second Difference Array- 2 Prints the Scale Factors= 3 Prints the value of the approximating
quadratic form= 4 Prints the value of X
V = Matrix of search directions
N = Number of variable
COMMON BLOCKS: NONE
SUBROUTINES CALLED: NONE
CALLED BY: PRAXIS
96
NAME: SUBROUTINE WSURFB
PURPOSE: Determine surface area of body of revolu-tion whose sectional area is given by
Chebychev coeff icients
CALLING SEQUENCE: CALL WSURFB (AREA)
ARGUMENTS: AREA - Surface area of a body (ft )
COMMON BLOCKS: COEFS, PHYSCO, WORKVL
SUBROUTINES CALLED: FUNCTION EVAL
CALLED BY: CHEB
97
NAME: SUBROUTINE WSURFS
PURPOSE: Determines surface area of a strut whose thick-ness distribution is given by Chebychevcoefficients
CALLING SEQUENCE: CALL WSURFS (AREA)
ARGUMENTS: AREA - Wetted surface area of a strut (ft )
COMMON BLOCKS: COEFS, WORKVL
SUBROUTINES CALLED: FUNCTION EVAL
CALLED BY: CHEB
98
NAME: FUNCTION YINTP
PURPOSE: Function YINTP interpolates through a set ofdiscrete data, using quadratic interpolation.
CALLING SEQUENCE: YTP = YINTP (XZ, X, Y, N)
XA - Point to be interpolatedX - Array of ordinate dataY -Array of abscissa dataN -Number of data points
COMMON BLOCKS: NONE
SUBROUTINE CALLED: NONE
CALLED BY: FORMDR
COMMENTS: Uses linear interpolation
99
REFERENCES
1. Lin, W. C. and W. G. Day, Jr., "The Still Water Resistance and Propulsion
Characteristics of Small-Waterplane Area Twin-Hull (SWATH) Ships," AIAA/SNAME
Advanced Marine Vehicles Conferences. Paper No. 74-325, (1974).
2. Brent, Richard P., "Algorithm for Finding Zeroes and Extrema of Functions
without Calculating Derivatives," Stanford University Report, CS-71-198, 1971
100
APPENDIX A
OBJECTIVE AND PENALTY FUNCTIONS
101
APPENDIX A - OBJECTIVE AND PENALTY FUNCTIONS
The program SWATHO is designed to determine the geometry of a SWATH ship which
yields the minimum effective power for a given speed. Thus the objective function
is the effective power. However, this is an over simplification of the problem,
in that the solution to the problem must also satisfy a number of constraints. That
this is so is intuitively obvious if one considers that the ship with minimum power
for a given speed is that ship with zero length and volume, and therefore zero
resistance. Thus an obvious constraint is that the ship contain at least some
minimum volume.
The subroutine PRAXIS, which is used to perform the minimization, is a program
designed for use in unconstrained minimization problems. This dictates that a
modified objective function be employed, which takes into account the fact that
constraints are or are not violated. To meet this requirement, an external con-
straint method was employed, where the functions g 1(x) were defined to be greater
than zero when the i thconstraint was violated, and less than zero when the i th
constraint was satisfied. Using these g i ', the modified objective function was
defined as:
PEHP - EHP(1 + Max(g (x) 0)).
In all of the above definitions, the vector x is the vector of parameters defining
the ship's geometry.
This definition of the objective function results in the addition of no penalty
to the objective function internal to the region where the constraints are satisfied,
and results in the addition of a penalty exterior to the region where the constraints
are satisfied. This gives rise to the description of this as an external constraint
method.
There are a total of nineteen penalty functions which are applied to the pro-
blem of minimizing the resistance of a SWATH ship. These constraints/penalty func-
tions are as follows:
1. Minimum displacement constraint
91 (DISPMN-DISP)ct 1
where DISPMN is the minimum ship displacement as input by the user and
DISP is the current ship displacement at that iteration of the calculations.
102
2. Minimum draft-diameter ratio constraint
9= [Draft Factor x BDIA - (HS + BDIA)]ca2
where the Draft Factor is the minimum draft to diameter ratio, BDIA
is the body diameter at half of the length of the body and HS is the draft
of the strut.
3. Maximum draft constraint
= (HS + BDIA - DRFTMAX)a 3
where DRFTMAX is the maximum draft of the ship as input by the user.
4. Maximum beam constraint
g4 = (BS + BDIA - WMAX) C 4
where BS is the separation of the hull centerlines and WMAX is the
maximum beam of the ship as specified by the user.
5. Hull overlap constraint
g 5 - (BDIA - BS)Ct 5
6. Strut-hull Nose clearance constraint
96 ' (XFWD + CSTRT + XLS/2 - XLB/2)a 6
where XFWD is the minimum distance from the body leading edge to the
strut leading edge, CSTRT is the distance of the strut forward of the
body centerline, XLS is the length of the strut and XLB is the length of
the body.
7. Strut-hull tail clearance constraint
- (XAFT - XLB/2 + XLS/2 - CSTRT)a 7
where XAFT is the minimum distance from body trailing edge to strut
trailing edge.
8. Minimum transverse GM constraint
g8 a[MINGMT - (KB + BMT - KG)]c 8
where MINGMT is the minimum transverse GM, KB is the distance of the
center of buoyancy from the baseline, BMT is the transverse metacenter and
103
KG is the distance of the center of gravity from the baseline.
9. Minimum longitudinal GM contraint
g 9 - [MINGML - (KB + BML - KG)]ct9
where MINGML is the minimum longitudinal GM and BML is the longitu-
dinal metacenter.
10. Body offsets greater than zero contraint
O= f10 dx[Ib(x)I - b(x)alO
where b(x) represents the body offsets
11. Strut offsets greater than zero constraint1 d tri ,I - t(x)ll
where t(x) represents the strut offsets
12. Maximum length-diameter ratio check
912 ' (XLB - LODMAX x BDIA)a12
where LODMAX is the maximum body length over diameter ratio.
13. Minimum length-diameter ratio check
913 - (LODMIN x BDIA - XLB)a 13
where LODMIN is the minimum body length over diameter ratio.
14. Strut minimum thickness constraint
914 - (TSMIN - TSMAX)a 14
where TSMIN is the minimum strut thickness at 50% chord and TSMAX is
the strut thickness in the current iteration of the calculations.
15. Strut thickness-body diameter constraint
915 = (TSMAX - BDIA)a 15
16. Positive strut length contraint
916 = (-XLS)a 16
17. Positive body length constraint
917 (-XLB)(z17
104
18. Maximum body offset constraint
g18 w(b ma 1.2 BDIA)ct18
where b is the'maximum body offset. This constraint insures amax
reasonable value for the maximum body offset.
19. Maximum strut thickness constraint
g19 , (tmax - 1.2 TSMAX)ct19
where t is the maximum possible value of strut thickness. Thismax
constraint insures a reasonable value for the maximum strut thickness.
In all of the above penalty functions, the constraints a are chosen so that
a constraint violation of ten percent results in a value of g i around 104.
Of the above penalty functions, eleven are constraints imposed by the program
user to insure that the optimum vehicle meets some minimum set of criteria such as
minimum displacement and transverse and longitudinal GM. These user specified
constraints are the constraints numbered 1, 2, 3, 4, 6, 7, 8, 9, 12, 13, and 14.
The other eight constraints are constraints imposed by the program to insure
that the geometry of the vehicle is reasonable. Examples of these would be con-
straints to insure that the lengths of the body and strut are positive, and con-
straints to insure that the offsets of the strut and body are all positive. The
numbers of these constraints are 5, 10, 11, 15, 16, 17, 18, and 19.
105
APPENDIX B
COMPUTATIONAL PROCEDURE FOR SWATH
RESISTANCE PREDICTION
106
APPENDIX B - COMPUTATIONAL PROCEDURE FOR SWATH RESISTANCE PREDICTION
The main purpose of the SWATHO program is to minimize the power required to
propel a SWATH ship in a calm sea at constant speed. For a ship moving at speed V
and experiencing a total drag force RT the effective horsepower required is:
P RTVE 550
The total drag is comprise " three components: frictional resistance (RF),
wave-making resistance (Rr, -' C rw drag (RFM). That is:
• - RF + RW + RFM.
The frictional resistan. and :;-rm drag are caused by the motion of the hull through
a viscous fluid. The wave-making resistance is due to the energy that must be
supplied by the ship tn the wave system created on the free surface. However, wave-
making resistance and form drag are usually grouped together under the title of
residuary resistance.
FRICTIONAL RESISTANCE
Frictional resistance is the single largest component of the resistance of a
SWATH ship. Frictional resistance is calculated in the traditional fashion of naval
architects, using the ITTC model ship correlation line to determine a frictional
resistance coefficient (CF). However, for a SWATH ship, the frictional drag of the
hulls and struts are calculated separately based on their respective Reynolds
numbers. Thus we have that the frictional resistance coefficient is given by the
formula:
C 0.075(loglo Rn - 2)2
and the frictional resistance of the hulls and struts are given by:
RF F 1 S Hull V2 CHull Hull
and
V 2 CRFStrut p S SSru t FStrut*
107
In calculating the total frictional resistance, a correlation allowance (C A) Of
0.0005 is also included in the total, so we have that:
R F =RF Hull + RF Strut + '-2 (5wll + SStt )V2 C A
FORM DRAG
Form drag (R FM) is usually defined as the viscous component of the drag due to
the shape of body, i.e., the difference between the total viscous drag, and the
viscous drag of the equivalent flat plate of the same length. However, in the case
of the SWATH resistance programs, the form drag has been determined in a much more
empirical fashion.
SWATH form drag has been defined as the difference between the experimentally
determined residuary resistance of a hull form and the theoretically derived wave
resistance for that same hull form. Such a difference was calculated for both
SWATH 3 and SWATH 4 based on bare hull resistance results, and plotted as a func-
tion of strut speed-length ratio. A curve was then faired through the data,
Figure 3 (p. 69). Due to the scatter in the data a decision was made not to allow
the form drag coefficient go below 0.0005; this can be seen on Figure 3. The form
drag coefficient, determined from Figure 3, is converted to full scale form drag,
using the traditional formula and the total wetted surface:
RM= p SV2 CFM.
WAVE-MAKING RESISTANCE
The wave-making resistance of a ship is not easily predicted from empirical
relations or from gross ship features. Experience has shown that two ships of
similar form may differ significantly in their measured total resistance due to
differences in the wave-making resistance component. Wave-making resistance is a
function of the fine details of ship form, and is best studied through mathematical
analysis.
Lin and Day 1Investigated the problem of wave-making resistance for twin-hull
ships. The mathematical problem is formulated within the context of the linearized
thin-ship theory. In their investigations, the potential flow around such a ship
is represented by sheet distributions of sources.
The computer program SWATHO documented in this user's manual is devoted
primarily to the implementation of numerical procedures for the prediction of the
108
wave-making resistance of SWATH ships following the theory developed by Lin and
Day. The remainder of this appendix will be devoted to the discussion of the
essential details involved in the numerical procedure utilized in the wave-making
resistance predictions.
Based on the analysis of Lin and Day, the wave resistance is expressed as
follows:
R= ( pgT2Lsyos)
M M
x {Ass ASn Tsmn + BSm B Sn WSmnl 'm=ln=l
(2wPgAO2)
RB = \ yo J a2 a IABm ABn TBmn +B Bn WSBmnm=1 n=1
M M
RSB= (2fgACT) Asm An TSBmn + BS ER WSB n
m=l n=1
where T, LS, and hS are the maximum thickness, length, and draft of the strut,
respectively; A 0 , LB, and hB are the maximum section area, length, and depth of
submergence of the axis of the body.
In the above equations, RS, RE, and RSB represent the wave resistance due to
one strut, one main body, and the intersection between strut and main body, respec-
tively. Hence, the wave resistance of a SWATH ship becomes
RW = 2(RS + RE + R
Also in the above equations, ASm and BSm are the Chebychev coefficients for the
strut, ABm and BBm are the Chebychev coefficients for the hull, and T Sn, TSBmn,
TBmn, WSmn, WSBmn, and WBmn are the auxiliary wave resistance functions. The
auxiliary wave resistance functions are defined as follows:
T smn l f
(2m-l)(2n-l)
j 2 d0 D 2b, YsWSm n CL o vf 'YO
(2m)(2n) os
J2m-1 a) J2n-l1a)
s E J2m(o) J2n(a)
109
2b =1+_cs-S j-jo L2s2
Es 1 2 (h s/L s) (a2 /y OS),
gL sYOS 2U79'
T Bm
(2m-1)(2n-1) 00da a2 D aLb2b
WBn JYOS , Os
(2m) (2n) J
SEB ,)jj2m-1 (a) 12n-l8
x ~~ E()[2m(a) 12n(a)
-2(h B/L B ) a~yOB~
B L
YOB =U 2)
YOs
and
T SBm
(2m-1)(2n-l) 00 a D (a$ b
WS -- LJ~ s/2~ O
(2m) 2n) x E s(a)E B M 2m-1 ( ) 2 -
l3 2m (a) J 2n~a)
110
where Jm () is a Bessel function of the first kind, defined as follows:
) 2 - r- 2 cos(a sin t) cos(mt) dt.
0
NUMERICAL INTEGRATION METHODS FOR AUXILIARY WAVE
RESISTANCE FUNCTION EVALUATION
The range of integration for the auxiliary wave resistance functions is divided
into three intervals of integration: [y os, 'yos + 1], a "central region" and the
"tail" region. A detailed discussion of these intervals and the integration proce-
dure for each interval follows.
INTEGRATION PROCEDURE FOR THE INTERVAL [yos, Yos + l
In the region of yos the integrands do not behave well, but they are neverthe-less integrable. This is due to the presence of in the denominator. This
may be easily handled by utilizing the substitution:
ay o
where
da = 2dr.
This substitution will be utilized in the region y os, Yos + 1]. It eliminates the
square-root singularity by giving
f Y o l d0 2dC f(y os + C2).f os+ d f() = 2yos f2
Os 2 __KI
Investigating the behavior of the integrands as functions of in the region
0 < C < I shows that they are very well behaved and a simple numerical integration
scheme with about 30 points will yield excellent results.
1
* -*
INTEGRATION PROCEDURE FOR THE CENTRAL REGION
The central region of the numerical integration starts at a = y + 1 and con-
tinues until EB() reaches a very small fraction of its initial value,
[e+l)yoB l
EB O init) = EB Y 1The fraction is given as 10- so
exp Y YOB 10- = exp(-2.3026E).
exp 1-2 Yo +)yO
Y osY OB
Hence,
a L ~ = 2.3026ey~max L maxh L- B 's
The justification of this choice for aax and the effect of the choice of E, will
be discussed in the next section.
In order to implement an effective and economical numerical integration scheme,
it is necessary to investigate the behavior of the intagrands within this central
region. The requirement is to provide at least sevcral points of the integrand for
each full cycle of its oscillation. Hence, a constr:,tive estimate of behavior will
be an estimate of more rapid oscillation than actually exists.
The Bessel functions are approximated as
co.13V Z 2 4)
for IZ>>l and lZ>>vj.
112
: - .. .... .. . . .. .. . " m .... ... i..... u~n " . ... ... _L . ... . ..
for smaller Z, the behavior will be less oscillatory, so this represents a con-
servative estimate for all Z. This assumption results in
[ 1 [cos(2ct+T) + 1] -even
- [cos(2+T) - 1] u- odd
2
where the case of (p-v) odd will never occur due to the form of the integrands.
The other combinations of Bessel functions are found as
Jm (cO Jn - cos (Ct+a)
1
JM (n) - -- cos(2),
where the phase angles, a slow oscillation in the first case, and a constant term
in the second case, have all been ignored. Since 8 is generally greater than CL,
but of the same order of magnitude, a conservative estimate gives the variation of
all of the above as
1 1 /2L BJ J cos(20) = cos [2L)
The term [v yI behaves as [a] for cx >> yos and is better behaved for smaller
a. This conservative estimate will be used for the occurrence of this term at the
beginning of each integrand. However, the substitution will not be made in the term
D(c) = cos [ 2 abos SJ
which occurs in all of the two-hull integrands, since that would result in consid-
erably less economical numerical integration.
The terms EB(a) and ES(a) contain decreasing exponentials and are not oscil-
latory and are quite well-behaved, and so will not affect the spacing of points for
the numerical integration.
113
Therefore, the integrand for T12Smn and W 12Smn behave like
do C t)CO LB Cos 2 _1Trot E() (2 co a - -S Yos LSor
those for T12B.n and WI2Bmn behave like
da E 2 BCi) Cos ( 2 LB~ c) cos -L l v W ,nT B L o S L os L S do
those for T 2SBn and W12SBmn behave like
do IL L BE )S~)co-s(2 L! a) COSV . YL7~
(ci Os o
The single-hull terms (TSmn, WSmn, TBmnq WBmn, TSBmn, WSBmn) are similar but
without the cos [ s 2b a"ci 2 y2 term.[Y s LS -'os J t
Based on the behavior shown above, the most rapid oscillation of the integrands
is like
L SoS S.c]os[#~.c V/tW .
In the vicinity of c a , cos(f(ci)] behaves like cos [(fa) and hencedci
--B CO, S _ 2b 2
o L c 2
+
os
232ycos (2L + 2 2b d.os
( yos LS os
114
If the accuracy desired from the numerical integration scheme requires P points per
cycle, then the step size S (distance between points) in the vicinity of c c a is
S B P•
2 LB--- + 2 2b M o
Os S y!___Yoss
This step size will decrease with increasing a but will be smaller for larger hull
centerline spacing b. Hence, if computations are made for various values of b for
the same sample points, the step size should be based on the largest value of b.
The numerical integration scheme chosen for the central region is a modified
Simpson's rule in which all steps are not equal. For this method, a step size is
computed at a given a (starting first with yOs + 1), gsing the last equation. Then
an integral is taken over an interval equal to two of these step sizes, using a
three-point Simpson's rule. A new step size is computed for the a at the end of
that interval, and the process is repeated until a ma is reached or exceeded. The
concept may be visualized as shown below.
-Cos IH3pt 3pi1wroms simpscmRut# utt
This economizes on samples (points) where the integrand does not vary quickly, and
uses more densely spaced points where necessary.
All of the approximations made in this section have been only for the purpose
of choosing the step sizes for the numerical integration. The samples taken, which
are multiplied by appropriate weights added to obtain the numerical evaluation of
the integral, are all found using the actual integrands.
115
INTEGRATION PROCEDURE FOR THE TAIL
It should be noted that the criterion for the end of the "central region," and
hence the beginning of the "tail," is that EB(a) reach a very small percentage of
its original value. This will insure that any integrand which includes E (6) will
have long ceased to contribute significantly to the result. The body-alone and
strut-body integrals (TB, WB, T12B' W12B9 TSB, WSB, T12SB and W12SB) can therefore be
assumed complete at the conclusion of the "central region" numerical integration.
The strut-alone terms (Ts, WS, TI2 S, and W1 2S) are not complete, however. The
integrand for these terms decreases only like a- . The utilization of the "central
region" numerical integration scheme until this integrand were very small would be
quite accurate but exceptionally expensive, especially due to the constantly de-
creasing (with increasing a) step size required for that scheme. Hence, a more
economical scheme must be developed, accepting the resulting loss of accuracy.
The single-hull strut-alone terms (Ts and WS) are easily handled since they do
not include the highly oscillatory term
L S os
The behavior of the integrands for these terms is like
d.E 2 (OL) cos(2),
which allows the use of a simple numerical integration scheme with constant step
size
P
where P is the desired number of points per cycle.
The above method is still not very economical due to the large region over
which the integral must be taken, due to the relatively slowly decreasing a-4
envelope in which the integrand oscillates. A more economical method is to approx-
imate the integrand asymptotically, and analvtically integrate the approximate
integrand from a given value to infinity. The obvious simplification is to assume
that ES(a) =1 , which is an excellent approximation, becuase ES(a) approaches unity
as EB(0 ) approaches zero. The approximation is hence assured by the condition that
116
determined the end of the "central region." In addition to ES(a), the Bessel
functions must also be approximated. We use the approximation
J (a) .- cos Z 2
for Jul >> 1 and Jul > lVI.
If Jul is not enough greater than IvI at the beginning of the tail, a special
"base of tail" numerical integration is done for TS and W S using step size
S = Tr/P (as discussed on the previous page). This is done over a region from the
start of the "tail" until a is large enough for the above asymptotic approximation
to yield an accurate result. The above asymptotic approximation gives
J(V)JV(1) [ - cos(20+T) + 11 -2 even
1 [cos(2-+T) - 1] U:- odd7TO1 2
where the case of (V-v) odd will never occur due to the form of the integrands.
The integrands therefore consist of a constant term and an oscillatory term. The
contribution, of the constant term to the integral, using the above approximations,
is
f 2da s = arc sin~ys 2'AsA
~~A~ 1r3 /7 ry 5 A 2Try2SciA2
When aA is much greater than y os, this expression will not provide an accurati
solution since it will be the difference of two very similar values. For
R = os /A >> 1, the result is
1 ~ [R + I + - + R • '+2 R R 3 - R5 +"""27y3 6 40 2r
31 [ + R +. •
117
The simplified form
3 3
will therefore be accurate to about 2n decimal places if R is 10 -n. Likewise, the
exact solution will lose 2n decimal places in the subtraction of the two parts when
R . 10-n . Hence, for a computer with about 16 decimal place accuracy, the simpli-
fied form is used whenever R < 10- 4.
The analytic integration of part of the integrands for TS and WS shown in the
preceding paragraph depends on a large enough aA for sufficiently accurate approx-
imation of the Bessel functions. Hence, the simple numerical integration shown
must be utilized to fill in the gap if the "central region" ends before such a
sufficiently large aA is reached.
The oscillatory components of the integrands for TS and WS in the region of
analytic integration of the asymptotic approximations have been ignored in this
formulation, as their contribution is assumed to be negligible.
The integrals for T12S and W12S were not carried past the end of the "central
region" due to their highly oscillatory integrands, which made the contribution
from further computation both uneconomical, and not critical to the final values of
T and W This is, however, not as good an approximation as those previously12S 12S*
noted in the above development. As a result, errors of as much as 2% can be
expected in the computation of wave drag due to interference between the two struts.
118
APPENDIX C
RELATIONSHIPS BETWEEN CHEBYCHEV SERIES AND SWATH
HULLFORM COEFFICIENTS
119
APPENDIX C - RELATIONSHIPS BETWEEN CHEBYCHEV SERIES AND SWATH
HULLFORM COEFFICIENTS
CHEBYCHEV SERIES
In the wave resistance integrals, geometry of strut and body are represented
by a special form of Chebychev series. In SWATHO, the Chebychev coefficients are
.pproximated from various statistical moments of strut and body. The Chebychev
series representation of hull and body geometries are discussed below. Let
x = sin 0,--1- <0 1
Define the fundamental functions of the Chebychev series as follows:
Um (x) = cos(2m-1)0
= cos[(2m-l)sin-tx]
V (x) = sin 2m0
= sinj2m sin-x], m = 1, 2, . , m.
The strut half-thickness and the body sectional-area functions can be repre-
sented by finite sums of the fundamental Chebychev series as follows:
M
t(x) =E [AsmUm(x) + BsmVM()]m-1
M
=E [ cos(2m-l)0 + B smsin 2m0]m=l
and
M
A(x) =E (AbmU(x) + BbmVm (x]m=l
M
" [bmcoS(2ml0 + Bbmsin 2m0]m-1
120
Through use of the orthogonality of the series, the following inversion
formulas are obtained:
2 fl t(x)U (x)A -= J dx mASm i -I "l-x2
X2/2
= f 7-/2 det(sin 0) cos[(2m-l)81,
2 t(x)V (x)B f dx mSm -1 /lx2
2J 1/2
= f--/2 d~t(sinO) sin(2m0),
AI2 f/2
Bm =7T d6 A(sin 0) cos(2m-1)6,
and
2 f /2
BBm =2 7 dO A(sin0) sin 2m0.
-n/2
INVERSE PROCEDURE FOR DETERMINING THE CHEBYCHEV COEFFICIENTS
The geometric coefficients of a SWATH ship's form can be shown to be closely
related to the Chebychev coefficients of the strut and body.
These coefficients of form are easily obtained at the preliminary design stageand, thus, can be used to approximate the Chebychev coefficients. In the following
example, the waterplane coefficient, Cwp,can be used to find AS1 .
By definition, the waterplane area is
Ls/2
AW 2 / dx t(x)
121
where t(x) is the thickness function of the strut. Let
L L
., dx = - - = x, t(x) tmax t(C).
Thus,
L-I
2w + max fl ~t~
1-L I' M.±S j ,4[ A U (C) + B V (E)
2 tmax '~[ dsm m sm m J
m As U (E)dE + B V (E)dC•2 tmax As Bsm
Making the substitution,
x = sine, dx = cos dO,
we obtain:
AW = 2 - tmax Asmf de cos(2m-l)Ocos 01
M /2
+7Bsm f dO sin 2m0 cos 81 -'r/2coj
The second integral is odd and, therefore, it is identically zero. Hence
L t M 7T/2= 2 ma Asm f dO(cos(2m-l) 6 cos 0
L t M r/2=s2max . A sm f-Tr/2 dO[cos(2m-2)0 + cos 2m0]
122
L t M T/
max Asm sin(2m-2)0 + - sin 2m1
2 2m-2 2m 1
Lt M [s t max ,A' sin(m-l) + sin mir
2 m 2(m-l) 2m
These integrals are identically zero except for m=l where the first term contri-
butes Tr/2,
Lts max U
AW= 2 2ASi.
The waterplane coefficient is defined as
C AwCWp =L t
s max
Therefore
A - 4CWPS1 7
This derivation shows how the waterplane coefficient is related to the Chebychev
coefficient, A S. Similarly we can prove,
4CpAB1 U
where C is the body prismatic coefficient.
In the SWATHO program the maximum number of terms of the Chebychev series is
three. The Chebychev coefficients are determined by the following formulas for the
strut:
4CWP
AS2 ASI(I - 16 CIW),
123
AS3 1 ASi S2'
BSi 4 LCF 'A S1,
B S2 =0,
B =0,
and the body coefficients are determined as follows:
A 4-C
A =1 -AB2 BI
AB3 0
VB =4C *ABi LCF li'
BRB2 =0,
B B3 0,
where
=W Waterplane area coefficientIW = ArW/(LS T s), where AW is waterplane area of one strut.
CF aterplane moment coefficientL F C L F = M x ( W -LS) *
C 1W =Waterplane inertia coefficient
C = IWY/(AW * L,)
CP = Body prismatic coefficient
CP=VB /(x L B) where V B is displaced volume of one body.
C = Body moment coefficientLCB*
All moments and the moment of inertia are taken about the mid-length of therespective strut or body.
124
DTNSRDC ISSUES THREE TYPES OF REPORTS
1. DTNSRDC REPORTS, A FORMAL SERIES, CONTAIN INFORMATION OF PERMANENT TECH-NICAL VALUE. THEY CARRY A CONSECUTIVE NUMERICAL IDENTIFICATION REGARDLESS OFTHEIR CLASSIFICATION OR THE ORIGINATING DEPARTMENT.
2. DEPARTMENTAL REPORTS, A SEMIFORMAL SERIES, CONTAIN INFORMATION OF A PRELIM-INARY, TEMPORARY, OR PROPRIETARY NATURE OR OF LIMITED INTEREST OR SIGNIFICANCE.THEY CARRY A DEPARTMENTAL ALPHANUMERICAL IDENTIFICATION.
3. TECHNICAL MEMUHANDA, AN INFORMAL SERIES, CONTAIN TECHNICAL DOCUMENTATIONOF LIMITED USE AND INTEREST. THEY ARE PRIMARILY WORKING PAPERS INTENDED FOR IN-TERNAL USE. THEY CARRY AN IDENTIFYING NUMBER WHICH INDICATES THEIR TYPE AND THENUMERICAL CODE OF THE ORIGINATING DEPARTMENT. ANY DISTRIBUTION OUTSIDE DTNSRDCMUST BE APPROVED BY THE HEAD OF THE ORIGINATING DEPARTMENT ON A CASE-BY-CASEBASIS.
DATE