GHS Version Update History from Version 17.00 to 17.50

GHS Version Update History since Version 17.50

Version 17.50A

MAXVCG risked looping endlessly in rare capsize cases (since 17.14 only).

HMMT REPORT for band-method wind risked trapping a run-time error in rare cases.

TEMPLATE field VARIABLE @"filespec" for relative filespecs outside the
current directory failed to look in the library, program, and path directories
as done for static image @"filespec".

DISPLAY STATUS increased maximum number of list items from 1000 to 2000
(requires updated CG.EXE).

SEAkeep /BILGEKEEL was truncating very long appendage subparameter strings.

Version 17.50B

TEMPLATE field @"filespec" parameters support "^" prefix for library path
and "^^" for program directory in the same way as other commands.

TEMPLATE field CHECK and RADIO were sometimes truncating /BOLD text
on systems scaled to show larger text size for retina screens.

Version 17.52

WIND (PRessure) p1 @ h1, ..., pn @ hn risked run-time errors or wrong answers
when height h1=0 but pressure p1 significantly exceeds 0 (since 17.46 only).

Load Editor risked a rare run-time error when right-clicking a spilling or
bubble tank for load details.

Version 17.52A

ADD (n)|"description" /ACCESS added access to /GYRadius and /BOX information,
setting variables to empty if not assigned, "OFF" if no inertia, "*" to include
inertia from any longitudinal distribution, or else the numeric value.

SET operator POWER and braced expression operator "^" were giving inconsistent
results for negative base values, but now return the same correct result (which
is Undefined or an error for non-integral exponents).

Version 17.54

TEMPLATE /REFRESH now disables or enables any /Gray:varname dialog fields
to reflect the current values of their variables.

Version 17.56

TEMPLATE "label" /REFRESH:n resets a new label (space permitting) into the
top dialog's nth field if it is a text, box, button, check, or radio field.

TEMPLATE /Color:c /Backcolor:b /REFRESH:n resets foreground and
background color of the top dialog's nth field if it is a text, box, input, or
already-colored button field.

MC infile.GF FIXUP|outfile.GF now supports /SCALE and /SHIFT parameters
(requires updated MC.EXE).

MC infile.GF outfile.HUL was not correctly targeting output station range
from 0 (AP) to 20 (FP) relative to Length Between Perpendiculars; now PRECAL
conversions can get FP and AP from /LOCrange:fp,ap parameter (since 17.18 only).

Version 17.56A

PRINT ^[^]file was failing to find the print file in the library path or
program directory.

Version 17.56B

END command inside a macro was not working reliably, but now terminates the
active run file along with any macros it executed; if no run file was active
(or if it started a live Load Editor session), then nothing is terminated.

Version 17.56C

MACRO /FUNCTION evaluation involving strings containing quote marks risked
trapping a run-time error.

RA limit evaluation for ANG FROM EQU TO FLD with a tight point just barely
submerged at EQU now fails showing -0.00 attained value instead of sometimes
passing with 0.00 or LARGE attained value.

Version 17.58

RA limit evaluation for ANG FROM EQU TO FLD > value with non-zero limit value
was not always ignoring tight points just barely submerged as EQU.

Version 17.60

RA limit evaluation for AREA and other non-ANGLE limits involving FLD angle
normally attain zero for any flooding at EQU, but were inconsistently giving
non-zero results for a tiny range of near-zero tight point submersion depths.

RA limit evaluation for ANG FROM EQU TO FLD with a tight point just submerged
at EQU was still not always working correctly when a third angle was present
(since 17.56C only).

ADD, CRTPT, REFPT, PROP, and WEIGHT syntax *+n or *-n was trapping
an error when offsetting the current center coordinate by zero.

TEMPLATE static text fields alone on a line or at the end of a template were
sometimes misformatted when used with /RRight or /RCenter parameters.

DYNSTAB /RES was incorrectly converting resistance force coefficient units.

DYNSTAB PL /LEVEL:2 was incorrectly computing the C2 indices, not showing
the interpolated LPLi value in the Long Term Vulnerability Index table, and
sometimes yielding large angles of vanishing stability in waves.

DYNSTAB SB /LEVEL:2 was omitting the first wave steepness increment leading to
rare reductions in C index and sometimes computing an incorrect critical RPM.

Version 17.62

SOLVE TRIM and SOLVE HEEL solving was improved to prevent imprecise solutions
in rare cases.

SOLVE MAXVCG was not always selecting port righting arm angles when intially
listing to port if a starboard side equilibrium also existed.

