GHS Version Update History from Version 16.50 to 17.00

GHS Version Update History since Version 17.00

Version 17.00A

SCREEN SCROLL modes sometimes misformatted output after dragging the border
increased the number of window rows.

SEAkeep LIMIT combined with SEA /RESP was trapping an unusual error for
certain combinations of response subparameters (since 16.36 only).

SEAkeep /BILGEKEEL no longer traps an error when component names in the
geometry file do not include a side extension (since 16.46 only).

DISPLAY STATUS /SYNC repetition was sometimes spawning a bizarro duplicate CG
window on very busy systems (requires updated CG.EXE).

Version 17.00B

ENTER PM command COMMENT without any text was not attaching a blank line;
instead it was showing existing comments, which are now shown by "COMMENT ?"
(since 12.00 only; requires updated PM.EXE).

Version 17.00C

SEAkeep /BILGEKEEL now supports up to 20 appendage components.

Version 17.00D

TS /FORMAT:1 report was sometimes omitting the maximum sounding level row.

SEAkeep /BILGEKEEL now respects the shift in the seakeeping origin when
the /COUPLE parameter is used concurrently (since 16.70 only).

Version 17.00E

TEMPLATE /POS:SAME was not preserving screen position when redefining an
existing template dialog.

DISPLAY STATUS /SYNC repetition was made more reliable on very busy systems.

Version 17.02

SEAkeep /ROLLTANK:part[\component],... parameter was added to support
geometrically derived roll tanks.  A new Tank Dynamics table is automatically
included in the seakeeping report to list roll tank characteristics.

SEAkeep /DATA:TAnks writes tank moments and phase angles to a comma-delimited
data file TANKS.DAT in the current directory.

ENTER PM statement DAMPING = f defines a tank's Damping Factor (or set
negative to restore default 0.1 damping), aka the "damping coefficient" or
"decay coefficient" calculated as f = b / (2 * SQRT(c * a)) where b is the
dimensional damping, c is the stiffness, and a is the mass.  Note a damping
factor of <1 is considered "under-damped", a factor of =1 is "critically
damped", and a factor of >1 is "over-damped".  Default value 0.1 is
recommended for smooth-wall tanks, but should be increased for tanks with
extra damping due to structure, coatings, or baffles.

STATUS MOMENT and STATUS INERTIA:POINT were not always reflecting tanks
emptied since the last SOLVE.

STATUS MOMENT was showing incorrect values for WDF type tanks.

Version 17.02A

SET PARSE "substring" "text" operator was added to extract all characters
before any first occurrence of the substring item found inside the text item,
or all its text if not found.  Thus SET X=PARSE "TL" "TITLE" sets X to "TI".

DIVISION /WING:b1,... and /HBHD:v1,... parameters now support up to 6 values
(increased from 3 for wing breadths and 2 for horizontal bulkhead heights).

DISPLAY STATUS PLAN view was not showing any fuel portion of WDF type tanks
extending beyond the lower sea water portion (requires updated CG.EXE).

READ was sometimes trapping a run-time error when certain non-ASCII UTF-8
characters appeared in a geometry file (since 16.90 only).

GROUP command was not enforcing for the first tank the documented requirement
that all tanks in a group must be intact.

Version 17.02B

FSMFLOOR maximum floor value was raised for medium-large vessels.

Version 17.04

SEAkeep DATA datafile [/HYFO:forcingfile] [/dataparams] was added to
start seakeeping in data mode, accepting input from the specified data file,
respecting * wildcards to accommodate multiple cases.  Data mode prevents
numerical solving for the current condition, instead using external RAO data
to compute responses and statistics in the given seaway.  However if the /HYFO
parameter is present, data mode uses hydrodynamic (instead of RAO) data along
with the specified forcing data, preventing numerical solving for hydrodynamic
forces, but still solving the equation of motion.  One or more of the following
slash parameters can also be included: /SAMPle, /CONFidence, /PERiod,
/CRTpt, /SHW, /MSI, /TIME, /DATA, /RESPonse, /NOPlot, /[CASE]SUM, /POLAR,
/MIRror, /GNunit, /RELative.

