Printer Friendly Allowable KG & Stability Macros Allowable KG & Stability Macros

To use these macros, you should include the line:

     use_mac stab

in your data file. It loads the two macros: STAB_OK and KG_ALLOW.

STAB_OK produces the righting arm, heeling arm, and area ratio curves for the draft specified. Since the righting arm is based on the equilibrium of the buoyancy and weight of the vessel, the vessel weight must have been previously defined. This can be accomplished with the stanza:

     $
     $*********************************     set transit condition
     $
     &INSTATE -CONDITION 7
     $
     $*********************************      compute weight for condition
     $
     &WEIGHT -COMPUTE  5 32 85 85

Now, stability checks with the commands of the form:

     $
     $**************************************      check one intact
     $
     hystat
     stab_ok 5 2.5 10 -wind 100 -yaw 0
     $
     $**************************************      check one damaged
     $
     stab_ok 5 2.5 10 -wind 100 -yaw 0 -damage 5p

These two checks are identical, except that the first one checks intact stability for a draft of 5 feet, while the second one checks stability with compartment 5p damaged.

When using STAB_OK (or KG_ALLOW discussed below), the NWT_DOWN points are used to check intact stability, and both the NWT_DOWN and WT_DOWN points are used to check damaged stability.

There are other options for STAB_OK, and the general form of the command is:

     STAB_OK DRAFT RANG_INC NR_ANGLES -OPTIONS

where the options are:

     -YAW, Y_ANGLE
     -DAMAGE, DAM_CMP
     -WIND, WIND
     -THWAV, ANGLE_WAVE
     -CEN_LAT XC, YC, ZC
     -U_CURRENT
     -COEF_WIND, W_COEF
     -WIND_MAC MAC_NAME
     -NO_EQUI
 
     -I_GM, IGM
     -I_AR_RATIO, IARATIO
     -I_AR_WRATIO, IAWRATIO, MANG
     -I_ARM_RATIO, IARMRAT
     -I_DOWN_H, I_DOWNH
     -I_ARE@MARM, IARE@MARM
     -I_ARE@DFLD, IARE@DFLD
     -I_ARE@30, IARE@30
     -I_ARE@40, IARE@40
     -I_AREBTW, IAREBTW
     -I_ARM_AR, IARMARE
     -I_ZCROSS, IZCROSS
     -I_THETA1, ITHETA1
     -I_RANGE, IRANGE
     -I_ANG_DIFF, IANGDIF
     -I_DANG_T1, IDANGT1
     -I_DANG, IDANG
     -I_ANG@MARM, IANG@MARM
     -I_WAR_RATIO, I_WAR_RATIO
     -D_GM, DGM
     -D_AR_RATIO, DARATIO
     -D_AR_WRATIO, DAWRATIO, MANG
     -D_ARM_RATIO, DARMRAT
     -D_DOWN_H, D_DOWNH
     -D_ARE@MARM, DARE@MARM
     -D_ARE@DFLD, DARE@DFLD
     -D_ARE@30, DARE@30
     -D_ARE@40, DARE@40
     -D_AREBTW, DAREBTW
     -D_ARM_AR, DARMARE
     -D_ZCROSS, DZCROSS
     -D_THETA1, DTHETA1
     -D_RANGE, DRANGE
     -D_ANG_DIFF, DANGDIF
     -D_DANG_T1, DDANGT1
     -D_DANG, DDANG
     -D_ANG@MARM, DANG@MARM
     -D_WAR_RATIO, D_WAR_RATIO

The variable DRAFT sets the draft for which stability will be checked. When the command is invoked, it will rotate the vessel NR_ANGLES times adding RANG_INC to the roll angle. For each increment, the program will iterate an equilibrium position for the other degrees of freedom and then compute the righting and wind heeling arms.

The -YAW is analogous to the same option on the RARM command and is used to compute righting arms about a skewed axis. The -DAMAGE option is used to select tanks that will be damaged for damaged stability. If one does not wish to check damaged stability then this option should not be used.

The next set of options control the computation of wind heeling. The -WIND option is used to define the wind which will be considered. The -CEN_LAT, -U_CURRENT and -COEF_WIND options simply pass their data directly to the RARM command, so that their data is the same as that for the option to the RARM command of the same name.

To include the roll owing to wave action a wave angle can be includes with -THWAV. The righting arm and wind arm calculations will begin at the angle of roll do windward due to wave action (ANGLE_WAVE).

Alternatively, the -WIND_MAC option will call the macro

     MAC_NAME yaw draft

immediately before each invocation of RARM. If you use this option, then you must write the macro, MAC_NAME. It takes the two arguments and set a variable. An example is:

     &MACRO MAC_NAME YAW DRAFT
     &SET COE_WIN = -W_COEF A B C
     &ENDMACRO
     &M_ACT MAC_NAME RARM

