GHS Version 19.00 Update
New features, changes, and bug fixes since version 18.50
=========== SUMMARY OF TOP NEW FEATURES =========
Condition Graphics (DISPLAY STATUS) has greatly expanded its support for
rendering three-dimensional surface views, which now can be written to
report files as seen from any camera angle.
CG also added an interactive WIND view that colors wind-pressured panels
distinctly from shielded panels. This ties in with a new HMMT WIND /PANEL
method to compute wind heeling moments cognizant of 3D downwind shielding.
=========== MAJOR NEW FEATURES =========
New Condition Graphics (CG) 3D and WIND and Reporting Features
DISPLAY STATUS 3D [:WIRE] view was added to display the hull and sails
in a three-dimensional rendered view that may be rotated, zoomed, or panned,
starting parallel to the waterplane same as PROFILE:3D[:WIRE] view.
DISPLAY STATUS WIND was added to display a wind-focused 3D view where surface
panels which are active in a preceding wind calculation are colored red and
surface panels which are shielded are colored blue.
DISPLAY STATUS 3D|WIND @azimuth [@elevation] locations were added to specify
the initial 3D view angles in degrees. Azimuth angle respects the same
convention as the AXIS command and {AXIS} system variable, so 0 degrees looks
starboard (bow on the left), 90 degrees looks aft from the bow, 180 degrees
looks port (bow on the right), and 270 degrees looks forward from the stern.
Default azimuth is 180 for DI STATUS 3D to match the regular PROFILE view,
but default azimuth is 0 for DI STATUS WIND to look along the wind direction.
Optional elevation angle defaults to zero, with 90 degrees looking downward
onto the deck, and -90 degrees looking upward from below.
DISPLAY STATUS 3D|WIND :AXES subparameter was added to include longitudinal,
transverse, and vertical axes in the 3D or WIND view.
DISPLAY STATUS 3D rendered views are now written to any open report file in
the same way as 2D views. This applies to 3D and WIND views, as well as
PROFILE and PLAN views that include the :3D or :WIRE subparameter or /3D.
DISPLAY STATUS /QUIT:SYNC subparameter was added to close any synchronized
Condition Graphics window, instead of all CG windows as DI STATUS /QUIT does.
CHANGE [(partlist)] /Color:n may now be used for non-tank parts to change the
color of part shapes in Condition Graphics 3D, WAVE, and PROFILE:OUTBOARD views,
as well as non-origin reference points in Load Editor and command area graphs.
New HMMT Command Features
HMMT WIND /PANEL[:d | FULL] was added as a new fully-3D method to compute
wind heeling moments using surfaces from Part Maker. Optional subparameter d
specifies the shielding distance (or FULL for infinite, defaulting to zero)
within which downwind surface panels are shielded by upwind surface panels.
HMMT WIND /BAND area calculations were made more precise at the waterline and
the outermost bands, especially for larger band widths.
HMMT REPORT /SHOWFixed parameter was added to report all fixed weight items
contributing wind plane area heeling via the ADD /LPA parameter, instead of
combining them into a single "Fixed Weights" line.
New Drag & Drop File Support
Run files, geometry files, and print files can be dragged & dropped into the
command window to run, read, and preview them.
New LIMIT and Righting Arm (RA) Improvements
RA /LIM now treats DI or FB limit angles as FAIL instead of UNDEF when the
freeboard is initially negative, putting a note in the report that "Deck edge
already immersed at the starting angle".
RA with MB active now settles back gradually to mutual equilibrium upon
completion without abrupt shifts in heel that can cause solving problems.
New Advanced Features (AF)
DAMSTAB manual layer assignments were previously enforced strictly based
on layer number. This could be incorrect in multi-division cases where wings
from different divisions increase the layer indexes. DAMSTAB now compares
the wing distance associated with the assigned layer against the distance of
the damage extent.
New PRINT, Plotting, and REPORT Improvements
PRINT image quality was dramatically improved for NOTE {%IMAGE("file")%} and
footer logos output to monochrome printers or using /PREVIEW "Color off" mode.
LS and TORQUE /PLOT: SCALE10 subparameter was added to use powers of 10
for all plot curve scale factors.
MESSAGE PLOTSTART /SCALE10 parameter was added to use powers of 10 for
scale factors that replace "%" characters in MESSAGE PLOTLABEL (potentially
increasing scales and shortening heights for certain curves).
WEIGHT REPORT and LS /CURVE with only WEIGHT and/or BUOYANCY curves
attempt to plot using unary or integer scale factors whenever possible.
MESSAGE REPSTART custom report table lines now allow numbers to be separated
from the next column by a single space when appearing after the first column
(previously allowed only when the custom table had column header lines).
NOTE braced color numbers preceded by a plus sign (like {+5} for magenta)
apply the color to succeeding text in print output as well as on the screen.
This is less complicated than using the special variable form {%COLOR(n)%}
and differs by not continuing its color {n} to subsequent NOTE lines.
New Part Maker (PM) and RENDER Command Features
ENTER PM command SURFACE (list) OFF parameter was added to remove any existing
surface models for listed parts or components.
RENDER and SE Visualize commands were creating temporary surface models for
all rendered parts, but now any existing surfaces are used instead. Note that
SURFACE (*) OFF can be done first in PM to force rendering updated surfaces,
otherwise all commands now honor and preserve any existing surfaces.
New System Variables and Other VARIABLE Features
FBLOC and FB0LOC system variables were added to return longitudinal locations
of minimum freeboard FREEBD and FREEBD0, respectively with and without margins.
======= Miscellaneous New Features =======
CRTPT /FLood:fvar /TAnk:tvar /INside:ivar /ACcess parameters were added to
access flood status (FL, TI, or NO), linked tank name, and inside tank name.
CRTPT increased maximum Critical Point number from 400 to 600.
SAVE and WRITE (SAVE) output file name now has default extension ".SAV";
otherwise the default extension for WRITE output files names is ".RF".
STATUS LPLANE now shows "LPA*SF" instead of "LPA" in report column headers
when in SPECIAL HMLPA mode.
TYPE INtact /FLDeffect parameter was added to have FLOODED type effects
for disabling critical points with CRTPT /TANK and /INSIDE parameters and
for overriding permeability with PERM FLOOD in intermediate flooding stages.
WIND (PRESSURE) p @ height,... increased maximum height from 199m to 999m.
======= Bug Fixes =======
DISPLAY STATUS /3D improved normal vector logic for highly-twisted and flat
end surface panels.
DISPLAY STATUS /3D no longer shows the waterplane if the depth is undefined,
fixed z-fighting between waterplane and ship geometry for zero depth in most
cases, and improved frustrum scaling for larger models and view centering
for profile and plan views.
DISPLAY STATUS /3D was not always correctly positioning components shifted
by translation vectors.
DISPLAY STATUS /3D was not properly respecting AXIS command settings.
DISPLAY STATUS /3D was sometimes trapping a run-time error when mixed with
non-3D views.
DISPLAY STATUS and DISPLAY PRINT /YESCRTPT were not guaranteeing
views always scaled large enough to fit any offboard critical points.
DISPLAY STATUS now relocates Critical Point labels if necessary to avoid being
truncated off the left or right side of vessel views.
DISPLAY STATUS was sometimes overflowing the right side of the legend box
when showing Critical Points.
DRAFT /PRINT was restored to use regular NOTE-compatible output even in fancy
reports, optionally using proportional font if MESSAGE REPFONT is in effect,
thereby no longer skipping an extra line between DRAFTs (since 18.14 only).
ENTER PM command CHOP was sometimes failing for components shifted by
longitudinal translation vectors.
ENTER PM command SURFACE was inverting normal vectors in rare instances.
ENTER PM command SURFACE and implicit surfacing improved panel shading
for DISPLAY STATUS 3D|WIND.
ENTER PM commands CHOP, REVERSE, and SCALE were unnecessarily discarding
deck edges and other markings (since 16.90 only).
ENTER PM statement FIT for catamaran shapes risked rare run-time errors
(since 17.86 only).
ENTER PM statement FIT was extending beyond the fitted to component and losing
stations in rare cases, especially with cylinders.
ENTER PM statement JOIN for adjacent components with longitudinal shape shifts
was sometimes mislocating a station at the shared location (since 14.84 only).
ENTER PM statements SHELL and FIT create more consistent inner shells for
centerline catamaran-like bottoms and no longer risk distorting non-centerline
shapes (since 16.42 only).
HMMT REPORT was corrected to show the precise same HCF for Fixed Weights as
shown by STATUS LPLANE:BRIEF.
HMMT REPORT was not reporting fixed weight items contributing wind plane area
while in HMMT /BAND /COMBINE mode, instead including them in the Combined total
(except was double-counting fixed weight area when /NOSHIELD was also active).
LIMIT RAR AT angle was behaving like LIMIT RAR BETWEEN EQU AND angle
instead of measuring the precise Righting Arm Ratio at the given angle.
LIMIT RESIDUAL RATIO TO angle1 OR angle2 was inconsistently dividing
the residual area at RA0 by the absolute area at angle2 when angle1>=RA0
and angle2<angle1; note this limit behaved correctly with these angles swapped.
Load Editor footer was not showing "Total SEA" contents for non-FLOODED tanks
containing SEA water.
LS solving was not always ensuring the deflection curve returned to precisely
zero at both ends, in extreme cases sometimes writing invalid zero length
for the DEFLECT command in Save Files.
LS tables were not showing buoyancy discontinuities due to added or deducted
components using multiple lines at the same location, now correctly showing
them the same as if these components had been JOINed together in Part Maker.
LS tables were sometimes including more than two consecutive density lines
at the same location; any inner line(s) had negligible effect on integrated
results but could cause spurious vertical spikes to appear on plot curves,
so these inner density lines are now omitted.
MAXVCG was not always returning maximum valid VCG found after terminating
due to excessive iterations.
MAXVCG was not behaving dependably when RESERVE RATIO limit was present.
MAXVCG was sometimes taking excessive time returning non-optimal maximum VCG
results after solving for a VCG whose angles did not include equilibrium with
sufficient righting arm.
PERM RESTORE was not working after a permeability change (since 18.42A only).
RA /LIM for LIMIT RESIDUAL RATIO sometimes randomly showed FAIL margin
due to minuscule positive righting arm at the first angle (since 18.38 only).
RA /LIM was unnecessarily failing LIMITs connected TO a third DI or FB angle
(where the greater of the second and third angles should be controlling) when
the freeboard is initially negative (since 11.88A only).
READ was sometimes hanging up to 10 seconds if a synchronized Condition Graphics
window had been manually closed but another CG window was still active.
RENDER command was sometimes trapping a run-time error with flooded, frozen,
or spilling tanks present.
REPORT /BOX:COLOR fancy reports CC, GROUP, HMMT, HS, LOAD STATUS, etc.
were showing any final "Note:" lines in blue instead of standard black color.
SEAkeep /BOX was sometimes trapping an invalid location error when used on
geometry files with many closely spaced stations.
SEAkeep /CONF was returning the variance instead of the extreme value
amplitude in the statistics and summary tables when position and velocity
moments (m0 and m2) were both very close to zero.
SEAkeep /ROLLTANK now only includes tanks with fill levels above 1% and below
90%, as beyond these values the underlying theory is invalid. Note that for
low fill levels, the validity should still be questioned.
SEAkeep /ROLLTANK was sometimes yielding undefined results for tanks which are
not strongly U-shaped and have low fill levels.
SEAkeep was sometimes trapping a run-time error when /ROLLTANK was not present
following previous SEAkeep commands that included /ROLLTANK.
SEAkeep wave spectrum report no longer shows Significant Wave Height,
only showing Spectrum Variance as this does not make assumptions about
narrow-bandedness and is more informative for sampling convergence.
SOLVE MAXVCG /FSM was setting an internal upper boundary for VCG that sometimes
prevented convergence to the VCG that results in zero limit margin.
SOLVE found a spurious solution with excessive RAT in rare ground point cases.
SOLVE starting extremely close to equilibrium was sometimes wandering off
to find a more distant heel equilbrium angle.
STATUS FIXED without any subparameters was sometimes showing LIGHT SHIP+
with incorrect centers of gravity when zero weight items whose descriptions
begin with "+" or "*+" are present (since 16.58B only).
TORQUE density curve integration was not correct for sloped segments. These
could be caused by tank loads where the sectional area of adjacent stations
differs or by non-uniform distributed weights. The issue was mostly masked
by the linear correction factor which is applied as a function of longitudinal
location to ensure that the torque is zero at the vessel ends.
VARIABLE replacement involving nested or multiple double braces around variables
was not always giving correct delayed replacement results.
Previous Version Update Features
Copyright (C) 2023
Creative Systems, Inc.