SEAkeep /DATA[:[datadir\]datalist] now supports an optional data directory
subparameter to specify the subdirectory or absolute path for creation of
data files; the default is the current directory.

SEA /DATA data files now include the number of wave samples in the file
header line.

SEA /DATA:REsponse no longer includes redundant "Critical Point Motions"
subtitle lines.

SEAkeep stiffness coefficients are now computed using waterplane inertias for
the overall vessel condition and not just for the hull component specified by
the /HULL parameter.

WINERTL, WINERTT, and WINERTLT system variables were added to return
the overall waterplane longitudinal, transverse, and product of inertia
through the Center of Flotation.

Version 17.04A

BML system variable (as well as BML and GML reported by GHS and HS commands)
was giving incorrect values at substantial trim when displacer components have
non-zero longitudinal translation vector shifts.

TWPA, TLCF, and TTCF system variables were not returning correct values for
frozen tanks.

DISPLAY STATUS PLAN@WPL[:BE] view was not showing critical points (requires
updated CG.EXE).

Version 17.04B

ENTER PM command RENDER was trapping a run-time error on a new installation
(since 17.00E only; requires updated PM.EXE).

Version 17.06

TCF and TTCF system variables, along with TCFs shown by STATUS WPL
and COMP commands, now give transverse Center of Floation using the standard
ship coordinate system (instead of a modified waterplane coordinate system).

VCF and TVCF system variables were added to return the vertical location
in ship coordinates for the waterplane or selected part Center of Flotation.
TWPA, TLCF, TTCF, and TVCF may be used for displacer parts as well as tanks.

STATUS WPL /VCF parameter was added to include Vertical Center of Flotation,
replacing the BML column.

COMP /FORM added Vertical Center of Area to its waterplane information.

SEAkeep was computing incorrect stiffness coefficients when /COUPLE was used
(since 17.04 only).

SEAkeep DATA now allows specifying data files outside the current directory.

SEAkeep DATA improved support for multiple data files using the * wildcard,
which only matches cardinal case numbers.

SEAkeep DATA importing of RAO data now requires only one of Period, Freq,
or LWL/WvLen fields to be given, allowing * for unknown data fields.

SEAkeep DATA /HYFO was trapping an error when viscous damping data was
included (since 17.04 only).