LOAD EDIT /BUTTON template multiple .macro fields sharing the same button
via right-click selection have needed to be separated by slash parameters
since version 15.94, which now can be done using no-op slash parameter "/".

ENTER, HELP, SHELL, etc. commands were sometimes trapping "File not found"
when the GHS program directory path contained a space and was located on a
non-system drive that does not support short file naming.

ENTER PM statement FIT component b,s,t was sometimes trapping a run-time error
when the bottom, side, and top insulation was larger than the target component
(requires updated PM.EXE).

Version 17.64

TEMPLATE dialog /APPLY fields risked trapping a run-time error when popping
up an "Entry error" message for an invalid value in a different field.

Version 17.66

GROUND REPORT risked trapping a run-time when fixed weight is negative.

READ (DATA) supports any size data lines instead of truncating after 10,000

DYNSTAB SB /LEVEL:2 improved accuracy and solution time in most cases.

DYNSTAB SB /LEVEL:2 was sometimes trapping "Critical speed not found" in
certain trivial cases.

Version 17.66A

DYNSTAB PL /LEVEL:2 was sometimes yielding zero angle of vanishing stability
when the range of stability was greater than 90 degrees.

DYNSTAB PL /LEVEL:2 now checks both port and starboard sides for range of
stability if required.

Version 17.68

RA /LIM was sometimes using the wrong limit area for the downflooding angle
(and skipping the table line for that FLD angle) when the freeboard immersion
angle is reached first and both occur between the same two listed heel angles.

MB interactions within the RAH command were improved, no longer sometimes
showing incorrect displacement on its second table line with MB active.

SOLVE REDO was added to force mutual resolving in cases of small changes
within tolerance that escape MB's usual automatic detection after any vessel
or waterplane changes.

DISPLAY STATUS for coincident tanks was showing the lower tank color above the
higher tank in plan view and failing to show showing the higher tank using any
color override assigned to it by the CHANGE or CONTENTS /COLOR commands
(requires updated CG.EXE).

DISPLAY STATUS was sometimes showing incorrect deck edge markings after
being resized or repeated).

ENTER PM statement MARGIN was not preserving any existing deck edge, instead
always recreating the deck edge contrary to documentation (since 16.46 only;
requires updated PM.EXE).

ENTER PM command MARK SHOW failed to cause marks to be included in the
Geometry File, but now this happens if KNUCKLE and SHOW parameters appears
together (which is also the default if no parameters appear after MARK).

Version 17.70

EXTEND HOPPER reference points snap to their lowest linked critical point
per CRTPT /TANK and /INSIDE parameters (requires updated GHSX.EXE).

DISPLAY STATUS no longer shows critical points using highlight colors when
they have been disabled according to CRTPT /TANK and /INSIDE parameter rules
(requires updated CG.EXE).

ENTER PM command DISPLAY and SE no longer risk throwing away changes by
sometimes restoring any original line code markings from the Geometry File
(requires updated PM.EXE).

Version 17.72

RA /GIVENangles parameter was added to use the given angle list verbatim
instead of extending or interpolating any additional angles, which can be
especially useful for smoother and speedier MB interaction solving.

MAXVCG /NOWARN parameter was added to omit placing an asterisk next to any
Max VCG value that could not go higher without capsizing despite positive limit
margin values along with the report footer explanation "Capsized at Max".

AXIS MINE:energy was giving inconsistent results unless trim is fixed
(since 16.12A only).

READ snaps to zero instead of trapping centerline components having tiny
transverse offsets less than 0.01' negative (requires updated SE.EXE).

PP command TEXT uses /FONT:name (default Arial) instead of Courier New fixed
font if wsize parameter is negative (with -wsize used for character width in
inches).  TEXT command added parameters for justification (0=default left
from center of first character, 1=left, 2=center, 3=right) and font style
(0=normal, +1=bold, +2=italic, +3=underline; required updated PP.EXE).

HELP PP added online help for the Print/Plot utility and its input file format.

Version 17.72A

DI STATUS was sometimes distorting shapes having single-point stations
(since 17.70 only; requires updated CG.EXE).

Version 17.74

TEMPLATE /REFRESH:CANCEL subparameter was added to cancel the top dialog
box as if its "Cancel" button or the Esc key were pressed.  This can be useful
for popping up temporary warning messages or clearing out dialog boxes from
another GHS session using MESSAGE SEND control.

Version 17.74A

TEMPLATE dialog cancellation was sometimes trapping a run-time error (since
17.74 only).

Version 17.76