One can add any logical he wishes here to change the coefficients based on draft and yaw. The values A, B, and C are numbers depending upon the situation.

By default, righting arms are computed about the equilibrium position which is computed before starting. If the -NO_EQUI option is used, the basic position is used. Notice that the GM may not be defined when using this option.

The results of this macro are plots of the righting arm, heeling arm, and area ratio curves, and two reports. The first report is the standard stability report. The second presents: the condition, the allowables, and the results for each stability criterion along with a statement of "PASS" or "FAIL".

The next thirty six options define the criteria which will be used to check the stability. With these options a prefix of I_ defines a criterion for intact stability and a prefix of D_ defines one for damaged stability. Basically eighteen checks are made:

We apologize for the complexity here, but we tried to make these macros applicable to as many rules as possible. Only the checks which are specified will be checked and reported.

We compute the maximum allowable KG for a set of drafts, intact wind speed, and a damage wind speed with the command KG_ALLOW, which has the general form:

     KG_ALLOW

where the options are:

     -DRAFTS, D1, D2, ......
     -TOL, KG_TOL
     -KG_MIN, KG_MIN
     -KG_MAX, KG_MAX
 
     -YAW, Y_ANGLE(1), .....
     -DAMAGE, DAM_CMP(1), .....
     -WIND, I_WIND, D_WIND
     -CEN_LAT XC, YC, ZC
     -U_CURRENT
     -COEF_WIND, W_COEF
     -WIND_MAC MAC_NAME
     -NO_EQUI
 
     -I_GM, IGM
     -I_AR_RATIO, IARATIO
     -I_AR_WRATIO, IAWRATIO
     -I_ARM_RATIO, IARMRAT
     -I_DOWN_H, I_DOWNH
     -I_ARE@MARM, IARE@MARM
     -I_ARE@DFLD, IARE@DFLD
     -I_ARE@30, IARE@30
     -I_ARE@40, IARE@40
     -I_AREBTW, IAREBTW
     -I_ARM_AR, IARMARE
     -I_ZCROSS, IZCROSS
     -I_THETA1, ITHETA1
     -I_RANGE, IRANGE
     -I_ANG_DIFF, IANGDIF
     -I_DANG_T1, IDANGT1
     -I_DANG, IDANG
     -I_ANG@MARM, IANG@MARM
     -I_WAR_RATIO, I_WAR_RATIO
     -D_GM, DGM
     -D_AR_RATIO, DARATIO
     -D_AR_WRATIO, DAWRATIO
     -D_ARM_RATIO, DARMRAT
     -D_DOWN_H, D_DOWNH
     -D_ARE@MARM, DARE@MARM
     -D_ARE@DFLD, DARE@DFLD
     -D_ARE@30, DARE@30
     -D_ARE@40, DARE@40
     -D_AREBTW, DAREBTW
     -D_ARM_AR, DARMARE
     -D_ZCROSS, DZCROSS
     -D_THETA1, DTHETA1
     -D_RANGE, DRANGE
     -D_ANG_DIFF, DANGDIF
     -D_DANG_T1, DDANGT1
     -D_DANG, DDANG
     -D_ANG@MARM, DANG@MARM
     -D_WAR_RATIO, D_WAR_RATIO

The options here are "the same as" those for the STAB_OK command, except that one should specify wind speeds for both intact and damaged cases with -WIND and one can specify more that one thing with -YAW and -DAMAGE. The only new options are -TOL which define the tolerance (feet or meters) for the computation of the allowable KG, -DRAFTS which defines the drafts to be considered, KG_MIN, and KG_MAX. The last two of these are used in setting the limits which will be searched and normally should not be needed. KG_MIN has a default of 0 and thus it is assumed the vessel has been coded up according to the documentation or that if the KG is at the keel, the vessel will pass the stability requirements. If you get a message that "LOWER BOUND FAILS", then you need to use this option with some negative KG so that the message goes away. The KG_MAX value defaults a value which yields zero GM. If you have a partial run which establishes an upper bound on the allowable KG, you can use it here to minimize the computational effort.

For each draft specified, the command will find an "allowable KG" for the set of damages and yaw angles specified. By allowable, we mean that any KG greater than (to within KG_TOL) that found will fail one of the stability requirements for some damage and yaw angle. Basically, this macro simply incorporates an iterative algorithm and repeatedly calls STAB_OK to find the allowable. The macro uses the following search technique:

If more than one draft was specified, a plot of the allowable KG vs draft will be made. Since the algorithm favors failure, it is much more efficient if you order the data "properly". In particular, you should input the damage cases in order of most likely failure. The same can be said of the yaw angles.




Ultramarine, Inc. | Suite 325 | 3100 S. Gessner | Houston, Texas 77063 | (713)975-8146

Next

Copyright(C) 1996-2008 Ultramarine,Inc.