SEAkeep DATA was trapping an unusual memory deallocation error (since 17.04

Version 17.06A

Load Editor improved data entry error handling by aborting data entry when
the Esc key is pressed (instead of offering to exit Load Editor).  When the
error was due to a missing suffix, entering an appropriate suffix now appends
the suffix to the previously entered number instead of overwriting it.

DISPLAY STATUS PROFILE:BE was incorrectly showing frozen tank waterplanes
and was not always showing critical points (requires updated CG.EXE).

SEAkeep was returning incorrect results for even numbered sequential runs
when not using the /BOX parameter (since 16.90 only).

Version 17.06B

SEAkeep was trapping a memory deallocation error for certain geometry files
(since 17.06A only).

SEAkeep was trapping a run-time error when the first station of the hull
component had only one point.

Version 17.08

CUSTOM (GHSERIAL) added Modbus extensions for holding register addresses
up from 10000 to the 16-bit limit, 32-bit integer data using register pairs
instead of 16-bit cardinal by setting new $DATAPLUS parameter to 1, 32-bit
floating-point data by setting $FLOATING to 1, and little-endian data instead
of default big-endian by setting $LITTLEND to 1 (requires updated GHSERIAL.DLL).

SEAkeep /BILGEKEEL was not finding certain appendage component names
(since 17.02 only).

SEAkeep DATA mode now supports /BILGEKEEL parameter.

SEAkeep DATA mode was polar-plotting multiple speed results incorrectly
(since 17.06 only).

Version 17.08A

MAXVCG without /FIRSTMAX was not always looking to the end of the angle list
for even higher RA beyond the first-encountered maximum righting arm angle
(since 14.34A only).

RA was sometimes prematurely terminating before finding RA0 limit angles
in cases of very short angle lists that end before EQU0 is reached, which
can lead to spurious maximum VCG failures.

WAVE (SPEctra) BR ITTC form now correctly uses modal (peak) period input.

Version 17.10

CUSTOM (GHSERIAL) added Modbus support for large $MODPLUS parameter values,
such as 400001 to convert extended holding register address IDs to 16-bit
protocol addresses used for communication (requires updated GHSERIAL.DLL).

CUSTOM (GHSERIAL) START ignores any configuration line starting with $$,
which may be used for comments or to disable $ parameter lines.

SEAkeep DATA was trapping an invalid location error when using RAO data
input (since 17.08 only).

VIEW was occasionally showing spurious duplicate lines during scrolling
(since 16.96 only; requires updated GHSVIEW.EXE).

Version 17.10A

WAVE (SPEctra) improved variance sampling logic to deal with very low energy

Version 17.10B

ROLL /S [steepness @ period],... parameter was added to specify an arbitrary
wave steepness factor function dependent on roll period, linearly interpolated
with no extrapolation beyond the ends, instead of the default formula for s
given in HELP ROLL.  If no function follows /S, then the IMO Second Generation
Intact Stability Criteria table is used (which closely matches the default
formula but extends steepness below 0.035 down to 0.020).

ADD and WEIGHT parameter /BOX:length,width,height again includes inertia
from any longitudinal distribution for individual dimensions where * is given
(since 16.12 only).

Version 17.12

WEIGHT /GYRadius is no longer permitted without subparameters, so should be
replaced with specific gyradius values (such as its old meaning /GYR:GF,*,*).
The GF keyword in /GYR:lr,tr,vr approximates lr gyradius using 40% beam for
roll, and tr or vr using 25% length for pitch or yaw; LOA and WOA are taken
from the Geometry File as assigned by Part Maker, or else from the bounding
box for all parts.  When a longitudinal distribution is present, its inertia is
automatically calculated and used by default (absent /GYR and /BOX) or for
individual gyradii where * is given; since typical weight distributions do not
provide information for roll gyradius, a common method is to combine the 40%
beam estimate with pitch and roll values from the distrbution using /GYR:GF,*,*.

MESSAGE SEND ON ["filespec"] optional parameter was added to use the specified
file as the channel for sending commands between concurrent program sessions,
thereby allowing communication between different computers using a shared
network file.

TEMPLATE /REFRESH [:n] optional parameter was added to speed up refreshing
by only updating the nth field in the dialog.

TEMPLATE drop-down list controls now support "label":* for a disabled label
that appears normally in the drop-down list but cannot be selected.

EXIT macroname neglected to execute the named macro when done directly from
a Run File called by another macro.

VARIABLE /LIST[:pattern] now excludes system variables unless pattern starts
with ".." double periods, otherwise just showing matching user variables.
VARIABLE by itself in the global namespace still shows all system variables
followed by all user variables, but VARIABLE /LIST without a pattern now
shows only user variables.

SKCASES system variable was added to return the number of cases in the
last SEAKEEPING command run.

SEAkeep /BOX was sometimes trapping "Odd intersection at station 0." error
when used on long prismatic hull forms.

Version 17.12A

COMP /SECTIONS report replaced its Waterline Ctr column with TCtr and VCtr
columns to show the waterline center for each section in vessel coordinates
(requires updated RGSTYLE.DAT).

COMP /SECTIONS second plot with WAVE present includes a text line clarifying
that the plotted value is the sum of the "Baseline Depth + Wave Height" columns.

Version 17.12B

TEMPLATE /REFRESH was sometimes trapping a run-time error (since 17.12 only).

Version 17.14

RA /NOTIght parameter was added to completely ignore weathertight flood points.

Version 17.14A

MAXVCG and SOLVE MAXVCG commands support /NOTIght to ignore watertight points.

WRITE (LIMits) filespec writes all limit definitions to the specified file.

WRITE (Hmmt) filespec writes HMMT and TMMT functions to the specified file.

SEAkeep now traps "Hull component is above the free surface" if the specified
hull component is completely out of the water.

Version 17.14B

RA was not finding vanishing righting arm angle RA0 occuring between table
angles that terminated RA processing due to trim capsize.

WAVE maximum wave length increased to 88,000 feet for SEAKEEPING use.

Version 17.16

HMMT WIND /BAND is now more precise for non-zero AXIS and substantial TRIM.

RA and SOLVE /FSM, /TRUEFSM, and /EXTRAFSM now trap an error if any
inapplicable tank type is present (such as DAMAGED, SPILLING, or BUBBLE).

NOTE ending in a linefeed (using ^CJ or ^H0A) can be used on the last line
of a page (where {LINELEFT}=0) to delay turning to the next page until
subsequent NOTE or report output (avoiding a final blank page if none).

WATER spgr restores default viscosity if no /V:viscosity parameter is present.

Version 17.18

MC file1.HUL file2.GF and MC file1.GF file2.HUL were added to import and
export MARIN's PRECAL offset files.  Default units of measurement are meters.
Note the /SCALE:-1,1,1 parameter can be used to invert longitudinal locations
from fore to aft (requires updated MC.EXE).

MC file1.PLN file2.GF and MC file1.GF file2.PLN were added to import and
export ABS's NLOAD3D offset files.  Default units of measurement are meters.

Version 17.20

HMMT TANK /VARYTRIM parameter was added to solve trim for each angle instead
of keeping trim constant.

RA and SOLVE /EXTRAFSM no longer trap for inapplicable tanks (since 17.16 only).

Version 17.22

PROPulsor [(n)] diameter, l, t, v [/POWer:p] [/BP:pull] [/S:sf] [/H:ht]
[/THRust:t0[,t1[,t2[,t3]]]] [/TD:tdf] [/WF:wf] [/ACcess] commmand was added to
define the nth propulsor by specifying its diameter, location, and associated
characteristics; if (n) is missing, the first available unassigned propulsor
number is used.  However if /ACCESS is present, all other parameters except (n)
are variable names used to access the corresponding information; asterisks can
placehold for any unneeded names.  Other optional parameters:

PROP /POWER:p specifies the propulsor power in horsepower (hp) for English
units or kilowatts (kW) for metric units.

PROP /BP:bp specifies the propulsor bollard pull in current weight units.

PROP /S:sf specifies the fraction of the projected propulsor circle area that
would be intercepted by the rudder turned 45 degrees from centerline.

PROP /H:ht specifies the vertical distance from the propulsor shaft centerline
at the rudder to the towing bitt, in current length units.

PROP /THRUST:t0[,t1[,t2,[t3]] specifies curve coefficients to compute thrust
from a 3rd order polynomial function of advance ratio J, scaled with respect
to other propulsor characteristics.  All coefficients default to zero.

PROP /TD:tdf specifies the propulsor's thrust deduction factor, which must be
positive; the default is 0.1.

PROP /WF:wf specifies the propulsor's wake fraction, in the range -1<=wf<=1;
the default is 0.1.

PROPulsor [(n)] OFF command was added to delete the nth propulsor, or all
propulsors if no number is given.

PROPulsor [REPort] [/BRief] command was added to display all propulsors to
the screen and also to the current report file if REPORT is given.  Optional
/BRIEF parameter reduces display information to a single line per propulsor.

SEAkeep improved wave spectra plot precision for low energy spectra.

SEAkeep fixed several minor memory leaks related to file/directory handling,
multithreading, and geometry deallocation.

SEAkeep now erases instead of recycling old SK data files when successively
run in order to work around a known Recycle Bin bug under Windows 7 and Vista.

SEAkeep now traps "Too small gyradius" errors for near-zero gyradii values.

Copyright (C) 2020 Creative Systems, Inc.