COPY file /PASSWORD:"pw" uncodes a /CODEd file if it contains "`PASSWORD pw"
among initial comment lines starting with the accent (`) character, checking
until the first "*" line for ".GF*" extension files.

Version 17.78

MACRO name /FUNction value assignment using name:=value no longer fails
if a VARIABLE having the same name already exists; now the function name
takes precedence over the variable name during a function's definition when
assigning name:=value, the same as was already happening for SET name=value.

COPY file /PASSWORD without a subparameter uncodes a /CODEd file if it contains
"`CUSTOMER code" among initial accented (`) comment lines, where code must match
the licensed customer code.

Version 17.80

ENTER PM statement SHELL was sometimes inconsistently applying uniform shell
thickness at the first point of non-centerline shapes (requires updated PM.EXE).

READ (DATA) file /REPLACE:"{","" and similar uses of quoted "{" were not
behaving as intended.  Note that manipulation of strings containing "{" is
inherently dicey due to {...} usage for variable retrieval and expression
evaluation, so READ (DATA) /REPLACE supports specification by ASCII value as
a safer way to refer to problematic characters (since 17.36 only).

Version 17.82

SEAkeep /BOX was trapping an invalid location error in rare instances.

COPY /APPEND was trapping an error while using GLM_MAKER.WIZ (since 17.76 only).

Version 17.82A

RA /LIM for LIMIT ANGLE FROM EQU TO FLD > 0 was sometimes showing LARGE
for tight points immersing shortly after EQU (since 16.78B only).

RA /LIM for LIMIT ANGLE FROM EQU TO FLD OR TFLD > 0 was sometimes showing
the FLD not the TFLD location for tight points immersing shortly after EQU.

Version 17.84

PRINT PREVIEW reorganized right-click menu options (requires updated PP.EXE).

ENTER PM statement SHELL was occasionally producing slightly different results
for identical stations (requires updated PM.EXE).

Version 17.84A

ENTER PMX now traps "Missing operator" instead of a stack overflow error
when something other than an operator follows {variable} replacement (requires
updated PMX.EXE).

ENTER PM statement SHELL was still occasionally producing slightly different
results for identical stations (since 17.84 only; requires updated PM.EXE).

Version 17.84B

WIND (PRESSURE) p was interpolating linearly from p@1 down to 0@0.  This could
cause slightly reduced wind heeling moments, magnified with metric units.  The
effect should generally be zero using the lateral plane method and less than 5%
using the HMMT /BAND method for wind area calculation (since 17.46 only).

Load Editor button Weights right-click triangle mark (appearing when ADD PREFIX
categories have been defined) was sometimes invisible after pressing the button
on certain operating systems.

Version 17.86

ENTER PM statement SHELL was sometimes creating jagged hooks between the
bottom, side, and top when applying non-uniform negative shell thickness, but
now keeps a smooth shape around shell transitions (requires updated PM.EXE).

Load Editor supports pressing the Delete key to quickly clear numeric fields,
which is especially handy before entering negative numbers that otherwise
would be subtracted from current field values.

DISPLAY STATUS printing was turning the page after Condition Graphics output
instead of allowing subsequent NOTE or report output on the same page when its
CG output could not fit on the previous page, so had to skip to the next one;
now subsequent output to any remainining space on the current page should be
consistently allowed, regardless of whether the PAGE command was issued first
(requires updated CG.EXE).

Version 17.86A

PAGE /PREFIX:code increased maximum code size from 2 to 3 characters; note
the maximum page number for 3 character codes is reduced from 99999 to 9999
(requires updated PM.EXE and CG.EXE).

SEAkeep was incorrectly labeling the final yaw RAO/Phase plot in a case with
the next case heading if not including subsequent tables in a multi-case
report (since 17.48 only).

Version 17.88

VARIABLE braced expression evaluation now gives precedence to unary Minus "-"
over the Exponent "^" operator, otherwise {SQRT(X^2+Y^2)} would trap or give
unintended results when variables are negative.

TEMPLATE dialogs were sometimes trapping an error when resizing themselves
(since 17.74 only).

Version 17.88A

DAMSTAB command (and DAMSTAB2 wizard) now considers only the portion of
each tank that lies within the longitudinal extents of the current division list
when testing whether a reduced damage height could produce a worse case.

Version 17.88B

MAXVCG was sometimes internally filling extra angles into the ANGLE list to
help maximum VCG solving for a particular trim and displacement line, but then
these extra angles were incorrectly being kept for all future lines during the
command's execution, occasionally leading to bad results particularly for
maximum righting arm limits.

Version 17.90

MAXVCG solving was improved, especially with the /TOL parameter present,
to prevent maximum VCG results reporting large negative limit margins, to keep
from getting stuck at tiny VCG ranges showing both positive and negative limit
margins but nothing close to zero, and to speed up processing by recognizing
early successful solutions not needing further improvement.

RA table "Flood Pt Height" column was sometimes not considering tight points
precisely at EQU0 with heeling moment present.

VARIABLE replacement {name:} using default 2 decimal places risked trapping
a run-time error in rare cases.

Version 17.92

Block comments were added to ignore everything between unquoted "{*" and "*}"
combinations, which can span multiple lines.  When block comments are nested,
inner "{* ... *}" blocks do not terminate the outermost block comment.

LS and TORQUE fixed rare table and plot irregularities in cases of extremely
close-spaced locations around curve discontinuities.

TEMPLATE /REFRESH was not always updatings fields with changed /Gray:varname
parameter (since 17.54 only).

Version 17.92A

LS omits duplicate table lines having the same location, weight, and buoyancy.

Version 17.92B

TEMPLATE field DIR risked trapping a run-time error in rare cases.

Version 17.92C

TYPE DAMAGED spilling mode was not being set correctly (since 17.74 only).

Version 17.92D

STATUS GHS appearing together with WEIGHT, DISPL, or WPL parameter no longer
ignores any subparameters provided with the latter parameters.

Version 17.94

READ or RUN entered alone from the keyboard with no PROJECT open now brings up
the File->Read geometry or File->Run menu dialog instead of trapping an error.

SEAkeep /SPREAD was sometimes reporting zero RAO values (despite returning
correct response statistics) for certain subheading values when using a
spreading data file (since 16.62 only).

Version 17.94A

ENTER PM statement ROTATE for CREATE command runs about 5 times faster than
earlier versions.  Note that ROTATE can be time-consuming because it requires
generating a rotated surface from the stations to use for cutting new sections
(requires updated PM.EXE).

ENTER PM statement SHAPE shapename risked trapping a run-time error when
accompanied in a CREATE command by statements like LOCUS, CYLINDER, SPHERE,
etc. that need to be merged with the reused shape.

Version 17.94B

ENTER PM statement SHAPE shapename risked trapping a run-time error when
accompanied in a CREATE command by statements like ENDS, INBOARD, SPONSON,
etc. that need to be merged with the reused shape, creating a new shape
as needed (requires updated PM.EXE).

ENTER PM statement ROTATE trim,heel,azimuth was incorrectly rotating azimuth
for solitary TOP, BOTTOM, ENDS, etc. boxes counter-clockwise, but now goes
clockwise to match rotation of SHAPEs taken from another component.  When acting
as bounding boxes for other items such as CYLINDERs, reused SHAPEs, etc., the
bounding box is no longer rotated along with the other items.

Version 17.96

FIXUP failed for file paths longer than 81 characters (requires updated MC.EXE).

ENTER PM command FILL and CREATE filling from SPACING sometimes caused
distortion when a station had a point added between the last and first points
of an adjoining station (requires updated PM.EXE).

ENTER PM command RENDER was sometimes failing when many SURFACE components
(since 16.26A only).

Version 17.98

DAMSTAB now creates damage cases of a lesser vertical extent using a box-shaped
damage extent with an increased bottom height instead of simply eliminating
tanks whose bounding dimensions fall below the increased bottom height being

ENTER PM command FILL and CREATE filling from SPACING was sometimes making
non-optimal intermediate stations when adding points (since 16.42 only; requires
updated PM.EXE).

Version 17.98A

SEA /BILGEKEEL was returning undefined values for appendages which connect to
hull sections which do not pierce the free-surface (since 17.44B only).

Version 17.98B

SEA /POLAR was including empty polar plots for derived responses (SHW, SLAM,
MSI, EMG) when the corresponding slash parameter was missing.

SEA /POLAR was mislabeling the penultimate series of polar plots with the final
speed case when analyzing multiple forward speeds.

SEA was trapping a "Failed to create file" error on runs preceded by SEA DATA
calls without the /HYFO parameter or by SEA DATA /HYFO:forcingfile calls with
incomplete forcing data.

Version 17.98C

DAMSTAB command no longer traps an error when run without a trace file (since
17.98 only).

Version 18.00

SPECIAL DLGSTYLE 1 enables flat button style for TEMPLATE dialogs in place
of default 3-dimensional button style.

Copyright (C) 2021 Creative Systems, Inc.