HGS PREMIUM DECEMBER 2024 (REVISION 2756)
Deprecate command
zones from arcview ascii grid
in favor of the commandsread zones from raster
andmap zones from raster
.Deprecate commands
zones from arcview
andzones from arcview for chosen elements
in favor of the commandread zones from shapefile for chosen elements
.Deprecate command
choose elements from arcview ascii thickness map
in favor of the new commandchoose elements by thickness from raster
.Update hgs2vtu:
Fix bug that causes the fields
ETPmEvap3D_pm
andETPmTranspire3D_pm
to be output even when they are disabled by the plot control file.Allow the user to turn off pressure head output via the plot control file.
New option
--time-series-netcdf
that causes hgs2vtu to convert HGS Tecplot ASCII time series files to NetCDF format. By default, time series output is written to a single file named prefixo.time_series.nc using a fixed size time dimension. Currently, the following HGS output files are converted by this option: water balance, soil balance, hydrograph, and observation point (see Appendix E in hydrosphere_ref.pdf).New option
--multi-file
that causes hgs2vtu to generate multiple files when converting HGS time series output files to NetCDF format (see Appendix E in hydrosphere_ref.pdf).New option
--unlimited-time
that causes hgs2vtu to generate NetCDF time series output with an unlimited time dimension (see Appendix E in hydrosphere_ref.pdf).
Refactor command
time varying lai from raster
by adding an input flag that determines if the raster files are checked for missing data. This option was added since checking each raster is potentially very time consuming (see hydrosphere_ref.pdf).Add optional raster band support to the commands:
time varying lai from raster
,time varying K by impedance factor via temperature raster
, andtime varying surface friction by temperature raster
(see hydrosphere_ref.pdf).Relax error checking in commands
choose zone number
orchoose zones list
to issue a warning instead of an error if a user provides a zone number that is out of range.Update the formatting of the HGS model summary provided at the end of the .eco file with the goal of simplifying the comparison between HGS models.
New command
newton residual 2-norm convergence criteria
that specifies a Newton iteration convergence tolerance with respect to the 2-norm of the Newton residual (see hydrosphere_ref.pdf).New command
print
that echoes a single line of text to the console and .eco file (see hydrosphere_ref.pdf).Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM NOVEMBER 2024 (REVISION 2744)
Fix bug in the runtime debug command
write krw file
that occurs when hydraulic conductivity is specified elementwise rather than by zone.Improve error checking and performance for commands
choose nodes polyline top sheet
andchoose nodes polyline by sheet
.Add element thickness (reported by the variable “Thickness”) as an output for the porous media domain to hsplot, hgs2vtu, and the command
mesh to tecplot
.Update hgs2vtu:
Fix bug that causes hgs2vtu to mistakenly treat certain files as output files, .e.g., prefixo.head_pm.XXXX.RegionalOutMapped.
When clipping the mesh results in an empty domain, simply ignore that domain instead of issuing an error.
New command
--verbose
that causes hgs2vtu to generate a log entry for each binary output file that gets converted. By default, only the current output time will be logged when processing binary output files (see Appendix E in hydrosphere_ref.pdf).
New commands
choose nodes polyline top sheet shp
andchoose nodes polyline by sheet shp
(see hydrosphere_ref.pdf).New commands
make observation points from shp
,make observation points by depth from shp
, andmake interpolated observation points by layer from shp
that read Point, PointZ, or PointM shape types from a shapefile and read the z-coordinate, depth, or layer name and observation point name from the associated .dbf file (see hydrosphere_ref.pdf).New commands
make observation point by sheet
andmake observation points by sheet
that define observation points based on xy-coordinates and a node sheet number (see hydrosphere_ref.pdf).New command
limit surface evaporation to percentage of PET
. When applying the PET boundary condition, surface evaporation at a node is limited by the value:percent_pet * PET_flux * node_area
based on the current ET zone (see hydrosphere_ref.pdf).New commands
flow solver relative convergence criteria
andtransport solver relative convergence criteria
that allow a relative convergence tolerance to be specified for the linear solver (see hydrosphere_ref.pdf).Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM OCTOBER 2024 (REVISION 2732)
Fix issue with the
new zone
command when applied to the dual continuum domain that causes HGS to modify the current set of chosen nodes unbeknownst to the user.Improve error checking for
flux nodal from outlet
boundary condition.Improve error checking when defining surface cutoff walls.
Add error check to hgs2vtu for duplicate variable names based on case-insensitive string comparison.
New boundary condition command
time varying scaling factor
in which the scaling factor is interpolated from a time-value table (see hydrosphere_ref.pdf).New command
elevation to file
that writes the nodal elevations for a specified 2-D node sheet to a user specified ASCII file (see hydrosphere_ref.pdf).Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM SEPTEMBER 2024 (REVISION 2724)
Fix bug in hsplot that arises when the user specified title in the grok file is empty.
Improve error checking of 2D mesh during mesh generation in grok.
Extend the boundary condition command
time-field data table from regional
to specified head boundary conditions defined for the overland flow domain. Nodal head values applied to the local model are mapped from overland flow domain head values in the regional model via interpolation (see hydrosphere_ref.pdf).Update command
report exchange flux for chosen nodes
(see hydrosphere_ref.pdf):Change its name to
report exchange for chosen nodes
, since the command is not actually reporting fluxes [L/T], but rather is reporting flow rates [L^3/T]. The original command name remains in use, but is marked as deprecated.If transport is active, generate mass exchange flow rate [M/T] output for the overland flow domain and write it to the Tecplot ASCII output file prefixo.mass_exchange_olf.label.species.dat, for each node selection (label) and solute (species).
New hgs2vtu command line option
--time-series-csv
that causes hgs2vtu to convert all HGS Tecplot ASCII timeseries output files, e.g., prefixo.water_balance.dat, to CSV files (see Appendix E in hydrosphere_ref.pdf). Conversion is done after hgs2vtu processes the binary output files.Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM AUGUST 2024 (REVISION 2718)
Fix issue with hydrographs that causes HGS to ignore flow contributions at a hydrograph node along connections to upstream nodes that belong to an adjacent, but different, hydrograph. As a result, flow at the adjacent downstream hydrograph is much lower then it should be.
Add hgs2vtu to the HGS installation (see Appendix E in hydrosphere_ref.pdf). Note that you should remove all previous installations of hgs2vtu prior to installing HGS.
Update hgs2vtu:
Redefine hgs2vtu version number in terms of HGS version number.
Fix bug reading fracture aperture from the prefixo.elements_frac file.
If the metadata file is missing when writing NetCDF output, generate a default metadata file.
Remove a trailing CR character when reading the model prefix from a batch.pfx file in Linux.
Log the hgs2vtu command line options passed by the user.
Log shapefile projection source and target CRS.
Improve performance reading binary files and writing output files.
Update the reservoir with spillway boundary condition by adding the option of whether or not to use interpolation to the commands
gate discharge table
andreservoir storage loss table
(see hydrosphere_ref.pdf).Add elemental layer and column number as optional outputs (controlled by plot control) to hsplot and hgs2vtu. This update is intended to simplify blanking by layer or column number with Tecplot.
Refactor GDAL raster reading to store band data in the data type defined by the raster file, resulting in a significant reduction in memory consumption for raster files with 16-bit or 32-bit data (see Appendix G in hydrosphere_ref.pdf).
New command
read zones from csv point cloud
that assigns zone numbers to elements in the porous medium domain from a point cloud. For each point in the input file, the element whose centroid is nearest to that point receives a “vote” for the corresponding zone number. The zone number that receives the most votes is then assigned to that element. In the case of a tie, the element is either assigned a user specified default zone number or its zone number is unchanged (see hydrosphere_ref.pdf).Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM JULY 2024 (REVISION 2710)
Fix bug in command
remove rectangles with blanking file
that causes HGS to crash when running in parallel.Fix bug in command
report exchange for olf zones
that causes it report incorrect values for simulations run in parallel or when additional HGS output commands such asflux volume output nodes
are used.Improve error checking in regional model commands
initial head from regional output file
,initial head from regional output file with depth scaling
, andinitial concentration from regional output file
(see hydrosphere_ref.pdf).Optimize particle tracing by reducing memory usage and parallelizing the particle trace update over a timestep.
New command
write chosen elements 2d
that writes the 2D element numbers of all chosen elements (without any repeats) to a user specified file (see hydrosphere_ref.pdf).Update the reference and theory manuals (hydrosphere_ref.pdf and hydrosphere_theory.pdf).
HGS PREMIUM JUNE 2024 (REVISION 2699)
Fix bug that may occur from multiple calls to the command
soil frost K
, resulting in an index out of bounds error. This issue was created in the May release updates to remove this command's dependency on the array sizes defaults file.Fix bug that in rare cases causes HGS to terminate with an error message when interpolating a point to the top and bottom faces of an element.
Fix bug that results in an array out of bounds error in the mesh partitioning algorithm when the requested number of subdomains is too large.
Fix bug in command
time varying maximum timestep
that causes HGS to skip the maximum timestep size when prescribed at the initial simulation time.Improve error checking for boundary condition set creation:
Issue a warning when creating a node/face/segment set if the resulting file will overwrite an existing file.
Issue an error when defining a boundary condition if a node/face/segment set was not defined.
Optimize face selection to achieve a 2x speedup with the same global ordering of faces.
Refactor the command
fluid volume concentration threshold
so that it applies to the current set of chosen nodes (see hydrosphere_ref.pdf).Add first-order decay of colloids in the solid phase for both the porous medium and dual continuum domains (see hydrosphere_ref.pdf and hydrosphere_theory.pdf).
Add support for zstd compression when reading GeoTiff rasters with GDAL.
Update the reference and theory manuals (hydrosphere_ref.pdf and hydrosphere_theory.pdf).
HGS PREMIUM MAY 2024 (REVISION 2688)
Fix bug in command
read zones from raster
that causes incorrect zone assignments for the surface domain.Fix bugs in command
permafrost formation from file
:Grok issues an error message if the free solution diffusion coefficient for a solute was not set by the user.
Effective diffusion coefficients are not updated when command
permafrost effective diffusion coefficient
is used.
Make fully implicit time weighting the default transport time weighting (previously was Crank-Nicolson).
Remove array sizes defaults entries “soil frost: elements”, “soil frost : function panels”, “k-reduction by impedance : function panels”, and “k-reduction by impedance : elements”. The corresponding arrays will now be resized dynamically by grok.
Update Hydraulic Mixing Cells (HMC):
Add the dual continuum, fracture, well, and tile domains to HMC tracking.
Issue an error if HMC attempts to make a default zone for a common node domain (all domains must use the dual node approach).
Change “HMC ratio cutoff default” value to 10000.
Change “HMC relative error volume” default value to 1e20.
New command
hmc initial fractions from output files
that initializes fractions for all domains from existing HMC fraction binary output files (see hydrosphere_ref.pdf).
New command
read zones from raster, dominant class
(see hydrosphere_ref.pdf). This command makes the followingimprovements over the existing command
read overland zones from raster, dominant class
, which is now deprecated:Increased accuracy of the polygon intersection computation.
Support for porous medium, surface, and ET domains.
Support for block element meshes.
Faster zone selection via OpenMP parallelization.
New command
map zones from raster, dominant class
that allows for a user specified zone mapping from a raster in the porous medium, surface, and ET domains via the dominant class approach (see hydrosphere_ref.pdf).New node selection commands
choose nodes xy sheet list
andchoose nodes xy top list
(see hydrosphere_ref.pdf).New commands
make time file table input xyz
,make time file table input xy sheet
, andmake time file table xy top
that generate ASCII files compatible as input to the boundary condition commandtime file table
from an input list of nodal coordinates and values (see hydrosphere_ref.pdf).New command
specified reservoir storage
used by the reservoir with spillway boundary condition that sets the current reservoir storage value at each time in a time-value table (see hydrosphere_ref.pdf).Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM APRIL 2024 (REVISION 2674)
Note: HGS2VTU 4.4.0 has been released alongside the April release of HGS. See the official HGS2VTU release notes.
Correct the units reported for the porous medium and dual continuum exchange. Originally reported as (L/T), however (L^3/T) is correct.
Fix an access violation error when computing mesh quality statistics that in rare cases may cause grok to crash.
Fix bug in command ‘compute post simulation average’ that causes it to fail when trying to parse Tecplot output file headers that contain DATASETAUXDATA and VARAUXDATA directives.
Fix issues with output variable control that causes newly added control settings to be ignored by HGS when an older output variable control file is already present in the simulation directory.
Fix performance issue for tile domain zone assignment caused by excessive I/O to the grok.dbg file.
Improve error checking for the commands ‘map K from regional model list file’ and ‘map K from regional model list file by layer’.
Update Hydraulic Mixing Cells (HMC):
Remove the misleading text “HMC output domain:” from the .eco file when defining an output location.
Refine output file generation by writing an o.hmc_fractions output file for an HMC output location and an HGS domain if and only if the output location node set intersects the node set associated with the domain.
Generalize the boundary condition command ‘time on/off table’ so that it can be applied to all boundary conditions (see hydrosphere_ref.pdf).
Change the behavior of interpolated observation point commands for points that fall above/below the mesh. If the z-coordinate of an observation point lies above the mesh surface or below the mesh base, then snap that z-value to the mesh and issue a warning message (previously an error would have been issued). Note that points whose xy-coordinates are outside the mesh extents still trigger an error.
New binary output files prefixo.flow_rate_olf.XXXX that report the rate of flow (L^3/T) into each node in the surface domain from all neighboring surface domain nodes.
New output variables “Node Control Volume”, “Node Area”, and “Node Area Projected” for the output file written by command ‘mesh to tecplot’.
New output variables “Node Area” and “Node Area Projected” for the output file written by command ‘overland to tecplot’.
New features for user defined variables in grok (see Section 2.1.2 in hydrosphere_ref.pdf):
New command ‘set env variable’ that allows you to set a variable from the value of an environment variable.
New command ‘echo variable’ that allows you echo the name and value of a defined variable to the console.
New commands to allow for more flexible clearing of selections (see hydrosphere_ref.pdf):
‘clear chosen nodes am’
‘clear chosen nodes by shp’
‘clear chosen elements am’
‘clear chosen faces am’
‘clear chosen faces top am’
‘clear chosen faces top by shp’
New commands ‘create node set difference’ and ‘create node set symmetric difference’ (see hydrosphere_ref.pdf).
New command ‘choose segments by nodes list’ that for each tuple of nodes (n1, n2) in the list, selects the corresponding segment if defined (see hydrosphere_ref.pdf).
New command ‘no particle trace files’ that disables the generation of all particle trace output files (location and travel time files are still generated; see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM MARCH 2024 (REVISION 2653)
Note: HGS2VTU 4.3.1 has been released alongside the March release of HGS. See the official HGS2VTU release notes.
Fix bug reading the .gen file when the command ‘dual nodes for surface flow’ is issued but no surface domain has been defined.
Fix slow reading of raster files on network share by GDAL.
Fix issue in the February 2024 release regarding Tecplot files with line lengths that exceed the maximum length supported by Tecplot. The update was incomplete and is fixed in this release.
Refactor command ‘remove rectangles with blanking file’ to improve its performance and fix a bug that may cause it to misidentify whether a point belongs inside/outside the polygon defined by the blanking file.
Refactor particle tracing initialization to support multiple initialization modes within a single simulation, e.g., by xyz-coordinates and depth to groundwater (see hydrosphere_ref.pdf).
Refactor commands ‘K reduction by impedance factor for chosen elements’ and ‘time varying K by impedance factor via temperature raster’ by adding a minimum K-value input argument that is the minimum reduced hydraulic conductivity that can be prescribed in any coordinate direction.
Add a check to grok that domains using the dual node approach are defined in the correct order: pm, dual, olf, frac, channel, well, tile.
Add optional raster band input to the command ‘choose faces top from raster’.
Add Hydraulic Mixing Cells (HMC) to HGS to track the flow of water from distinct, user-defined sources throughout the model domain (see Section 2.10 in hydrosphere_ref.pdf).
New channels properties (cprops) command ‘time varying streambed conductivity’ that defines streambed conductivity for a channel zone via a time-value table (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM FEBRUARY 2024 (REVISION 2641)
Note: HGS2VTU 4.0.0 has been released alongside the February release of HGS! It provides many new and useful features with support for new output formats including NetCDF UGRID, Tecplot ASCII/SZPLT, and CSV point cloud. See the official HGS2VTU release notes for all the details.
Fix bug in the simple river boundary condition when applied to an unsaturated simulation in a domain other than the porous medium domain that uses the dual node approach.
Refactor command ‘permafrost formation from file’ (see hydrosphere_ref.pdf):
Remove the array sizes defaults entries “permafrost : elements” and “permafrost : function panels”. These array sizes are now determined dynamically.
Add the user specified on/off times to the list of HGS target times.
Fix a potential error generating the binary output files prefixo.permafrost_pm.XXXX and prefixo.permafrost_frac.XXXX.
Allow Tecplot ASCII output files with line lengths that exceed the maximum number of characters allowed by Tecplot (32,000). A warning is issued by HGS for each output file whose line length may exceed the maximum.
Update raster reading in grok and HGS to use the open source software GDAL (see Appendix F in hydrosphere_ref.pdf). New features include:
Support for different raster formats: ASCII, GeoTiff, NetCDF, etc. See here for a comprehensive list.
Automatic clipping of raster data to the mesh bounding box.
Support for multiband rasters by select commands:
‘elevation from raster’
‘initial head from raster’
‘map property from raster for chosen elements’
‘read zones from raster’
‘map zones from raster’
‘read overland zones from raster, dominant class’
‘time raster table’
New command ‘map zones from raster’ that is similar to the command ‘read zones from raster’ but allows the user to specify an additional raster value to zone number mapping instead of using the raw raster values as zone numbers (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM JANUARY 2024 (REVISION 2633)
Fix bug in command ‘initial head from depth-saturation table’ that causes grok to crash when the input table has more than 100 entries.
Fix bugs in colloid transport related to third-type boundary conditions.
Deprecate hsbatch. As of this release, hsbatch is no longer supported and will not be provided as part of the HGS installation. Please contact Aquanty support if you require its functionality to run the verification tests and we will provide an equivalent PowerShell/batch/bash script.
Refactor the command ‘canopy fill interval’ when a positive canopy evaporation interval is specified. Compute interception storage in terms of sequential filling and draining cycles over the duration of the canopy evaporation interval (see hydrosphere_ref.pdf).
Automatically generate a batch.pfx file with the accepted model prefix if there is an issue reading an existing batch.pfx file or if it's not found.
Update particle tracing:
Remove any particle trace output times that are less than or equal to the simulation initial time and issue a warning.
Improve performance of computing the initial element for each particle.
Fix issue that was falsely identifying some particles as not belonging to their initial element.
For steady-state simulations, generate all particle trace output files at once and only once.
New command ‘clear chosen elements by shp’ that flags all elements that fall between a given layer range [bottom,top] and whose 2D centroid falls within a polygon defined by a shapefile as not chosen (see hydrosphere_ref.pdf).
Update the reference and theory manuals (hydrosphere_ref.pdf and hydrosphere_theory.pdf).
HGS PREMIUM DECEMBER 2023 (REVISION 2625)
Note: As part of the December release we have updated the license parsing in HGS, which may affect your current license configuration. If you receive the error message “License option string is empty” it indicates that you have a legacy license format, which is no longer supported. Please contact support@aquanty.com along with your hostid.txt file to obtain a new license file. Thanks and happy December!
Fix bug that causes Manning roughness coefficients set by the command ‘time varying friction’ to be ignored for all overland flow zones.
Refactor error handling and error messages to provide more context for errors associated with commonly occurring error codes. Standardize the exit status returned by grok, phgs, and hsplot so that users can reliably check for successful completion from the returned exit status (success = 0).
Refactor particle tracing so that the default trace count is essentially unlimited. A model's ability to store trace paths will now be constrained primarily by the amount of available virtual memory unless limited by the command ‘maximum trace count’.
Update hsplot Tecplot ASCII output to set the variable data type for all Tecplot zones instead of only for zone 1. Prior to this update, the data type of all unshared variables would default to FLOAT for all Tecplot zones after zone 1.
Add new variable “Depth2GWT2D” to the prefixo.pm.dat file produced by hsplot that reports the depth to groundwater table for each node in a 2D sheet and reproduces this profile for all node sheets in the mesh.
New commands ‘invert chosen nodes’ and ‘invert chosen elements’ (see hydrosphere_ref.pdf).
New commands ‘create node set intersection’ and ‘create node set union’ (see hydrosphere_ref.pdf).
New command ‘particle trace binary output’ that causes HGS to format particle trace output files as Tecplot binary files (SZL binary format). This command also provides the option to write all particle traces to a single binary output file (see hydrosphere_ref.pdf).
New command ‘particle trace timestep threshold’ that specifies a threshold for particle timesteps that controls whether a new particle location is recorded or whether the current particle location is updated (see hydrosphere_ref.pdf).
New command ‘time on/off table’ used by the flux nodal by pressure boundary condition to decide if the boundary condition is active or not. This update is intended to allow for seasonal variability in the pressure-discharge curves (see hydrosphere_ref.pdf).
Update the reference and theory manuals (hydrosphere_ref.pdf and hydrosphere_theory.pdf).
HGS PREMIUM NOVEMBER 2023 (REVISION 2611)
Fix bug that causes repeated variable names in the o.newton_runtime_info file, which leads to an error when trying to view this file with Tecplot.
Fix bug that causes unexpected behavior in HGS that occurs only in models that define a flux nodal from outlet boundary condition in conjunction with saving/loading data from the restart_state.dat file.
Update the tecio DLL file that is shipped with the Windows version of HGS to a newer version. This update is aimed at fixing issues related to the generation of Tecplot binary output files when running in Windows 11.
Update hsplot to improve performance writing data to Tecplot ASCII files.
Update the commands: ‘initial head from xyh file’, ‘initial head from xyc file’, and ‘regional model’ to remove the character limit on the input character string and to improve error checking.
Remove the command ‘finalize tecplot headers’, which is no longer supported.
New command ‘initial head surface elevation for chosen nodes’ (see hydrosphere_ref.pdf).
New command ‘initial particle location by groundwater table from file’ that defines a particle's initial position by interpolating its z-coordinate from the initial groundwater table elevation at a user provided (x,y)-coordinate (see hydrosphere_ref.pdf).
Update the reference and theory manuals.
HGS PREMIUM OCTOBER 2023 (REVISION 2596)
Fix bug in hsplot command ‘truncate pm domain by layer’ that may cause the wrong layers to be truncated.
Fix bug writing the o.concsolid_pm and o.concsolid_dual binary output files.
Fix bug that causes hsplot to fail when plotting solid phase colloids when there are multiple solutes defined.
Fix bug that causes HGS to fail when using dual porosity together with elemental porous medium porosity.
Update the output variable control file with missing commands for the o.pet_olf, o.flux_olf, o.rain_olf, and o.v_well output files.
Refactor array sizes defaults to remove the following entries: “surface flow: hydrograph nodes”, “observation wells: nodes”, “output: flux volume nodes”. The corresponding arrays will now be resized dynamically by grok.
Refactor HGS restarting (see Section “Restarting a Simulation” in hydrosphere_ref.pdf):
Initialize the state of various boundary conditions and processes where necessary when restarting. These include the reservoir, reservoir with spillway, irrigation on demand, snowmelt, rain and snowmelt, flux nodal, and flux nodal from outlet boundary conditions, and the interception storage and pore water freezing and thawing processes.
New command ‘restart file save interval’ that causes restart files to be updated at a user specified frequency based on wall clock time.
Improve restart robustness by keeping restart files from the previous update in case the current ones become corrupted.
Output volumetric water content in the porous medium for variably saturated models. Volumetric water content is written to observation point/well files with the variable name “VWC”. It is also written to binary output files named prefixo.vwc_pm.XXXX that are added to the o.pm.dat file by hsplot with the variable name “VWC”.
New command ‘reservoir storage loss table’ for the reservoir with spillway boundary condition that allows a user to specify a depletion of reservoir storage based on a time-value table (see hydrosphere_ref.pdf).
New commands ‘adjust absolute nodal elevation by sheet’ and ‘adjust relative nodal elevation by sheet’ that may be used during mesh layer generation to adjust nodal elevations by a specified tolerance (see hydrosphere_ref.pdf).
New command ‘write chosen segments’ that generates an ASCII output file of segment nodal endpoints (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS PREMIUM SEPTEMBER 2023 (REVISION 2582)
Fix bug in command ‘vertical slice flux by sheet’. This issue may cause HGS to crash when there are multiple slice fluxes by sheet defined.
Fix bug in command ‘remove rectangles with shapefile’ that causes HGS to crash when running in parallel.
Fix bug in 2D random fracture generation that causes grok to crash.
Fix bug in command ‘defined flow’ that causes the following issues:
Writes o.head_pm.0001 output files with the timestamp 1.0e20, which creates issues when running hsplot.
Generates more o.head_pm binary output files then there are output times.
Corruption of the o.hen file.
Fix bug in observation point/well files that causes a missing column of data for models with a channel domain that has a nonzero incision depth, when the observation point falls outside the channel domain.
Fix bug in commands ‘fluid volume for chosen elements’ and ‘fluid volume for chosen elements by layer’ that causes HGS to crash for models with a surface domain.
Fix bug in hsplot that causes common node domains to be missing certain variables when plotting the porous medium domain is turned off.
Improve error handling reading echos/nchos files in grok.
Sort output times specified by the command ‘output times’ to avoid issues that may arise when this command is issued multiple times.
Optimize saturation/relative permeability lookup from unsaturated tables in HGS to improve performance and accuracy. Profiling shows up to a 20% improvement in simulation wall clock times.
Generate new binary output files: pressure head o.pressure_head_(pm, dual, frac, well, tile), depth to groundwater table o.depth2gwt_pm, and water depth o.depth_(olf, chan).
Refactor depth to groundwater computation in HGS to provide a 3D illustration of water table location and in particular, to correctly handle perched water tables. These updates affect depth to groundwater output generated by hsplot as well as by the commands ‘report water table at xy’, ‘report water table at node’, and the new command ‘report water table at xyz’ (see hydrosphere_ref.pdf).
Add colloid transport to HGS to simulate colloid attachment from the liquid to the solid phase and colloid detachment from the solid to the liquid phase for the porous medium and dual continuum domains. See the section titled “Colloid Transport” in hydrosphere_theory.pdf and the following commands in hydrosphere_ref.pdf:
colloid transport parameters
zoned colloid transport parameters
dual colloid transport parameters
dual zoned colloid transport parameters
initial concentration solid phase
initial concentration solid phase from file
initial concentration solid phase from output file
New command ‘initial snow depth from output file’ allows users to specify the initial snow depth used by the rain and snowmelt boundary condition for each element in the surface domain from a previously generated o.snowdepth output file (see hydrosphere_ref.pdf).
Update the reference and theory manuals.
HGS PREMIUM AUGUST 2023 (REVISION 2564)
Fix bug when running transport in control volume mode. The issue arises when computing the flow contribution of a specified head boundary condition that overlaps with a second-type transport boundary condition. In that case, the flow contribution of the specified head boundary condition is ignored at its points of overlap with the second-type transport boundary condition.
Fix bug in overland-channel exchange when running in finite difference mode with overland flow and channel domains using the dual node approach. The issue causes the derivatives of the overland-channel exchange terms to be absent from the Jacobian, which may degrade simulation performance and accuracy.
Fix bug in command ‘read zones from raster’ that may cause incorrect zone numbers to be assigned to some elements when applied to the ET domain.
Improve flexibility of the command ‘zones from arcview for chosen elements’ that assigns porous medium/overland flow zones from a shapefile. This update allows users to assign zones in stages without having to renumber their zones to account for any gaps in their numbering.
Improve error checking by issuing an error from grok if an ET domain is defined without specifying at least one potential ET boundary condition.
Improve robustness of the domain partitioning algorithm for parallel HGS simulations. This update adds a simple iterative approach to select the number of subdomains if an error is encountered with the user specified number of subdomains.
Reduce memory usage of HGS for the Jacobian sparse matrix, which may significantly overestimate the amount of storage required when running in finite element mode. Improvements also apply when running in finite difference mode, but are less pronounced. Issue an error from grok if integer overflow is detected in the variables that store the number of unknowns and the number of nonzeros in the sparse matrix.
Simplify the parallelindx.dat file by removing unused/deprecated commands. Note that older parallelindx.dat files remain backwards compatible with HGS.
Add pressure head as an output to hsplot for all domains excluding the overland flow and channel domains where water depth is an equivalent output.
Add new section titled “Parallel Simulation” to the reference manual that details the parallelization in HGS including the updated format of the parallelindx.dat file (see hydrosphere_ref.pdf).
HGS PREMIUM JULY 2023 (REVISION 2553)
Fix bug in the computation of 3D subsurface transpiration and evaporation that are reported to the hsplot output file ‘prefixo.pm.dat’ by the variables “3D Subsurface transpiration” and “3D Subsurface evaporation”, respectively. This bug causes the reported values to be much larger then they should be. This update also fixes the issue whereby 3D subsurface transpiration and evaporation reported in the observation point/well output files have units of [L / T] instead of [L^3 / T] as expected.
Fix bug in hsplot that causes the values reported for the variable “3D subsurface transpiration” in the prefixo.pm.dat output file to appear as zero.
Fix bug that arises when computing the contribution of an outflow boundary condition that overlaps with a transport third-type boundary condition. For example, when a critical depth boundary condition is applied at some of the surface same nodes as a third-type boundary condition. The issue causes mass to accumulate at the overlapping nodes, resulting in concentrations being applied that exceed those specified by the third-type boundary condition.
Fix bug that may cause incorrect values for the number of 2D/3D faces/edges/segments to be reported in the “MESH SUMMARY” section of the .eco file.
Remove obsolete command ‘casing radius’ from the verification test input files.
Add the following metadata to Tecplot output files (DATASETAUXDATA fields) generated by HGS and hsplot: source, HGS version, date created (UTC timestamp), model prefix, mass base unit, length base unit, time base unit, and temperature base unit.
Replace verbose output written to the console and .eco file during layer generation with the command ‘minimum layer thickness with fixed top elevation’ with a short summary.
Update canopy interception storage computation to account for any liquid precipitation that comes from the ‘rain and snowmelt’ boundary condition. Note that solid precipitation that arises from that boundary condition is NOT accounted for in canopy storage.
Add mass balance reporting for the transport mass flux boundary condition ‘solute uptake by plant roots’ to the .lst file and the raw mass balance file (see variable “Root Uptake”).
New command ‘initialize domain’ that initializes a domain of a user specified type for the current set of chosen elements/faces/segments (depending on the domain) and assigns all selected elements/faces/segments to zone number one. It is added mainly for convenience and should avoid the common mistake of not calling the new zone command at least once at the start of defining a domain (see hydrosphere_ref.pdf).
New command ‘initialize default surface domain’ that defines a surface domain on the top faces, assigns those faces to zone number one, and sets default properties for that zone (see hydrosphere_ref.pdf).
New command ‘initialize default et domain’ that defines an ET domain on the top faces, assigns those faces to zone number one, and sets default properties for that zone (see hydrosphere_ref.pdf).
New command ‘make node observation points’ that allows you to define observation points from an end-terminated list of name and node number pairs (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS Premium JUNE 2023 (Revision 2539)
Fix bug that causes units written to Tecplot ASCII output files by HGS to always use the default unit system kg-m-s.
Update transport mass balance:
Fix some issues related to thermal transport when computing the energy stored in 2D elements and when computing rates of energy in/out.
Add the contribution of the atmospheric boundary to the energy mass balance.
Add several missing source and sink components to the NET1 term in the mass/energy balance.
Add more fine-grained output of flow boundary condition contributions to transport mass balance.
Update hsplot:
Generate location probability output for only the pm domain with dimensions [1 / L^3].
When closing a Tecplot binary file in append mode, flush to the szplt temporary files as a precaution to make sure all data is updated.
Fix some plot control settings that cause certain variables to be written even when the user requests that they not be.
Fix bug in Tecplot variable definition that causes hsplot to fail or to generate incomplete output files for models that define a large number of variables with long names.
Fix bugs that cause hsplot to crash when generating Tecplot binary output for models that define more than 100 variables.
Refactor generation of o.boundary_conditions file by grok to output floating-point values to their full precision instead of to 10 decimal places.
Refactor Tecplot ASCII output file generation in HGS to use the maximum possible precision for the simulation time variable.
New boundary condition ‘rain and snowmelt’ (see hydrosphere_ref.pdf).
New command ‘detailed runtime information’ that causes HGS to generate two Tecplot ASCII files named prefixo.newton_runtime_info.dat and prefixo.adaptive_timestep_info.dat which contain detailed information about the flow solution Newton iterations and adaptive timestepping, respectively, at each timestep (see hydrosphere_ref.pdf).
Update the theory and reference manuals.
HGS Premium MAY 2023 (Revision 2531)
Fix bug that causes faces not to be generated when ‘choose faces by nodes list’ is the only command issued that uses faces.
Change output formats 1PE20.10 and 1PG20.10 to 1PE20.10e3 and 1PG20.10e3 when writing mass balance information to the .lst file. This update avoids the floating point exponential “E” from being dropped from the output when |exponent| >= 100.
Add units for all variables for all Tecplot ASCII output files generated by HGS. Units are provided as comments and as VARAUXDATA fields, similar to how hsplot output files are formatted.
HGS Premium APRIL 2023 (Revision 2529)
Fix bug in ‘specified third-type concentration’ boundary condition for the overland flow domain when the input argument calcflux is true, which may result in higher computed concentrations then is physically possible.
Fix bug reading immobile zone concentrations from the o.ci file in HGS that causes mobile concentrations to be used instead.
Fix bug in reporting the well, tile, and channel infiltration/exfiltration causing the values being reported in the .lst file to be flipped with opposite signs.
Fix bug in computation of channel-overland exchange flux when both the incised channel head and surface head exceed the bank height and surface head is the upstream head.
Fix bug in command ‘choose faces vertical from polyline shp’ that occurs when the user specified bottom sheet number is greater than one.
Add missing hsplot output for immobile concentration files in the pm domain (o.iconc_pm). The output variable name for these files is “species name (immobile)”.
Deprecate commands:
‘map isotropic k from raster’, ‘map anisotropic k from raster’, ‘map porosity from raster’, and ‘map tortuosity from raster’. Instead prefer: ‘map property from raster for chosen elements’.
‘initial head raster’ and ‘map initial head from raster’. Instead prefer: ‘initial head from raster’.
‘read zones from raster for chosen elements’ and ‘read overland zones from raster’. Instead prefer: ‘read zones from raster’.
‘elevation from raster file’. Instead prefer: ‘elevation from raster’.
‘read grid components’ (when reading the porous medium mesh). Instead prefer: ‘read 3d grid’.
‘new olf zone from face set’. Instead prefer ‘new zone’ with the domain type set to “surface”.
‘raster to scl’, ‘raster to nprop’, ‘raster to element’.
Change default mass balance output format in HGS to scientific.
Issue a warning message from grok when the number of boundary conditions exceeds the user specified maximum output limit.
Add the output variable “iHc” for incised channel head to observation well/point output files when the incision depth is nonzero.
Update exchange flux reporting in o.water_balance and .lst files:
Split channel exchange flux into separate contributions to the overland flow and pm domains.
Add missing .lst file headings for exchange between dual continuum and pm domains, and between dual continuum and overland flow domains.
Rename the variables written to the water balance file as follows:
Infilt -> Olf2PM, Exfilt -> PM2Olf
Infilt(Dual) -> Olf2Dual, Exfilt(Dual) -> Dual2Olf
Q(Dual2PM) -> Dual2PM, Q(PM2Dual) -> PM2Dual
Frac+ -> Frac2PM, Frac- -> PM2Frac
Well+ -> Well2PM, Well- -> PM2Well
Tile+ -> Tile2PM, Tile- -> PM2Tile
Chan+ -> Chan2PM, Chan2Olf
Chan- -> PM2Chan, Olf2Chan
Refactor the command ‘report exchange flux for chosen nodes’ to improve error checking on inputs and update Tecplot output file variable names to match water balance file variable names and formatting.
New command ‘read zones from raster’ that assigns zone numbers to chosen elements/faces in the porous medium, overland flow, or ET domains from a raster file (see hydrosphere_ref.pdf).
New command ‘initial head from raster’ (see hydrosphere_ref.pdf).
New command ‘elevation from raster’ that reads elevations at mesh surface nodes (see hydrosphere_ref.pdf).
New BC command ‘elevation offset’ that may be used in conjunction with the ‘head equals elevation’ boundary condition to specify a positive/negative offset of the prescribed head value (see hydrosphere_ref.pdf).
New command ‘map zone numbers from regional model by volume’. For each chosen element in the pm domain, the zone number is assigned from the regional zone that has the largest volume of intersection with that element. Volumes of intersection between local and regional 3D mesh elements are approximated via Monte Carlo simulation (see hydrosphere_ref.pdf).
Update the reference and theory manuals:
Add the channel incision depth parameter in the equations for channel exchange flux and add a figure that shows how the channel parameters apply in the case of a rectangular channel cross section (see hydrosphere_theory.pdf).
Add missing ET crop coefficient commands: ‘PET from crop coefficients’, ‘Maximum crop coefficient table’, and ‘Basal crop coefficient table’ (see hydrosphere_ref.pdf).
Make extensive updates to the section on 1-D channel properties in the reference manual (see hydrosphere_ref.pdf).
HGS Premium MARCH 2023 (Revision 2509)
Fix bug in computation of the bounding box that is reported in the mesh summary section of the .eco file.
Fix bug in the commands that specify initial head or concentration in the overland flow domain when olf cutoff walls are present.
Improve error checking for observation points, observation wells, or interpolated observation points command by checking for non-unique user specified names (case insensitive comparison).
Update command ‘mesh to tecplot’ by adding variables that report elemental volume, top face area, projected top face area, top face slope angle, and top face slope aspect.
Update RLM license checkout to issue an error if there are multiple license files (.lic) in the HGS installation directory.
Update hsplot:
Add new binary output file prefixo.incised_head_chan.XXXX that contains the channel head corrected by the nodal channel incision depth. This quantity is reported by the variable “Incised Head” in the prefixo.chan.dat file.
Add data type of each variable reported in a Tecplot ASCII output file generated by hsplot. Previously, all variables defaulted to 4-byte floats of type SINGLE.
New command ‘choose faces vertical from polyline shp’ that chooses all vertical faces that lie below a polyline defined by a shapefile and within a sheet range. This command is similar to the existing command ‘choose faces vertical from polyline’, however, it is more general and considerably more efficient than the original command (see hydrosphere_ref.pdf).
HGS Premium FEBRUARY 2023 (Revision 2499)
Fix bug in the parallel linear solver that can result in the linear solver performing more than the user specified maximum number of solver iterations when the linear solver is restarted due to convergence stalling.
Enforce CRLF line-endings for all CSV files generated by HGS per the CSV file standard.
Update the PET boundary condition by setting any negative user prescribed evaporation fluxes to zero when computing the reported fluxes.
Reformat the Newton nonlinear iteration summary to handle models with up to 1e8 - 1 nodes.
Update the simple drain, simple river, and makeup water boundary conditions to accept the time raster table input type with the format: time, raster filename, raster filename. Originally only time value tables and time file tables were accepted for these boundary conditions.
Update hsplot:
Always write hydraulic conductivity, porosity, specific storage, and tortuosity (if transport) to the prefixo.pm.dat file.
Add elemental volume with the variable name “Volume” to the prefixo.pm.dat file.
Update the plot.control file to enable/disable elemental volume output.
Update the Matrix Solver section of the reference manual (hydrosphere_ref.pdf) with a detailed description of the linear solver stalling/restarting process and the commands that control this process.
HGS Premium JANUARY 2023 (Revision 2490)
Fix bugs in the commands ‘initial head from regional output file’ and ‘initial concentration from regional output file’, which fail to correctly assign head/conc values in the olf domain when olf cutoff walls are present.
Fix bug in the command ‘mesh to gms’ that causes grok to crash.
Improve error checking on the initial scan of the prefix.grok input file and on generation of the scratch properties files.
Update the particle_location and particle_trace Tecplot output files by putting Tecplot zone directives on a single line.
New command ‘track simulation progress’ that generates a CSV output file named prefixo.simulation_progress.csv, which tracks the progress of an HGS simulation and is overwritten after each successful timestep (see hydrosphere_ref.pdf).
New command ‘choose faces top block by centroid’, which is similar to the existing command ‘choose faces top block’ (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS Premium DECEMBER 2022 (Revision 2482)
Fix bug in command ‘read rill storage from raster’ that causes grok to crash. This bug was introduced in the October 2022 release.
Fix bug in commands ‘soil water balance’ and ‘soil water balance custom depth’ that may cause HGS to crash. This bug was introduced in the October 2022 release.
Add missing contribution to the mass balance computation for simulations with ET. Add the rate of water stored in the ET interception/storage reservoir to the “NET2 accumulation” term in the water balance file, otherwise, this water is unaccounted for.
Refactor commands ‘choose segments polyline’ and ‘choose segments polyline by sheet’ to improve their performance and significantly reduce the amount of output they write to the .eco file.
Improve error checking for the commands ‘initial head from output file’, ‘initial concentration from output file’, and ‘initial immobile concentration from output file’ by issuing an error when number of values in the file does not match the number of values being read. Previously, it was possible to read from a file that contains more values than the underlying quantity and no error would occur.
Refactor the command ‘zones from arcview for chosen elements’ so that its behavior matches the description in the reference manual (see hydrosphere_ref.pdf). In particular, correctly apply zone selections to the surface domain (previously porous medium only).
Update all commands that originally accepted the Polygon shape type to now also accept PolygonZ and PolyLineM shape types (with the z-coordinate and/or attributes ignored).
New command ‘finalize tecplot headers’ that causes HGS to post-process all Tecplot ASCII timeseries output files and inject the number of points in the file into the zone line. The purpose of this command is to make HGS timeseries output files readable by applications other than Tecplot that support Tecplot file formats, for example, ParaView (see hydrosphere_ref.pdf).
New command ‘write ordered nodes from polyline by sheet’ that generates an ordered list of nodes belonging to the specified node sheet that follow closely to the polylines defined by a shapefile (see hydrosphere_ref.pdf).
New command ‘initial time from binary output file’ that sets the initial simulation time from the header block of a user-specified binary output file (see hydrosphere_ref.pdf).
New command ‘tecplot binary append’ that allows you to build Tecplot binary output files incrementally with hsplot as a simulation progresses by appending to szplt temporary files each time hsplot is run. The Tecplot utility szcombine (part of your Tecplot installation) may be used to recombine the temporary files to produce a szplt file that Tecplot can read (see Appendix E in hydrosphere_ref.pdf). This update also includes numerous minor improvements to hsplot and some bug fixes.
New command ‘choose zones list’ that selects a user-defined set of zones within the currently active domain (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS Premium NOVEMBER 2022 (Revision 2469)
Fix bugs in commands ‘element K isotropic’ and ‘element K anisotropic’ that cause grok to crash.
Fix bug in overland flow velocity computation (prefixo.v_olf.XXXX) that caused them to be multiplied by flow depth resulting in units of [L^2 / T].
Fix bug that may causes issues with 3D random fracture generation.
Mark the command ‘interpolate specified head’ as obsolete and issue and error if it is used.
Improve error checking for the command ‘impermeable matrix’ by issuing an error from grok if either the surface or fracture domains are present with the common node approach.
Update grok/HGS binary output files:
Write the tile domain velocity binary output file prefixo.v_tile.XXXX.
Write the channel velocity binary output file prefixo.v_chan.XXXX for steady state flow simulations.
Generate the following binary output files from HGS when the common node approach is used for the respective domain: prefixo.head_olf.XXXX, prefixo.head_well.XXXX, prefixo.head_tile.XXXX, prefixo.head_chan.XXXX, prefixo.conc_olf.XXXX.
Update the command ‘choose elements xyz list’ so that it applies to unstructured meshes (see hydrosphere_ref.pdf).
Update slice flux commands:
Check that volume name is unique for each slice flux and issue an error otherwise.
Report +/- components of each flux.
Report advective and dispersive mass fluxes for the olf domain (transport solution).
New commands ‘chosen nodes to tecplot’ and ‘chosen elements to tecplot’ that generate Tecplot output in grok (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf:
Add missing command description for ‘initial concentration from regional output file’.
Improve description of slice flux commands and their output variables for flow and transport.
HGS Premium OCTOBER 2022 (Revision 2457)
Fix bug introduced in September release that causes HGS to crash when using the ‘flux nodal by pressure’ boundary condition.
Fix bug that causes HGS to crash when running with dual node fracture/surface domains and the control volume approach.
Fix bug in hsplot that causes missing .dat file extension for certain Tecplot ASCII output files.
Deprecate commands ‘echo on’ and ‘echo off’.
Add 3D mesh volume, void volume, top surface area, and projected top surface area to the mesh summary section of the prefixo.eco file.
Improve error messages by adding the Fortran iostat value to the error message where applicable.
Update the command ‘assign zone zero’ so that it assigns zero to all zones for each domain type, not just the porous medium domain.
Update the commands ‘choose nodes shp’, ‘choose elements shp’, and ‘choose faces top shp’ to allow for shapefiles consisting of multiple polygons that may contain holes. Points that fall outside of all polygons or in a hole are not chosen.
Update the command ‘soil water balance’ to improve the computation of water volume in the top 0.1 m and 1 m when the mesh is not finely resolved at those depths.
New command ‘soil water balance custom depth’ that computes the volume of water stored in the subsurface, from the top of the model to a set of user specified depths (see hydrosphere_ref.pdf).
New commands ‘read overland zones from file’ and ‘read et zones from file’ that read element-zone number pairs from an ASCII file (see hydrosphere_ref.pdf).
New command ‘create segment set from chosen segments’ that creates a segment set from currently chosen segments (see hydrosphere_ref.pdf).
New commands ‘fluid mass balance for olf areas for chosen faces’ and ‘fluid mass balance for olf areas for chosen faces by layer’. The commands described in Section Polygon Tracking of the HGS reference manual were updated to allow for overlapping polygon regions and polygons consisting of multiple parts that contain holes (see hydrosphere_ref.pdf).
Update manuals:
Add missing command ‘choose faces top shp’ to the reference manual.
Update Figure 2.1 in the verification manual.
Fix equation reference typo in the theory manual.
HGS Premium SEPTEMBER 2022 (Revision 2441)
Fix array dimensioning errors that arise when unsaturated tables are defined in grok instead of in a properties file.
Fix issue in which grok, HGS, hsplot, and hsbatch header information is written to stderr instead of stdout.
Improve tracking of flow solution specified flux boundary condition fluxes to avoid potential errors in the transport mass balance computation caused by double counting of boundary condition contributions.
Improve 2D mesh error checking in grok by scanning for out of range node indices and dangling nodes. If any errors are found, issue an informative error message.
Check for unique boundary condition names (case-insensitive comparison) in grok and issue an error if non-unique names are found.
New command ‘time varying pm zones from ascii file’. This command allows for time-varying zones by assigning porous medium zones from an ASCII file. Note that porous medium material properties in porous medium properties files do not change over time, rather it is the spatial distribution of the porous medium zones that changes over time (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf:
Add missing command description ‘integrated finite difference for overland flow’.
Clean up the sections describing transport boundary conditions (2.7.7.1-2.7.7.4).
HGS Premium AUGUST 2022 (Revision 2432)
Fix bug that arises when running density dependent flow in the well domain with constant viscosity.
Update transport solution:
Add check for first-type nodes when writing mass balance output.
Refactor contribution to transport from flow boundary conditions, which fixes some bugs for thermal transport. In particular, this update fixes issues observed for the abdul_thermal verification problem.
Update specific heat capacity of water to 4174 in grok file for thermal_molson\injection verification problem.
Update computation of the effective rainfall rate to be consistent with Equation 2.85 in the theory manual (hydrosphere_theory.pdf).
Issue warning from grok when running a flow-only simulation with nodal flow check or a transport simulation without nodal flow check.
Optimize performance of reading the binary mesh files o.coordinates_pm and o.elements_pm by the command ‘read 3d grid’.
New commands ‘write chosen elements’ and ‘write chosen elements xyz’ (see hydrosphere_ref.pdf).
New command ‘map property from raster for chosen elements’ that allows a user to map a number of different elemental PM properties (porosity, hydraulic conductivity, specific storage, and tortuosity) from a raster for a set of chosen elements (see hydrosphere_ref.pdf).
Update the reference and theory manuals:
Modify the governing equations for thermal and solute transport in hydrosphere_theory.pdf.
Add missing commands ‘constant viscosity’ and ‘oberbeck boussinesq assumption’ to hydrosphere_ref.pdf.
Add a section describing the tunnel boundary condition to hydrosphere_ref.pdf.
Fix some typos in the references.
HGS Premium JULY 2022 (Revision 2419)
Fix density dependent flow bugs caused by the following solute definitions:
Temperature species with commands ‘affects fluid properties’ and ‘relative concentration’.
Non-temperature species with command ‘affects fluid properties’ and without command ‘relative concentration’.
Fix bug that causes certain HGS binary output files to not be written following a simulation restart.
Fix issues that arise when an empty problem description is provided at the start of the grok file.
Fix issue with slice flux output that causes zero to always be written for the channel and tile domains when present.
Add CPU time to the prefixo.newton_info.dat output file.
Check that a node, face, or segment set used by a boundary condition contains nodes, faces, or segments that belong to that boundary condition's domain. Any nodes, faces, or segments that do not belong will be removed, causing HGS to ignore them, and a warning message will be issued by HGS.
New commands ‘overland to tecplot’, ‘wells to tecplot’, and ‘tiles to tecplot’. Optimize performance writing Tecplot ASCII files for all “to tecplot” commands in grok (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS Premium JUNE 2022 (Revision 2409)
Fix bug in the command ‘time-field data table from regional’ that was introduced in the January 2022 release.
Update the commands ‘restart file for heads’ and ‘restart file for concentrations’ by increasing the restart filename length and improving error checking.
Improve error checking for ET zones by issuing an error if any ET elements were not assigned a zone number.
Update the command ‘et zones to tecplot’ to ensure that ET zones have been applied to the subsurface layers prior to writing the Tecplot output file.
Update hsbatch (see Appendix D in hydrosphere_ref.pdf):
Skip running grok, hgs, or hsplot by providing the special name “disable” to the commands that read the executable file paths.
Allow executable file paths to contain spaces.
New observation point commands (see hydrosphere_ref.pdf):
‘make observation point by depth’
‘make observation points’
‘make observation points by depth’
‘make interpolated observation point by depth’
‘make interpolated observation points’
‘make interpolated observation points by depth’
Update hsplot (see Appendix E in hydrosphere_ref.pdf):
Fix bug that causes static variables over a simulation (e.g., elemental porosity) to not be written when the time domain is truncated.
Allow domain blocks to be specified in any order in the plot control file. If a domain block is not present in the plot control file, then skip generating output files for that domain.
Add the command-line flag ‘--make_plot_control’ to hsplot, that causes a fresh plot control file to be written, overwriting any existing such file with the same prefix.
Optimize performance reading mesh files and reading scalar variables from binary output files.
Optimize performance writing data to Tecplot ASCII files.
Improve the formatting of console output and output that is written to the hsplot .eco file.
Add binary Tecplot output that generates .szplt files. Binary output is enabled by the command ‘tecplot binary mode’ in the plot control file (see also the command ‘tecplot binary flush interval’). The benefits of binary output include faster writing times, significantly smaller hsplot output file sizes, and significantly faster loading times by Tecplot. ASCII Tecplot output remains available and is enabled by default.
Update the reference manual hydrosphere_ref.pdf.
HGS Premium MAY 2022 (Revision 2397)
Fix bug in specified mass/temperature flux boundary conditions that may cause grok to crash when multiple species are defined (single species case is fine). Note that this bug may also affect HGS multi-species transport simulations.
Update infilled wells/tiles:
Update computation of dispersion coefficient to use the infilled material properties.
Add support for effective diffusion coefficients when computing the dispersion coefficient of the infilled material.
Update hsplot:
Add the units for each variable as a comment and as a VARAUXDATA field directly following the VARIABLES line to each Tecplot output file generated by hsplot.
Add the new command ‘interpolate depth to gw table’ to the plot.control file that causes hsplot to use linear interpolation when computing the depth to groundwater.
Update hsbatch by providing the option to run the HGS to VTU conversion tool (HGS2VTU) after hsplot runs (see Appendix D in hydrosphere_ref.pdf).
Improve error checking for all node/face/segment set creation commands by issuing an informative warning message from grok when an empty set is created.
Improve error checking for the command ‘read algomesh 2d grid’ by checking the input mesh for errors.
New command ‘incoming shortwave radiation for chosen faces’ that is a subcommand of the atmosphere boundary condition. It allows multiple timeseries of incoming shortwave radiation to be applied to different face selections in the surface of the model domain (see hydrosphere_ref.pdf).
New command ‘use tabulated unsaturated functions’ that generates tables from the functional constitutive relationships and causes grok to use those tables instead of the functions. In particular, there is no need to copy the generated tables from their output files into their respective property files followed by running grok again (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf and theory manual hydrosphere_theory.pdf.
HGS Premium APRIL 2022 (Revision 2385)
Fix bug that causes a mismatch between mesh quality metrics and the element they apply to in the output file prefixo.mesh_quality.dat. Mesh quality summary statistics written to the prefixo.eco file are unaffected.
Fix bug in hsplot that may cause it to crash depending on the combination of domains defined in a model.
Fix bug in grok related to array sizing for the commands: ‘time dependent K for chosen elements’ and ‘time dependent variable K for chosen elements’. This bug was introduced as part of the refactoring work to remove dependencies on the arrays_sizes.default file in the February release.
Fix bug in the commands ‘fractures to tecplot’ and ‘channels to tecplot’ that causes invalid values in the elemental connectivity list depending on the order in which domains are defined in grok.
Fix bug that arises in transport simulations when multiple third-type boundary conditions are applied to the overland flow domain. This bug would cause boundary condition contributions to be applied twice to all third-type nodes in the overland flow domain.
Fix issue with the command ‘k reduction by impedance factor for chosen elements’ that arises when a simulation begins during a freezing event (i.e., a time-on panel). The issue causes HGS to wait until the next freezing event before applying the reduction factor to the k-values.
Update hsplot by writing the variable “Depth2Surf” to the prefixopm.dat file when the command ‘plot pm depth below ground surface’ is issued in the prefix.plot.control file.
Add new commands as part of the solute definition for the porous media domain (see hydrosphere_ref.pdf):
‘isotropic effective diffusion coefficient’
‘zoned isotropic effective diffusion coefficient’
‘anisotropic effective diffusion coefficient’
‘zoned anisotropic effective diffusion coefficient’
Note that this update makes the commands ‘effective diffusion coefficient by species’ and ‘effective diffusion coefficient list’ obsolete and causes grok to issue an error if they are used.
Add new command ‘scale k for chosen elements’ that scales hydraulic conductivity in grok for a set of chosen elements (see hydrosphere_ref.pdf).
Add new command ‘scale porosity of chosen elements’ that scales porosity in grok for a set of chosen elements (see hydrosphere_ref.pdf).
Add new particle tracing capabilities that compute the trajectory of ideal point-like particles as they move through the subsurface domain following the elemental velocity field. Particle tracing capabilities are implemented via the new commands (see Section Particle Tracing in hydrosphere_ref.pdf):
‘trace particle’ that causes HGS to activate particle tracing.
‘trace particle logging’ that causes HGS to write detailed information for each particle to an ASCII file.
‘initial particle location file’ that causes HGS to specify the initial location and release time for particles using an ASCII input file.
‘initial particle location by layer from file’ that causes HGS to specify the initial location by layer and release time for particles using an ASCII input file. Particles will be placed at the vertical mid-point of the assigned layer.
‘output times for particle locations’ that causes HGS to record particle locations at specified times.
‘maximum trace time’ that causes HGS to specify the maximum time at which particle traces are updated. Tracing effectively stops after this time.
‘maximum trace count’ that causes HGS to limit the maximum number of locations allowed in a particle trace path (can be used to limit memory consumption).
‘maximum trace output’ that causes HGS to limit the maximum number of particles to record in the particle trace and particle location output files.
‘maximum particle reflection count’ that causes HGS to limit the number of particle reflections that are permitted over a trace step when updating a particle's location. This command allows HGS to deactivate particles that are unable to move from one element to a neighboring element.
Update the reference manual hydrosphere_ref.pdf.
HGS Premium MARCH 2022 (Revision 2372)
Fix bug in command ‘nodal flux reduction by pressure head’ to ensure that pressure head is used when computing the flux reduction factor for fully saturated models.
Fix some potential data races in the parallel implementation of HGS.
Update hsbatch to run all test problems once instead of twice.
Switch the order of the thermal_molson and thermal_molson\injection verification tests in file verification.hsbatch since thermal_molson depends on thermal_molson\injection.
Update command ‘peclet number’ to issue warning messages to the .lst file every timestep if an exceedance of the user specified Peclet number is detected (see hydrosphere_ref.pdf). This update also fixes problems with how warning messages are issued when running in parallel.
New command ‘peclet verbose’ that controls the level of output for Peclet warning messages written to the .lst file (see hydrosphere_ref.pdf).
Update command ‘courant number’ to issue warning messages to the .lst file every timestep if an exceedance of the user specified Courant number is detected (see hydrosphere_ref.pdf). This update also fixes problems in how warning messages are issued when running in parallel.
New command ‘courant verbose’ that controls the level of output for Courant number warning messages written to the .lst file (see hydrosphere_ref.pdf).
New command ‘channels to tecplot’ that writes the channel mesh including zone number and 3D node number to a Tecplot ASCII file with a user specified name (see hydrosphere_ref.pdf).
Update grok to compute mesh quality metrics including element area, aspect ratio, edge ratio, min angle, max angle, and nearness to right triangle (triangles only) for each element in the 2D mesh and write summary statistics after the MESH SUMMARY section in the .eco file (see the section Mesh Quality in hydrosphere_ref.pdf).
New command ‘report mesh quality’ that writes the mesh quality metrics for the entire 2D mesh to the Tecplot ASCII file prefixo.mesh_quality.dat (see hydrosphere_ref.pdf).
Update observation well/point output files for flow and transport (interpolated and non-interpolated versions) by adding a new variable “Zsurf” that gives the surface elevation at an observation point.
Update the reference manual hydrosphere_ref.pdf with a detailed description of the raw mass balance file prefixo.mass_balance_raw.species.dat.
HGS Premium FEBRUARY 2022 (Revision 2356)
Fix bug that generates an empty scratch_etprops file when that file does not exist.
Fix bug that causes the command ‘zero order source with partitioning’ to act like its unpartitioned version.
Fix bug in the update of the hydraulic conductivity in the x-direction for the command ‘time varying k by impedance factor via temperature raster’.
Improve error checking and error messages for the command ‘initial head from output file’.
Generalize how $PATH is set for Linux installations to account for re-installations and updates to HGS.
Update the array_sizes.default file by removing old/unused dependencies and by replacing some dependencies with automatic array resizing.
Update command ‘make interpolated observation point’ to write interpolated concentration data for transport simulations to the prefixo.observation_well_conc.well_name.dat output file.
Update command `time varying k by impedance factor via temperature raster`:
Allow for multiple command invocations.
Add new parameter, interpolate, that allows users to specify whether temperature values are interpolated or not (see hydrosphere_ref.pdf).
Extend the HGS restart functionality to steady-state flow with transport simulations (see hydrosphere_ref.pdf).
New boundary condition command ‘reservoir with spillway’ that models a simple dam at a single node in the surface/channel domain of a model (see hydrosphere_ref.pdf).
New command ‘fractures to tecplot’ that writes the fracture mesh to a Tecplot ASCII file with a user specified name (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS Premium JANUARY 2022 (Revision 2342)
Fix bug that effects the command ‘time varying scaling of friction’ when the interpolate input parameter is set to true.
Fix bug introduced as part of revisions made in the October release of HGS that is responsible for incorrect zone assignments with the command ‘read overland zones from raster, dominant class’.
Fix potential issue with ET zone assignment that can cause ET zones to be applied on the top element layer only, depending on how the zones are specified in grok.
Improve the error messages issued by the boundary condition commands: ‘time value table’, ‘time file table’, ‘time raster table’, and ‘time-field data table from regional’. Error messages now contain the line number in the table where the error occurs.
Add warning message to use the control volume approach with running transport simulations with the finite differences.
Refactor the command ‘echo et at point’ to write its output to the ET PROPERTIES section of the .eco file.
Add new command ‘time varying snow melting constant’ that can be used to specify a time-varying snow melting constant via a time-value table for the snowmelt boundary condition (see hydrosphere_ref.pdf).
Add new command ‘fluid volume concentration threshold’ that computes a timeseries of the volume of fluid with concentration above and below a user specified concentration threshold for each solute, for the porous media and surface flow domains (see hydrosphere_ref.pdf).
Update the reference manual hydrosphere_ref.pdf.
HGS Premium DECEMBER 2021 (Revision 2332)
Fix the command ‘infilled’ for the well and tile domains. This command was listed in the reference manual but was never fully implemented (see hydrosphere_ref.pdf).
Fix bug in hydrograph computation for the channel flow domain that arises when using the common node approach.
Fix bug that causes unexpected behavior in the following commands when opening the input file fails:
‘choose elements am’,
‘choose elements xyz list’
‘choose elements list’
‘choose nodes xyz list’
‘choose nodes list’
‘choose nodes 2d-list sheet’
‘choose nodes top 2d-list’
Parallel solver updates:
Fix broken solver restart when convergence stagnation is detected.
Add missing convergence confirmation message, similar to serial solver.
Optimize the 3D face selection for large meshes. This update reduces memory usage, increases performance, and improves robustness to integer overflow, while at the same time preserving the original face numbering.
Refactor the command ‘elevation from xz pairs’ to remove its dependency on the array_sizes.default file.
Add new feature pre-processor variables in grok. This update allows users to define variables within their grok file, material property files, and files included via the ‘include’ command, similar to how variables are defined in batch files or shell scripts, albeit on a much simpler level. Set variables may then be used within a file as a stand-in for their value, with variable substitution taking place during scratch file generation (see hydrosphere_ref.pdf).
Add new command ‘time varying lai from raster’ that interpolates LAI values from a time-file table of raster files. If used, the assigned values override any zoned LAI values specified by ET properties (see hydrosphere_ref.pdf).
Add new command ‘time varying et zones from raster’. This command allows for time-varying zones by assigning ET zones from a time-file table. Note that ET material properties in ET properties files do not change over time, rather it is the spatial distribution of the ET zones that changes over time (see hydrosphere_ref.pdf).
Update the reference manual (hydrosphere_ref.pdf):
Improve descriptions of flow and transport observation wells/points, clearly stating the variables that are written to file.
Move regional model commands into their own subsection.
HGS Premium NoVEMBER 2021 (Revision 2321)
Fix bug in observation well output that causes the exponent character “E” to be truncated when the exponent contains three digits.
Fix bug in density dependent flow computation in the surface flow domain that causes large mass balance errors in the water balance output file.
Update rill storage computation in HGS to use the 2D pm element index when retrieving the elemental rill storage value. This update accounts for the fact that the surface domain element order may differ from the 2D porous media domain element order.
Update the runtime timestep output with new information in the form of “@NodePM” that provides the mesh node number corresponding to the “@Node” index (see hydrosphere_ref.pdf, Appendix C).
Add error checking for porosity out of range errors in grok and issue a warning message in grok if there are any porosity values that fall outside of their expected range (0, 1]. Checking is done for the porous media, dual continuum, and fracture domains.
Add new commands ‘fluid volume for chosen elements’ and ‘fluid volume for chosen elements by layer’. These commands compute timeseries of the stored volume of water within a set of chosen elements for the porous media domain and the surface flow domain if present (see hydrosphere_ref.pdf).
Add new command ‘fluid volume to tecplot’ that writes all fluid volume element selections generated by the above commands to an ASCII Tecplot output file (see hydrosphere_ref.pdf).
Update reference and theory commands hydrosphere_ref.pdf and hydrosphere_theory.pdf.
HGS Premium october 2021 (Revision 2311)
Fix computation of the “Top1m” and “Top0.1m” variables in the o.soil_balance output file when model length units are set to centimeters.
Fix array dimensioning bug in solute transport mass balance computation when using the ‘simple drain’ boundary condition.
Revert the optimizations made to the 3D face selection in the September release due to small discrepancies in the solution for some of the verification tests.
Update the commands ‘read overland zones from raster’ and ‘read overland zones from raster, dominant class’ which may produce incorrect zone assignments depending on the face selection.
Change filename of ET output file o.TotalET_olf to o.ActualET_olf. These changes are also reflected in the variable name in the o.olf file produced by hsplot.
Updates to the manuals:
Add missing command: ‘bed slope’ (see boundary condition ‘zero depth gradient’) to reference manual.
Add missing boundary condition command: ‘flux nodal from outlet’ to reference manual.
Update description of ‘soil water balance’ command in reference manual.
Minor clarifications to ET input and output in reference and theory manuals.
Add some missing units, fix some typos, and clarify some command descriptions in reference manual.
HGS Premium SEPTEMBER 2021 (Revision 2301)
Fix a bug that causes HGS to crash when using the Rain boundary condition with porous media as the domain type. The issue is related to the generation of the prefixo.rain_olf.XXXX binary output files and does not effect the computation of the Rain boundary condition.
Refactor 3D face selection to significantly reduce its memory usage and increase its performance for large meshes.
Issue an error from 2D random fracture generation (command ‘begin 2D random fractures’) if the mesh does not consist of hexahedral block elements.
Update 3D random fracture generation (command ‘rfgen driver’):
Add mesh summary output to the .eco file that provides stats for the initial grid prior to any refinement by fracture generation and the final grid after all refinement has completed.
Issue an error if the mesh does not consist of hexahedral block elements.
Fix a bug that causes the random number generator to be reseeded unexpectedly resulting in variations in random fracture generation between runs.
Optimize fracture generation for better performance with large meshes.
Add new command ‘report nodal mass storage for chosen nodes’ that reports the mass stored, decay rate (dissolved), mass sorbed, and decay rate (sorbed) accumulated over the chosen nodes for each domain (pm, dual, fracture, olf), each species, and at each timestep (see hydrosphere_ref.pdf).
Updates to the manuals:
Fix typo in the cross-references between verification tests shipped with the HGS installation and the corresponding sections in the verification manual.
Add missing descriptions for the commands ‘choose elements shp’ and ‘choose nodes shp’.
Update name of zero-depth gradient boundary condition to ‘zero depth gradient’ to match grok.
Update the descriptions for the commands ‘reduce 2d grid, boundary file’ and ‘remove rectangles with shapefile’.
Add some missing units and fix some typos.
HGS Premium AUGUST 2021 (Revision 2291)
Fix bugs in the commands ‘tilt grid x’ and ‘tilt grid y’.
Fix bug in computation of overland flow horizontal fluxes for polygon tracking.
Refactor 3D segment selection to significantly reduce its memory usage and increase its performance for large meshes. These updates also fix a potential access violation error.
Update the verification tests by adding the commands ‘restart write off’ and ‘generate time report’.
Issue warning messages from the commands ‘mean age’, ‘snapshot mean age’, ‘snapshot mean life expectancy’, ‘find zero age zones’, ‘travel time pdf’, ‘travel time cdf’, and ‘travel time pdf from cdf’ if not a steady-state simulation.
Reformat the mesh summary written at the end of the .eco file.
Update the allocation failure error message in HGS to match the corresponding error message issued in grok.
Add the new command ‘zero order source with partitioning’ that is similar to the command ‘zero order source’; however, it defines the effective production rate in terms of the production rate at saturated conditions, the water saturation, and an aqueous/gas phase partitioning coefficient (see hydrosphere_ref.pdf).
Updates to the manuals:
Add cross-references between verification tests shipped with the HGS installation and the corresponding sections in the verification manual.
Remove any mention of tetrahedral elements from the reference and theory manuals.
Update evapotranspiration sections in the reference and theory manuals.
Add missing units, fix incorrect command descriptions, and fix typos in the reference manual.
HGS Premium JULY 2021 (Revision 2280)
Fix bug that causes additional and unwanted output files to be generated when the user specified minimum timestep is sufficiently small (< 1e-10).
Fix bug introduced in the June release (revision 2270) that arises when the ‘impermeable matrix’ command is used.
Fix bug that causes grok to crash without an error message when the number of surface flow domain zones exceeds the maximum value specified by “surface flow: material zones” in the array_sizes.default file.
Fix bug writing the file header for the o.fluid_mass_balance output file.
Improve error checking for the PET boundary condition by issuing an error message if it is used in a model that lacks a surface flow domain.
Add flag to output_variable.control file that controls the output of velocities in the fracture domain to the o.v_frac output file.
Update the values reported in the o.rain_olf output file to be the flux from the Rain boundary condition. Add the new output file o.flux_olf that reports the total flux for all specified flux boundary conditions (i.e., the same output as the old o.rain_olf file).
Update the reference manual (hydrosphere_ref.pdf).
HGS Premium JUNE 2021 (Revision 2270)
Fix bug that causes erroneous values to be written to the o.ExchFlux_chan output file when only the porous media and channel flow domains are present.
Fix integer to string conversion error in hsplot that causes it to crash in certain applications.
Fix bug that causes mass balance reporting errors for combinations of certain boundary conditions when there are overlapping nodes between them, for example, Rain/Flux + Simple Drain/Simple River.
Fix bug writing initial head and concentration values to the output files o.hi and o.ci, respectively, when cut-off walls are used.
Fix bug in the computation of the heat flux boundary condition.
Use case insensitive comparison when parsing ‘skip on/off/rest’ commands.
Add the new command ‘choose faces by nodes list’ that allows users to specify an end-terminated list of nodal vertices to choose multiple faces (see hydrosphere_ref.pdf).
Add the new commands ‘report water table at xy’ and ‘report water table at node’ to report the depth to water table and water table elevation within a vertical column of nodes (see hydrosphere_ref.pdf).
Add the new command ‘generate time report’ that causes HGS to write an output file that contains the information found in the simulation time report at the end of the o.lst file (see hydrosphere_ref.pdf).
Add the new command ‘rdf table’ that allows users to input a table of relative depth-density values to define root length density (see hydrosphere_ref.pdf).
Add a new HGS restart feature that allows you to easily restart an HGS simulation at an intermediate point in the simulation progress (see Restarting a Simulation in hydrosphere_ref.pdf).
Update the command ‘zones from arcview for chosen elements’ with improved error checking on its inputs.
Update the Potential Evapotranspiration and Snowmelt boundary conditions with improved error checking that user selected faces belong to the top boundary of the model.
Update the reference manual (hydrosphere_ref.pdf).
HGS Premium MAY 2021 (Revision 2255)
Note: From this point onwards the user manual (hydrosphere_user.pdf) has been renamed to the theory manual (hydrosphere_theory.pdf).
Fix bug that causes certain outputs to the mass balance output file to appear as zero when running transport with slice fluxes enabled.
Fix bug in hsplot related to writing the 3D node number when olf wall nodes are present.
Set default locations for the grok, phgs, and hsplot executable files in hsbatch. If the user does not provide a path to an executable, then hsbatch will use the executable found by searching the default search path.
Refactor the commands ‘time dependent K for chosen elements’ and ‘time dependent variable K for chosen elements’ to improve their memory usage in grok.
Optimize the computation of the storage, vertical fluxes, and horizontal fluxes in the pm and olf domains made by the commands ‘fluid mass balance for olf areas using shp file’ and ‘fluid mass balance for olf areas using shp file by layer’.
Refactor reading of porous media binary mesh files by phgs to increase speed of file reads for large meshes.
Refactor the command ‘generate individual fracture and read parameters from file’ to improve memory efficiency for large meshes. Note that the syntax for this command has changed (see hydrosphere_ref.pdf).
Optimize the listing of fracture properties to the .eco file when the number of fracture zones is large.
Add wall clock time and percent completed to the newton_info.dat file making it a useful tool to track simulation progress.
Add the new command ‘choose node xy top’ that chooses the node on the top sheet whose xy-coordinates are nearest to the user specified xy-coordinates (see hydrosphere_ref.pdf).
Add the new command ‘fluid mass balance for olf areas using shp file by layer’ which is similar to the existing command ‘fluid mass balance for olf areas using shp file’ and allows the user to specify a layer range for the pm domain output (see hydrosphere_ref.pdf).
Add the new command ‘elevation-discharge table’ that defines a tabular stage-discharge relationship used by the ‘flux nodal by pressure’ boundary condition (see hydrosphere_ref.pdf). The specified volumetric flux is computed from the table via linear interpolation of total head.
Updates to the Linux build:
Set RPATH/RUNPATH linker flag so that HGS executables can find intel dependencies relative to the executable path at runtime without using LD_LIBRARY_PATH.
The Linux build now runs on the ManyLinux2010 platform to ensure backwards compatibility with as many Linux platforms as possible.
Updates to the manuals:
Rename the user manual to the theory manual: hydrosphere_user.pdf to hydrosphere_theory.pdf.
Add the appendix on GMS into the reference manual.
Update the appendix on hsbatch in the reference manual.
Update the command description for ‘choose face by nodes’ in the reference manual.
HGS Premium APRIL 2021 (Revision 2240)
Fix bugs related to using dual node fractures in a transport simulation.
Fix bugs in command 'time varying maximum timestep'.
Fix mass balance reporting bug for 'simple drain' boundary condition.
Fix bug in command 'generate layers from gms 2d grid'.
Fix bug in command 'relative permeability xy' for the dual domain.
Fix bug in command 'newton absolute maximum residual' that stops the timestep from being cut when the condition is satisfied in the first Newton iteration.
Fix bugs in command 'generate individual fracture and read parameters from file':
Make sure that aperture values are assigned from the input file.
Make sure to build the fracture to element face mapping.
Set the size of the filename read by the command 'properties file' to 256 characters for all domains.
Add the number of nodes in each domain (dual node approach) and the number of layers to the summary that is written at the end of the .eco file.
Refactor the command 'fluid mass balance for olf areas using shp file' to improve error checking on inputs and to allow the user to specify a unique character string label for an area.
Refactor the commands 'K reduction by impedance factor for chosen elements' and 'time varying K by impedance factor via temperature raster' to work together with the commands 'soil frost K', 'soil frost K by ratio', 'time dependent K for chosen elements', 'time dependent variable K for chosen elements', and 'permafrost k' in a multiplicative fashion.
Add the new command 'limit zone output' that causes grok to limit the output of some zonal information (e.g., material properties) to the .eco file for all domain types (see hydrosphere_ref.pdf).
Updates to manuals:
Remove verification and illustration chapters from the theory manual (hydrosphere_theory.pdf) and add the illustration chapter to the verification manual (hydrosphere_verif.pdf).
Update all hard-coded manual citations and references to BibTex format. Add in all missing citations and references.
Move command 'minimum layer thickness with fixed top elevation' as a subcommand of the 'new layer' command to a subcommand of the 'generate layers interactive...end' command (see hydrosphere_ref.pdf).
Add the missing description of the command 'fluid mass balance for olf areas using shp file' to the reference manual (see hydrosphere_ref.pdf).
HGS Premium MARCH 2021 (Revision 2223)
Update HGS and hsplot to issue warning messages if their version number does not match the version number of grok.
Update boundary condition ‘irrigation on demand’ to issue an error if the irrigation duration is greater than the irrigation recurrence interval.
Update the command ‘compute post simulation average’ so that it will parse a wider range of Tecplot timeseries output files.
Update the filenames generated by commands ‘auto save on’ and ‘output et details’ to match the filenames in the reference manual (see hydrosphere_ref.pdf).
Add the new commands: ‘read elemental k from binary file’, ‘read elemental porosity from binary file’, ‘read elemental tortuosity from binary file’, and ‘read elemental specific storage from binary file’. These commands behave similarly to their counterparts that read properties from ASCII files (see hydrosphere_ref.pdf).
Fix negative aperture values in random fracture aperture generation. If a negative aperture value is generated from the uniform distribution, then issue an error. For the normal distribution, sample repeatedly with rejection until either a strictly positive aperture value is obtained, or until the maximum iteration count is reached, resulting in an error.
Fix array dimensioning bug in ‘freundlich isotherm’ commands.
Fix array dimensioning bug in ‘observation well’ commands.
Fix bug in command ‘K tensor’ that was not assigning the off-diagonal values correctly.
Update the free-solution diffusion coefficient default value from 0.0 to 1.0e-9 m^2 / s to avoid the solver blowing up when running thermal transport with the default value.
Fix bug in command ‘generate individual fracture and read parameters from file’ so that it can be called multiple times in an additive manner.
Issue warning messages from grok when:
Attempting to run an unsaturated model in steady state.
Attempting to run a fully integrated model in steady state.
Adaptive timestepping is disabled.
Update the reference manual (hydrosphere_ref.pdf):
Add missing boundary condition description ‘flux nodal pressure’.
Update reported default property values to match those in HGS.
Fix typos, grammatical mistakes, and formatting issues.
HGS Premium February 2021 (Revision 2209)
Fix bug in grok parsing of ‘skip on/off’ commands that causes included files to be opened when they belong to a skip on/off block.
Fix bug when writing header of prefixo.soil_balance.dat output file.
Fix bug when writing evapotranspiration variables to header of prefixo.water_balance.dat output file.
Fix bug in velocity computation for saturated flow with triangular prism elements.
Update boundary condition ‘specified third-type concentration’:
Fix bug when using triangular prism elements.
Refactor the computation when using the control volume approach.
Update output variable control:
Fix bug related to suppressing output of variables ‘ETPmEvap_3D’ and ‘ETPmTranspire_3D’.
Add flag ‘time_varying_k_pm’ to the file prefixo.output_variable.control that controls the output of time-dependent K.
Fix bug in boundary condition ‘simple drain’. Removing mass from simple drains for transport simulations.
Fix bug in 2D random fracture generation when used in conjunction with the command ‘adapt grid to fractures’ that could cause grok to crash.
Fix bugs in zone assignment that could cause grok to crash.
Fix bug in computation of slice fluxes that would cause zero to be reported for the overland flow and discrete fracture domains for certain node selections.
Add new command ‘number of digits for output file suffix’ to grok and hsplot (see hydrosphere_ref.pdf). This command allows the user to set the number of digits in the output file time number, i.e., 0001, 0002, 0003,..., etc.
Add new command ‘maximum number of boundary conditions to report’ that controls the number of boundary conditions listed in the water balance output file prefixo.water_balance.dat (see hydrosphere_ref.pdf).
Add new command ‘steady state density dependent flow’ that causes HGS to perform a steady-state density dependent flow solution (see hydrosphere_ref.pdf).
Update the reference manual (hydrosphere_ref.pdf):
Update the Quick Start Guide with a better description of HGS installation.
Fully update the appendix Output Files.
Update the appendix HSBATCH: Batch Run Utility.
Rewrite the appendix on HSPLOT: Visualization Post-Processor.
Update the descriptions of the flow and transport mass balance.
HGS Premium January 2021 (Revision 2190)
Fix bug that causes non-increasing output times in flow solution output files when a transport solve fails and the flow solution is recomputed with a cut timestep.
Refactor command ‘map fractures from mofrac vtk file’:
Generate the output file VTK_Frac_To_Frac_ElemID.dat that contains the mapping between HGS fracture element ID and the input VTK fracture element group ID.
Identify any degenerate elements in the input fracture mesh and output them to the console and .eco file. If any such elements are found, write an updated fracture mesh in MoFrac VTK format with those elements removed, and then terminate grok.
Fix array allocation size errors that cause HGS to crash at various points in the execution of the command.
Issue an informative error message if the domain decomposition partitioning fails with more than one CPU/subdomain.
Add the Simple Drain boundary condition to the raw and cumulative mass balance output files.
Add test for Inf or NaN to transport solution. Test the new concentration for Inf or NaN and terminate HGS with an error message if either is detected.
Add new command ‘time varying scaling of friction’ that scales the x and y frictions set by the commands ‘x friction’, ‘y friction’, or ‘time varying friction...end’ (see hydrosphere_ref.pdf).
Fix bugs in the velocity computation that were introduced as part of refactoring done in the December 2020 release.
Update the reference manual (hydrosphere_ref.pdf).
HGS Premium December 2020 (Revision 2179)
Add error checking to boundary condition node sets. For each boundary condition that defines a node set, check that the nodes in the set belong to the specified domain. If they do not, issue a warning message.
Add new commands ‘zoned nonlinear decay with temperature’ and ‘zoned dual nonlinear decay with temperature’ (see hydrosphere_ref.pdf).
Fix bug in the z-velocity computation for unsaturated, density dependent flow with triangular prism elements.
Write Tecplot formatted output file Mapped_FracElem_Input_Params.dat from command ‘generate individual fracture and read parameters from file’.
Write output files from command ‘map fractures from mofrac vtk file’:
File MappedFrac_VTKFaceid.dat contains face ID information mapped onto an HGS domain.
File Mapped_FracElem_Param.dat contains fracture element IDs, its corresponding three node IDs (assuming triangular elements), and default parameter values for thickness, hydraulic conductivity, porosity, and specific storage.
Improve performance of slice flux computations (‘slice flux output nodes from chosen’ and ‘slice flux contributing nodes from chosen’) for transport solution.
Fix bug in hydrograph output for channel flow domain when using the common node approach.
Add new command ‘compute post simulation average’ (see hydrosphere_ref.pdf). This command computes the time-weighted average of a specified variable in an HGS output file over a time interval [tstart, tend]. Averages are computed in a post simulation processing step after all output files have been generated.
Refactor the command ‘time dependent K for chosen elements’ (see hydrosphere_ref.pdf). If you issue the command twice and there are elements common to both instances of the command, then only the time series from the last command will be honoured. This update aims to fix this problem by merging overlapping time series on a per element basis.
Fix missing output in the file prefixo.mass_balance_raw.dat. The "FreeDrain-" variable is written to the header but never written to the output file.
Change the name of output file from command ‘read rill storage from raster’ to prefixo.elemental_rill_storage.dat.
Update the reference manual (hydrosphere_ref.pdf) and theory manual (hydrosphere_user.pdf).
HGS Premium November 2020 (Revision 2166)
Add new command 'zero order source saturation threshold' that works in conjunction with the command 'zero order source' to control which nodes act as zero-order source nodes based on a nodal saturation threshold (see hydrosphere_ref.pdf).
Add new command 'choose nodes lateral boundaries' that selects nodes belonging to the lateral boundary of the porous media domain (see hydrosphere_ref.pdf).
Improve error checking when reading raster files in grok.
Improve error checking in the command 'generate uniform blocks' (see hydrosphere_ref.pdf).
Fix bug in command 'zones from arcview ascii grid' when applied to overland flow domain.
Update the reference manual (hydrosphere_ref.pdf):
Add run-time timestep output appendix.
Add a warning message to the specified head boundary condition.
Change command name 'make fractures from tecplot file' -> 'map fractures from tecplot file'.
Add command 'map fractures from mofrac vtk file'.
Add command 'defined flow'.
Add command 'permafrost formation from file'.
Add command 'permafrost k'.
Add command 'permafrost porosity'.
Add command 'permafrost effective diffusion coefficient'.
Add command 'effective diffusion coefficient by species'.
Add command 'effective diffusion coefficient list'.
Add command 'time varying maximum timestep'.
Add command 'snapshot mean age'.
Add command 'snapshot mean life expectancy'.
Add command 'plot pm depth below ground surface'.
HGS Premium October 2020 (Revision 2159)
Add a new specified flux boundary condition type ‘irrigation on demand’ that adds a prescribed volume of water to the surface of a model over a given time duration (see hydrosphere_ref.pdf).
Add a new warning message feature to grok that accumulates any issued warning messages and prints them to the console and the .eco file at the end of the grok run.
Reformat the simulation time summary that is reported at the end of an HGS simulation.
Add pressure head reporting to the o.reservoir output file.
Add new command ‘generate individual fracture and read parameters from file’ that assigns individual information to a fracture domain (see hydrosphere_ref.pdf).
Deprecate commands ‘read gms 2d grid’ and ‘elevation from gms file’, and remove them from the reference manual.
Update the reference manual (hydrosphere_ref.pdf):
Remove section "Imported From GMS".
Add boundary condition command ‘scaling factor’
Add boundary condition command ‘makeup water’
Add boundary condition command ‘reservoir’
Move appendices from theory manual; see below.
Update the theory manual (hydrosphere_theory.pdf):
Remove section "A V-shape catchment with water supply and sanitary sewer systems".
Move appendices "Output Files", "Run-Time Debug Utility", "HSBATCH: Windows Batch Run Utility", "HSPLOT: Visualization Post-Processor", and "Raster File Formats" to the reference manual. Remove the appendix on "GMS file formats".
HGS Premium September 2020 (Revision 2148)
Add new commands to the solute definition (see hydrosphere_ref.pdf):
‘nonlinear decay with saturation’
‘zoned nonlinear decay with saturation’
‘dual nonlinear decay with saturation‘
‘zoned dual nonlinear decay with saturation‘
‘nonlinear decay with temperature’
‘dual nonlinear decay with temperature’
‘freundlich isotherm‘
‘zoned freundlich isotherm‘
‘dual freundlich isotherm’
‘zoned dual freundlich isotherm’
‘solute uptake by plant roots’
Add new commands to the transport initial conditions (see hydrosphere_ref.pdf):
‘solute 1d temperature profile’
‘solute dual 1d temperature profile’
Add number of successful tests to hsbatch output.
Refactor unit conversions of physical constants, default properties, and default values of grok command inputs.
Add the line "# element node lists" to the Tecplot output files generated by the following commands:
‘mesh to tecplot’
‘k to tecplot‘
‘kd to tecplot‘
‘porosity to tecplot‘
‘tortuosity to tecplot‘
‘first-order decay to tecplot‘
‘et zones to tecplot‘
Mark the old command ‘zones from arcview’ as deprecated and replace it with the newer and equivalent command ‘zones from arcview for chosen elements’. Note that the input syntax and supported features for this command have been updated (see hydrosphere_ref.pdf).
Fix indexing error that affects transport simulations run in finite difference mode with an unsaturated subsurface and an overland flow domain.
Major revisions to the reference manual hydrosphere_ref.pdf.
Minor revisions to theory manual hydrosphere_theory.pdf.
HGS Premium August 2020 (Revision 2139)
Minor update to command ‘read rill storage from raster’.
Generate o.head_frac and o.conc_frac output files for both common node and dual node approaches.
Update the Windows installer:
Add HGS installation directory to the user PATH on installation.
Add Windows dependency msvcp140.dll.
Minor updates to hsbatch:
Fix hard coded path separators.
Update executable timing with simple timer class.
Add total simulation output time to hsbatch execution summary.
Add new command ‘report exchange for chosen nodes’ (see hydrosphere_ref.pdf). This command generates timeseries exchange flux output for the overland flow or channel flow domains for a given node selection.
Update pore water freezing and thawing:
Specify fixed units for default values that carry units. Convert to the user specified unit system.
Set degrees Celsius as units for all temperature inputs.
Add new section to theory manual (hydrosphere_user.pdf): Dual Domain Freezing and Thawing of Pore Water.
Change integration convergence criteria to 0.01 in verification test abdul_snowmelt.
Update units in reference (hydrosphere_user.pdf) manual for commands ‘X friction’ and ‘Y friction’.
Bug fixes:
Add channel, well, and tile exchange fluxes to the water_balance.dat file when slice fluxes are active.
Change #zone to #propnum in command ‘mesh to tecplot’ output.
Remove pore water freezing and thawing output from well observation file when computing steady-state flow solution.
HGS Premium July 2020 (Revision 2129)
Note to Linux users: the Linux installation now includes verification tests located in the verification directory under the install directory.
Refactor hsbatch and the verification tests to run in Linux.
Refactor the command ‘pore water freezing-thawing…end’:
Update the formulation for the calculation of ice saturation in the dual domain in support of the command ‘dual freezing by pm temperature’.
Add new command ‘integration maximum iterations’ (see hydrosphere_ref.pdf) that sets the iteration limit for the approximation of the convolution integral.
Add the computed porous medium temperature as “Temperature” output to observation point/well files.
Add undocumented command ‘no freezing in dual domain’ to the reference manual (hydrosphere_ref.pdf).
Fix bug in command ‘map zone numbers from regional model’ when domain is set to ET.
Set boundary condition commands ‘seepage’ and ‘seepage node’ as deprecated in grok. Users should prefer the ‘simple drain’ boundary condition.
Add new command ‘choose faces 3pt disk’ (see hydrosphere_ref.pdf) that selects faces belonging to a disk. This command is similar to the existing command ‘choose faces 3pt plane’.
Fix bug in command ‘read gms 2d grid’ when rectangular mesh elements are used.
Refactor command ‘reduce 2d grid, boundary file’ to work with rectangular mesh elements.
Fix bug in command ‘generate uniform triangles’ related to the number of nodal connections.
Fix bugs in mass balance reporting that arise from the command ‘pore water freezing-thawing...end’ and the ‘snowmelt’ boundary condition.
Update the reference manual (hydrosphere_ref.pdf):
Add ET domain to description of command ‘map zone numbers from regional model’.
Update description of command ‘time file table’.
Remove ‘seepage’ and ‘seepage node’ boundary conditions.
Remove OPENDX output format.
Remove hsplot support for the GMS output format.
HGS Premium June 2020 (Revision 2117)
Add new command ‘elevation from tsurf file’ (see hydrosphere_ref.pdf) that reads and assigns elevations from a GoCAD tsurf file.
Add new command ‘read pm zones from voxet file’ (see hydrosphere_ref.pdf) that reads and assigns zone numbers from a GoCAD voxet file that has been exported to an ASCII format.
Add new command ‘vertical slice flux by layer’ (see hydrosphere_ref.pdf). This command is similar to the command combination ‘slice flux output nodes from chosen’ and ‘slice flux contributing nodes from chosen’, the difference being that the contribution to the total mass flux by each layer in the porous media domain is written to the output file.
Add new command ‘k anisotropic by ratio’ (see hydrosphere_ref.pdf) that sets the hydraulic conductivity in the x- and y-directions to kval and to kratio * kval in the z-direction.
Add new command ‘et zones to tecplot’ (see hydrosphere_ref.pdf) that outputs the zone selection for the porous media elements in the ET domain to a tecplot file.
Add new command ‘generate uniform triangles’ (see hydrosphere_ref.pdf) that generates a 2D rectangular mesh of uniform triangles.
Fix bug in grok in which some inline comments are not ignored resulting in problems parsing the grok file.
Update the reference manual (hydrosphere_ref.pdf):
Remove unsupported and deprecated command ‘density-dependent transport’.
Add the missing command ‘relative concentration’ to the set of solute input commands.
Update the description of the command ‘picard convergence criteria’ to include missing input.
HGS Premium May 2020 (Revision 2109)
Add new command ‘make interpolated observation point’ (see hydrosphere_ref.pdf) that linearly interpolates output values over the element that contains the specified observation point.
Add new command ‘canopy evaporation interval’ (see hydrosphere_ref.pdf) that limits the canopy evaporation rate over a specified time interval by allowing canopy storage to empty only once per interval.
Add new command ‘time varying K by impedance factor via temperature raster’ (see hydrosphere_ref.pdf) that reduces hydraulic conductivities for a set of chosen near surface nodes when the surface temperature drops below the freezing temperature. Reduction in K is based on an impedance factor formulation.
Add missing variables T_PM and E_PM to header in output files prefixo.observation_well_flow.well_name.#.dat.
Modify some input parameters for the shikaze and one well injection and pumping verification tests to improve results with control volume activated.
Bux fixes:
Fix output suppression of command ‘fluid mass balance for olf areas using shp file’ when the command ‘slice flux output nodes from chosen’ is also present.
In boundary condition ‘flux nodal from outlet’ when linking to a ‘flux nodal by pressure’ boundary condition. The bug causes incorrect output for the ‘flux nodal from outlet’ boundary condition in the prefixo.water_balance.dat file.
Minor fixes related to heat transport.
Resolve stack overflow errors caused by large automatic arrays that arise when running in debug mode.
HGS Premium April 2020 (Revision 2102)
Add new command ‘time varying surface friction by temperature raster’ (see hydrosphere_ref.pdf) that reduces the surface conductivity by increasing the surface friction at freezing temperatures.
Add new command ‘newton absolute maximum residual’ (see hydrosphere_ref.pdf) that restarts a Newton iteration with a smaller timestep if the norm of the nonlinear residual exceeds a user specified maximum size.
Add output of evaporation and transpiration for the 3D subsurface to file prefixo.observation_well_flow.well_name.#.dat for visualization with hsplot.
Fix bug in thermal_molson verification test when using control volumes and implicit time weighting.
HGS Premium March 2020 (Revision 2098)
Refactor command ‘time-field data table from regional’ to interpolate local nodal values from the regional values over regional model elements.
Update command ‘pore water freezing-thawing’.
Add new subcommand ‘interpolate surface temperature’ that interpolates surface temperatures over a time window. By default interpolation is turned off.
Output the bulk porous medium temperature to an nprops file (prefixo.freeze_thaw_temp_pm.#)
Add bulk porous medium temperature output to hsplot.
Add new command ‘read rill storage from raster’ (see hydrosphere_ref.pdf) that computes the rill storage height for each element in the surface layer of the model from elevations in a raster file.
Fix bugs in verification test files:
.grok file in thermal_molson
.grok file in abdul_snowmelt
.mprops file in 1D_structures/3_theis_unsat_common
.mprops file in 1D_structures/4_theis_unsat_dual
HGS Premium February 2020 (Revision 2093)
Note: from this point onward the Linux and Windows versions are on the same revision number.
Add new command ‘surface temperature from raster’ to ‘pore water freezing-thawing’ that allows the user to specify heterogeneous surface temperature profiles over a range of times from a time-raster file table.
Add new command ‘time-field data table from regional’. This command, which is part of the boundary condition specification, reads a time-value table for head values from a regional model and maps them by sheet to the local model for a set of chosen nodes.
Fix stack overflow errors by allocating large arrays on the heap. Affected commands include: ‘choose elements gb’, ‘choose faces vertical from gb nodes’, ‘choose faces gb’, ‘choose faces top gb’, ‘choose faces top gb exclude’, ‘choose faces top gb common’, ‘choose nodes top gb’, and ‘choose nodes gb’.
Refactor calculation of the temperature of the bulk porous medium used by the command ‘pore water freezing-thawing’.
HGS Premium December 2019 (Revision 2084 for Windows/2085 for Linux)
Update "backward trace particle" feature. Note: backward trace particle works only with steady flow field.
Minor bug fix: 1) increasing default number of material zones to 100 and 2) including zone size check.
HGS Premium November 2019 (Revision 2073 for Windows/2074 for Linux)
Minor bug fix in command: ‘fluid mass balance for olf areas using shp file’. The information about vertical fluxes (QV+ and QV-) has now been correctly written in the output file (prefixo.fluid_mass_balance.area.#.dat).
HGS Premium October 2019 (Revision 2068 for Windows/2069 for Linux)
Update interactive multi-model simulation for transport: 1) 'initial concentration from regional output file' command added and 2) 'specified concentration from hgs run' command for the communication among simulations.
Update transient particle tracing: 'particle tracing' command works for transient flow
Minor bug fix: 1) removing duplicate fractures using SAM, min/max coordinates obtained properly and 2) indexing the tvk_pm output files on model restart using RESTART_FILE_INFO.dat.
HGS Premium September 2019 (Revision 2063 for Windows/2065 for Linux)
Update GROK to allow for multiple “include” commands in a grok file.
Minor changes and bug fixes: 1) added a message for an error location in reading table values, 2) increased etprop file name length, 3) added olfwall array initialization for every case
NOTE: As of September 2019, HGS (2063 Windows) uses the dynamic libraries (i.e., libifcoremd.dll, libiomp5md.dll, libmmd.dll) for Intel compiler libraries 2019 and thus, HGS (2063 Windows) will not work with older dynamic libraries (e.g., 2057 Windows or before). Please download new dynamic libraries from HERE.
HGS Premium August 2019 (Revision 2057 for Windows/2058 for Linux)
Update HGS to allow for output file indexes with more than 4 digits.
Pressure-saturation and saturation-relative permeabilities must be sorted in increasing order.
Added latent heat for water and ice properties.
For your prefix.grok file,
thermal conductivity of ice
value
specific heat capacity of ice
value
density of ice
value
latent heat of water
value
Added an option: ‘write nodal relative permeability for elements’. This option is to output the nodal relative permeabilities for every element (to reconstruct the darcy fluxes for independent particle tracking routines).
Remove deprecated output files: prefixo.vel, prefixo.vel_gb, and prefixo.sat.
Minor bug fixes: 1) improve HGS computation for command combination (e.g., ‘slice flux output nodes from chose’ & ‘slice flux contributing nodes from chosen’), 2) increase the zoned mass balance output buffer for a model with sufficiently many layers, and 3) Introduce the heat_transfer LOGICAL.
HGS Premium July 2019 (Revision 2041 for Windows/2042 for Linux)
Add new commands: ‘map fractures from mofrac vtk file’. In grok, a feature to identify the fracture faces using MoFRAC fracture network data (VTK format). This new feature supports both triangular and rectangular meshes. Users are required to assign the command and corresponding values in the grok file (prefix.grok).
Under a fracture domain for your prefix.grok file,
map fractures from mofrac vtk file (command)
vtk input file name (characters)
mapped fracture file name (characters)
maximum number of fractures in a vtk input file (maxfracgrp , integer variable)
logical variable for visualizing a vtk input file with a tecplot format (logical variable)
tecplot ouput file name if true for the input vtk file (characters)
Add new commands: ‘choose nodes polyline by sheet’ and ‘choose nodes polyline top sheet’
Refactor computation of flux through volumes for the flow solution to improve efficiency.
Minor bug fixes: 1) hsplot working without head_pm files, and 2) Minor update to read_olf_zones_from_raster_dominant.
HGS Premium June 2019 (Revision 2030 for Windows/2031 for Linux)
Manual update (hydrosphere_ref.pdf & hydrosphere_user.pdf): Change name of command to match the manual: choose segments node list -> choose segments am node list.
Bug fix: 1) boundary condition linking (checking no data values for transient flux values specified at an inlet node and changing boundary condition time panel index); 2) particle tracking (assigning lower velocity cutoff values and adding cumulative travel time length).
HGS Premium May 2019 (Revision 2021 for Windows/2022 for Linux)
Manual update (hydrosphere_ref.pdf & hydrosphere_user.pdf): Grid Builder has been removed from ref and theory manuals except when it pertains to GMS.
Added new commands: 1) initial head from regional output file with depth scaling; 2) map zone numbers from regional model by layer; 3) map k from regional model list file by layer; 4) K reduction by impedance factor for chosen elements (see hydrosphere_ref.pdf)
Pruned/renamed grid builder (gb) commands: all gb related commands will be deprecated in the near future. AlgoMesh (am) related commands are commanded.
Bug fix: 1) write_split_mesh_to_tecplot, which splits block elements (nln=8) into tetraedra; 2) checking statement for (nzones_dstar and nzones_prop) and (nspeciesmob and nspec_dstar); 3) Tunnel boundary condition: flow and transport; 4) read polyline and polygon shp files; 5) error checking for command minimum layer thickness. Raises an error if this command is issued outside a new layer block; 6) checking statement for (nzones_dstar and nzones_prop) and (nspeciesmob and nspec_dstar).
Permafrost related commands (‘permafrost porosity’ and ‘permafrost effective diffusion coefficient‘) have been added. In grok, users are required to assign these commands to activate changes in porosities and effective diffusion coefficients of permafrost materials. It should be noted that the changes in permafrost porosity may cause solute mass balance errors when solute transport is performed.
For your prefix.grok file,
interpolate permafrost
permafrost formation from file
For your *.permafrost prop file,
permafrost k
kx ky kz values
permafrost porosity
porosity value
permafrost effective diffusion coefficient
effective diffusion coefficient value
HGS Premium April 2019 (Revision 2005 for Windows/2006 for Linux)
Update for the regional model mapping feature: 'write all layer nprop files' has been added to write all layer nprop values mapped from a regional model (output file: prefixo.nprop.Sheet_000); 3) minor bug fixed.
'write separate mass balance for boundary condition link' has been added to write separate output files for boundary condition links: .
‘effective diffusion coefficient by species’ has been added. In grok, users are required to assign this command to activate unique effective diffusion coefficients by zones and species. The numbers of zones and species are also required in your grok file (prefix.grok). Additionally, effective diffusion coefficients by zones and species should be input in your material property file (e.g., *.mprop).
For your prefix.grok file,
effective diffusion coefficient by species
number of zones, number of species
For your *.mprop file,
effective diffusion coefficient list
Species 1, Species 2, ..., Species n
HGS Premium February 2019 (Revision 1998 for Windows/1999 for Linux)
‘snapshot mean age’ and ‘snapshot mean life expectancy’ commands have been added to compute and output of “snapshot” mean age or mean life expectancy at multiple specified output times for a transient flow simulation. Users are required to assign either of the commands in the grok file. Note: the mean age (or mean life expectancy) model is theoretically based on a steady-state flow condition, but the new commands activate the mean age (or mean life expectancy) calculations with an assumption that the flow condition at an output time is proxy steady state.
Printout ‘nodal ice saturation’ in dual continuum for Tecplot and observation well files when ‘freezing thawing’ and ‘dual continuum’ are activated.
Minor bug fixed: grid mapping and ice saturation dual.
HGS Premium January 2019 (Revision 1989 for Windows/1990 for Linux)
‘plot pm depth below ground surface’ command has been added to plot pm depth below ground surface. Users are required to assign the command in the plot control file (prefix.plot.control). In cases where a simulation is performed with an old version of HSPLOT, the new command will not be in the plot control file. To solve this problem, users are required to delete the old plot control file, run HSPLOT (version 1989 or higher), and activate the plot pm depth below ground surface command in the additional post-processing feature section, which is located at the bottom of the plot control file.
‘maximum number of boundary conditions to report’ has been added (default=100). This command requires an integer number.
Particle tracking feature has been improved by relocating particles in sink holes
Minor bug fixed: change the numer of characters for var_line to max characters per line for Tecplot, which is 32,000.
‘time varying maximum timestep‘ has been added to assign various maximum timesteps.
time varying maximum timestep
time(1), maximum timestep(1)
time(2), maximum timestep(2)
…
end
HGS Premium December 2018 (Revision 1982 for Windows/1983 for Linux)
‘Defined flow’ command has been added to run solute transport simulations without solving flow conditions at each timestep. Once the flow matrix is constructed at the first timestep, HGS uses the flow conditions for the rest of the transport simulations with constant flow conditions, which corresponds to a new term “defined flow” applied for invoking the new simplified solute transport process. To invoke this feature, use ‘defined flow’ after the grid generation is done.
NOTE: HGS will use the initial and boundary conditions for calculating fluxes at the first timestep and apply the fluxes to the rest of the simulation time steps. Thus, transient boundary (or flow) conditions will not affect to the solute transport simulations. Density dependent flow simulations may not be compatible with this feature.
Minor bug fixed: when an 1D channel outlet is linked to another domain (e.g., pm and olf) for the boundary condition linking scheme, the maximum flow in the 1D channel is less than the 1D channel dimension (width x incision depth).
HGS Premium November 2018 (Revision 1976 for Windows/1977 for Linux)
HSPLOT can now process HGS output files up to 2400 units.
HGS Premium October 2018 (Revision 1972 for Windows/1973 for Linux)
'choose nodes boundary sheet' has been updated for working with a subsurface domain without using overland flow domain information. Grok input format is the same as previous one (see July 2018 update #2)
Tunnel boundary condition has been added. Boundary condition type is ‘tunnel’. A segment set is required for the ‘tunnel’ boundary condition. In the time value input table, three values (time on, wall pressure, and radius) are needed. Additionally, there are several optional instructions for specifying the physical conditions of a tunnel such as ‘tunnel edz thickness and conductivity’ and ‘tunnel grout thickness and conductivity’. An example of the ‘tunnel’ boundary condition can be downloaded from HERE.
HGS Premium September 2018 (Revision 1965 for Windows/1966 for Linux)
Reading a third-party numerical domain has been more flexible (e.g., layer or nodal information is not required).
ArcGIS reader has been compatible for linux compilations (e.g., any shp files can be processed by grok compiled using a ifort or gfotran compiler).
Minor bug fixed: check flow solution part for improving computational efficiency.
HGS Premium August 2018 (Revision 1957 for Windows/1959 for Linux)
Modifications for reading initial heads for dual, overland, and fractures and splitting triangular prisms based on Dompierre et al. (1999).
Minor bug fixes: map k from regional model and run time errors (gfortran).
'nonlinear bulk thermal conductivity relation' has been added: a new function to compute thermal conductivity as a function of saturation.
nonlinear bulk thermal conductivity relation
thermal conductivity of air
specific heat capacity of air
density of air
HGS Premium July 2018 (Revision 1942 for Windows/1943 for Linux)
Regional model - et zone mapping added:
use domain type
et
Regional model
location of regional model prefix (e.g., ../Reference/regionalmodel)
map zone numbers from regional model
'Choose nodes boundary sheet' command added. This command requires bottom and top sheet numbers for selecting boundary nodes for the 3D subsurface (PM) domain. It is similar to 'Choose nodes top boundary' for the surface (OLF) domain:
Choose nodes boundary sheet
bottom_sheet_# Top_sheet_#
Output precision for some variables has been increased from 9 to 10 digits below the decimal point with eliminating leading zero in a number.
Processing efficiency for updating a regional model properties has been improved using a regional output file (i.e., prefixo.RegionalModelOutput).
Minor bug fixed: regional mapping for the surface domain.
HGS Premium June 2018 (Revision 1932 for Windows/1933 for Linux)
Bugs related to computational efficiency (Jacobian matrix assembly) have been fixed.
HGS Premium May 2018 (Revision 1916 for Windows/1917 for Linux)
Regional model - K mapping for selected elements + brick elements (Multiple regional models can be used for mapping K values)
New water balance feature 'fluid mass balance for olf areas using shp file' added for estimating water balance in areas (surface and subsurface domains) selected by users.
fluid mass balance for olf areas using shp file
your ArcGIS shp file name
# !area number
HGS Premium April 2018 (Revision 1910 for Windows/1912 for Linux)
New boundary condition link for 'flux nodal by pressure' added. The boundary condition link format is the same as the previous one.
New water balance feature 'compute water volume by area using shp file' added for estimating water volume in certain areas (surface and subsurface domains) selected by users.
compute water volume by area using shp file
your ArcGIS shp file name
# !area number
3. 'make olf zone inactive' command added for efficient computing.
HGS Premium March 2018 (Revision 1902 for Windows/1903 for Linux)
New boundary type 'flux nodal by pressure' added. With this boundary condition, nodal flux is calculated from the nodal pressure (or water depth) at the node. Requires 'pressure-discharge power rating' or 'pressure-discharge table' input instructions to be included inside the 'boundary condition ... end' blocks.
For the power rating curve case, nodal flux is calculated based on the equation Q=C*(depth-a)**alpha. Thus, the instruction needs to be followed by three numbers as
pressure-discharge power rating
-300. ! C (negative as water needs to flow out)
0.01 ! a (minimum depth for water flow)
1.0 ! alpha (exponent)
For the stage-discharge table, a series of paired numbers (depth-Q) need to be provided in the following format:
pressure-discharge table
0.01 0.0
0.05 -0.01
0.1 -0.1
0.5 -1.0
end
HGS Premium February 2018 (Revision 1898 for Windows/1899 for Linux)
'plot pm zone isopach structure' instruction can be added in prefix.plot.control. With this instruction, hsplot will generate isopach thickness and top elevations of each porous medium zone.
Two new properties for the 1D channel media can be defined in cprops files: 'incision depth' and 'weir constant'. Both instructions need to be followed by a floating point number in the next line.
The elevations of the channel nodes are lowered by the incision depth in each zone to compute the exchange flux between the channel and 2D/3D (overland and porous) media. For the use of the weir constant, see the theory manual.Depth change in the channel media is now considered for time stepping and Newton iterations.
Minor bug fix for third-type transport boundary conditions.
HGS Premium January 2018 (Revision 1885 for Windows/1886 for Linux)
'k reduction by impedance factor for chosen elements' command added.
Requires to read
Line 1: impedance factor
Line 2: npanel
Line 3 - 3+npanel: ton toff
Hydraulic conductivity is modified for chosen elements such that Knew = K*10**(-impedance*sat at ton) when ton<t<=toff. Impedance factor represents the maximum K-reduction in log-scale during the freezing season.'choose elements intersected by raster surface' command added.
Requires to read the raster file name in the next line.
Designed to generate a thin continuous material layer for the existing mesh.
HGS Premium December 2017 (Revision 1873 for Windows/1874 for Linux)
'scaling factor by raster' command added. This command is similar to 'scaling factor' in the boundary condition command but instead of a single value applies the values given in the raster file. Requires to read the raster file name in the next line.
'elevation temperature relation' command added for the 'rain and snowmelt' boundary condition. With this command, temperature is calculated as a linear function of the elevation as T(z)=(z-z0)*A+T0. Requires to read z0 and A in the next line together for given T0 in the 'time value table' or 'time raster table'.
'no flow from channel to olf' command added to force water to flow only from the 2D overland to 1D channel domains (conductance is set to be zero when head is higher in the channel).
HGS Premium November 2017 (Revision 1866 for Windows/1867 for Linux)
Specified head nodes are now excluded for maximum depth change calculation for overland flow.
New boundary type 'makeup water' added. It is similar to the simple drain but water is introduced into the system for the node set chosen. Q=-C/L(h-href) when h<href; Q=0 when h>href.
New boundary type for density-driven flow and transport 'head vertical static' added. Given head values are applied to the top nodes among vertically aligned set of nodes and for the rest of nodes, head values are calculated to satisfy the vertical hydrostatic condition.
'fracture distribution coefficient' and 'zoned fracture distribution coefficient' commands are added to define the solute sorption property. Either Kd or retardation factor (fracture retardation factor) can now be used.
'distribution coefficient scaling by concentration' command added to define the sorption property of a solute as a function of concentration of another species. Requires to read a species number (next line) and the number of data pairs (another line) to define Kd_i=Kd_i(C_j), followed by the list of [C_j,Kd_i].
HSPLOT can now be instructed to process only the selected layers for porous media by including 'truncate pm domain by layer'. This instruction needs to be followed by the following three lines: Line 1 (minimum x coordinate, maximum x coordinate), Line 2 (minimum and maximum y coordinates), Line 3 (minimum and maximum layer numbers to process).
Bug fix for (1) the use of elemental K values in integrated simulations, (2) 'initial concentration from file' for the dual domain when it is assigned only for a portion of the entire domain, and (3) canopy evaporation calculation.
HGS Premium October 2017 (Revision 1841 for Windows/1842 for Linux)
Slow-down issues with the interception/canopy evaporation improved now
New boundary type 'reservoir' added. A single overland node is assumed to be connected to a reservoir with minimum and maximum storage capacity with intended inflow/outflow schedule. Manual will be updated accordingly.
'k scaling factor' command added. Hydraulic conductivity can be scaled for a single zone by the factor specified in the mprops file or for multiple zones in the grok file. Manual to be updated accordingly.
Target times updated now from the commands for time varying roughness and time dependent k. HGS now outputs time-dependent elemental K values for hsplot to process for visualization
HGS Premium September 2017 (Revision 1827 for Windows/1828 for Linux)
Minor bug fix: initial condition for 1D channel medium
'time dependent k for chosen elements' and 'time dependent variable k for chosen elements' commands were added (reference manual will soon be updated accordingly ). The 'time dependent k for chosen elements' command is required to read
the number of time panels (integer) - npanel
time(1), Kx(1), Ky(1), Kz(1)
time(2), Kx(2), Ky(2), Kz(2)
...
time(npanel), Kx(npanel), Ky(npanel), Kz(npanel)
For the 'time dependent variable k for chosen elements' command,
the number of time panels (integer) - npanel
time(1), filename(1)
time(2), filename(2)
...
time(npanel), filename(npanel);
where the files filename(i) need to include the same number of lines as the number of chosen elements (nelem) as
Kx(i,1), Ky(i,1), Kz(i,1)
Kx(i,2). Ky(i,2), Kz(i,2)
...
Kx(i,nelem), Ky(i,nelem), Kz(i,nelem)
Print-out for the large integer numbers in the prefixo.eco and prefixo.lst files is improved.
HGS Premium August-2 2017 (Revision 1820 for Windows/1821 for Linux)
Bug fix for observation point/well tecplot output files
Hydrograph tecplot output now includes 1D channel flow
HGS Premium August 2017 (Revision 1815 for Windows/1817 for Linux)
'K to tecplot' works for full tensor K and HSPLOT processes full-tensor elemental K values
Observation points/wells output files now include pressure head as well as total head. Zone title is assigned also for a observation point.
Unnecessary debug print out for channel segments generation is now removed.
Subsurface evaporation is now limited by surface evaporation: EVP_olf = alpha_olf*(1-f1)(PET-CAN); EVP_pm = alpha_pm*(1-f1)(PET-CAN)*EDF has been modified as EVP_pm = alpha_pm*(1-f1)*(PET-CAN)*(1-alpha_olf)*EDF.
'read 3d grid, ascii' has been improved for tetrahedral mesh and can be tested with 'mesh to tecplot'
Bug fix for fluid mass balance output when the channel domain is used.
Updates for reference manual (time varying friction...end)
HGS Premium July 2017 (Revision 1798 for Windows/1799 for Linux)
HSPLOT: Comparison to observation head values for given x, y, z locations (read_obs_heads_xyz)
HSPLOT: 'Simulation time unit conversion factor' for the output time unit conversion
Bug fix for the following:
'Time varying friction' when the number of time panels are larger than 2
hsplot: paraview output formats
'Choose faces top block, enter of mass' command added. 'Choose faces top block' command chooses the faces when all the nodes composing the faces are within the block and this command chooses the faces when the center of the faces are located within the block.
'Dual freezing by pm temperature' option added for freezing/thawing with dual media. Manual will be updated accordingly soon.
HGS Premium June 2017 (Revision 1790 for Windows/1791 for Linux)
For integrated surface and subsurface simulations, HGS now outputs RAIN and PET distributions for the overland domain, so users can see their spatial distributions using tecplot.
Removed the node count limitation in hsplot. Now HSPLOT can process more 10M nodes.
'choose faces vertical from polyline' command added. Manual will be updated soon accordingly.
For dual continuum simulations, HGS now outputs the fluid and mass exchange between primary and secondary media.
'Time varying friction' can be used to define Manning's coefficient as a function of time in oprops file. Manual will be updated soon to reflect the change.
Minor bug fixes for 'compare depth to gw table' (HSPLOT), 'no freezing in dual domain', multiple use of the 'regional model' command, 'simple river' boundary conditions.
A bug was noticed in the May release for velocity calculation in saturated flow. All users are recommended to update to the June release right away.
HGS Premium April 2017 (Revision 1743 for Windows/1744 for Linux)
'Output ET details' command added. With this instruction in grok, HGS prints out ET details (PET, total AET, transpiration, evaporation, etc) for each PET boundary in ET_Detailed_Info_bcname.dat.
For water balance output, HGS now reports canopy evaporation as part of evapotranspiration (HGS was reporting effective precipitation for the rain boundary as precipitation minus canopy interception). Both in prefixo.lst and prefixo.water_balance.dat, HGS now reports PET as a reference to AET.
'DDF Picard iteration control' command added. This instruction requires to read an integer number in the following line as the maximum allowed number of iterations for Picard solution in density-dependent flow and transport simulations to decide the time step size in the next time step. The debug.control file now includes Picard convergence criteria, maximum number of iterations, maximum allowed number of iterations to be modified during density-driven flow and transport simulations.
'Soil frost K by ratio' command added. This instruction is similar to the 'Soil frost K' command but specifies the ratio of soil frost K to the original K.
Minor bug fixes (Compute water volume by zone/Cutoff wall with rain/snow boundary conditions) and manual updates
HGS Premium March 2017 (Revision 1729 for Windows/1730 for Linux)
A "Quick Start Guide" section is added in the manual to get users up to speed quickly on the basic operation of the HGS model.
'Regional model' command added. This command can located in the grid definition section after users define a 2D mesh or after the entire 3D mesh is defined. This can be used together with 'initial head from regional output file', 'map zone numbers from regional model', and 'elevation from regional model gb file'. 'initial head from regional output file' command does not require to read the regional model prefix now.
'Map zone numbers from regional model' command added. This command can be used after a regional model is defined for the porous medium or overland domains to map zonation used in the regional model to the local model.
'Elevation from regional model gb file' command added. This command can be used to define the elevation from the regional model gb file after a regional model is defined.
'Compute water volume by zone' command added. With this command in grok, HGS reports the amount of water stored in each of porous medium or overland zones at each simulation time in prefixo.water_volume_pm_zone.dat and prefixo.water_volume_olf_zone.dat.
HGS Premium February 2017 (Revision 1720 for Windows/1719 for Linux)
'Auto save on' command added. This command requires to read a time interval in seconds in the next line. Restart files for head and concentration will be generated/updated with the interval in prefixo_head.asv and prefixo_conc.asv. This command is designed to help the cases when the equilibrium simulations takes long and only the final results are important. ASV files are formatted in the exactly same way as the HEN and CEN files to be used as restart files. Last time when the files are updated can be found in prefixo.lst file (search for 'auto save at').
'Minimum relaxation factor for convergence' command added. When the 'compute underrelaxation factor' command is used, convergence will be declared when the relaxation factor is larger than the value specified. Previously it was 0.95 and now users can adjust this minimum.
A potential data race condition for HGS parallel implementation was identified and fixed.
Manual update for 'Newton minimum iterations' (default - 0). Newton solver will declare the convergence only when the iteration count is larger than the minimum specified.
HGS Premium January 2017 (Revision 1709 for Windows/1710 for Linux)
Improvement for 'Map rectangular fractures from tecplot file' using a structured auxiliary mesh (SAM) search algorithm
Improvement for 'Porosity to tecplot'
Manual updates for the following commands:
'k to tecplot'
'nodal flux reduction by pressure head'
HGS Premium December 2016 (Revision 1702 for Windows/1703 for Linux)
Minor bug fixes for 'zones from arcview for chosen elements' and 'initial head from regional output file')
Following commands were cleaned/added in the manual:
'choose faces top gb common' to choose the faces tagged in two gb echos files
'choose faces top gb exclude' to choose the faces tagged in the first gb echos file excluding the faces tagged in the second gb echos file
'report exchange for olf zones' to report the exchange flux for each of overland zones (prefixo.fluid_exchange_olfz.dat)
'choose nodes between zones' to choose the interface nodes between two zones
'choose nodes by zone' to choose all the nodes within a zone
'make observation well from xy' to create a observation well from the x and y coordinates and bottom and top sheet numbers
'choose segments gb node list' to choose a segment from a set of nodes specified by the 2D node numbers and sheet numbers; designed to help to create horizontal wells/drains
'choose segments xy between sheets' to choose a segment using the x and y coordinates and bottom and top sheet numbers; designed to help to create vertical wells/drains
'function surface elevation initial head' to assign initial head values as a function of ground surface elevation; h(t=0)=z0+(zsurf-z0)*scaling_factor; designed to assign an initial head distribution as subdued topography
HGS Premium November 2016 (Revision 1693 for Windows/1694 for Linux)
'Choose nodes 2d-list sheet' command added. This instruction requires to read a sheet number and a file name in the next two lines. The file consists of the list of 2d node numbers (one per each line) and the number is converted to a 3d node number based on the sheet number specified. If the 2d node number is larger than nn2d but less than nn, it is automatically converted to a corresponding 2d node number. 'Choose nodes top 2d-list' command works similarly but without a sheet number.
'Random Kd field from fgen' command added. This instruction works in the same way as 'Random K field from fgen' but given anisopropy ratios will be neglected.
'Compute statistical properties of plume' command added. This instruction causes HydroGeoSphere to write the statistical properties of solute plume in porous media at each time step (zeroth to 4th moments). Output will be written to a file called prefixo.Statistical Plume Props.dat.
'Zones from arcview for chosen elements' command improved. If the selected attribute is a character field, it prints out the names without spaces/identify the same names to assign the same zone number.
HGS Premium October 2016 (Revision 1671 for Windows/1672 for Linux)
'Initial head from regional output file' command added. This command is used to import a flow initial condition for a local model from a regional model simulation result. Requires to read the following parameters in the next two lines: prefix_regional, and 'regional_output_file_name'. Designed for telescopic simulations (coarse regional and refined local models).
'concentration control, multi-species' command added. For multi-species transport simulations, HGS now calculate/print-out the maximum concentration change for each species. This command will apply different values for maximum concentration change allowed for different species (an example is included in verification/pm_cd as commented out by !AQT). With this implementation, 'concentration control' or 'concentration control, multi-species' commands need to show up after all the species are defined (solute ...end), otherwise grok will issue a warning and stop.
'pet from crop coefficients' command added to be included in etprops files (for each zone) (see verification/panday/panday.etprops as commented out by !AQT). The command is designed to partition PET into PE and PT such that PT = (PETo-Ec)*BCC; PE = (PETo-Ec)*(MCC-BCC) where Ec is the canopy evaporation, and MCC and BCC are the maximum crop coefficient & basal crop coefficient, respectively. Users can include the following time series for each ET zone to provide MCC(t) and BCC(t):
'maximum crop coefficient table ...end'
'basal crop coefficient table ...end'
With this command, C1 and C2 parameters and LAI (f1 function) will not be used for the PET partitioning calculation. When BCC = C1*LAI+C2 and MCC=1, the results should be the same as before. Note that f1 has an upper limit of 1.0 but MCC could be larger than 1.0 as PETo is considered to be 'reference evapotranspiration', not 'potential evapotranspiration' (see FAO 56 guideline document for details). Note also that LAI will still be used for canopy evaporation calculation.Now Aqaunty can provide a floating license to the users for both Windows and Linux (HGS Linux is now fully integrated with the RLM). The floating license is designed to acquire the HGS license in any machine through internet (each account will have a limit for the number of concurrent HGS executions). Any interested users can contact the Aquanty Support Team. The existing Linux HGS users will need to generate hostid.txt in their systems using rlmhost.sh (included in the zip file) and can ask a new license file.
HGS Premium September 2016 (Revision 1649)
'refine 2d grid' command added. After importing 2d triangular grid, this command causes grok to refine one triangle to 4 triangles. This can be repeated until a desired resolution is achieved. The number of nodes increases about 4 times with this command. This command is designed to best perform when the elevation is defined by high-resolution raster files.
'reduce 2d grid, boundary file' command added. This command causes grok to exclude the triangular elements outside a polygon (any of its vertices) and to re-number the nodes and elements within the polygon. Requires a file name for a text ascii file which defines the polygon with x- and y-coordinates in each line - first and last points need to be identical for a closed polygon. Combined with the 'refine 2d grid' command, this can provide a basis for telescopic mesh refinement.
Updates for the manual.
Updated license manager (RLM - V.12.1) for cloud license. Aquanty team has planned to implement a floating license scheme for HGS to provide users more flexibility in various computing environments. This should not influence the exisitng node-locked license.
HGS Premium August 2016 (Revision 1640)
A new boundary condition command 'scaling factor' was added (to be used within 'boundary condition ... end'). This command requires a floating point number in the next line. All the flux and head values specified by 'time value table', 'time raster table', etc will be multiplied by the scaling factor before being used. For example, when a time series of spatially varying precipitation pattern is specified in the 'rain' boundary condition using 'time raster table' and users want to uniformly scale down the values, to say, 50%, then 0.5 scaling factor can be specified.
For soil water freezing/thawing simulations, HGS now outputs depth-temperature-ice/total water ratio data for specified output times in the prefixo.temperature_profile.dat tecplot file. When users try to run this version for the existing inputs, it is recommended to delete the existing 'prefixo.output_variable.control' file. An example output file for abdul_snowmelt verification problem (abdul_snowmelto.temperature_profile.dat)
'Initial head from porous medium' command now works for any domains (e.g., dual well/tile/fracture medium).
Third Linux beta release with a temporary license file (valid until mid-September). Aquanty team keeps working on to make it more stable.
HGS Premium July 2016 (Revision 1631)
In fluid balance output files (prefixo.water_balance.dat), HGS prints out only fluid balance information for only first 99 boundary conditions if there exist more than 99 boundary conditions. This restriction was applied to prevent HGS crash for creating excessive number of columns.
Further clean-up for grok.dbg print-out for ET simulations.
A second beta version for HGS Linux is now available to download. It now requires users to create an environment variable HGSDIR and keep the license file in that specific directory. In the case of bash, users can add the following two lines at the end of .bash_profile and copy all the executables and license file in the specified directory /home/username/HGSLinux (Note that slightly different syntax is required for different shells used):
export HGSDIR=/home/username/HGSLinux
PATH=$PATH:$HGSDIR
Minor bug fixes and manual updates (offset base; elevation from file; initial head from xyh file; initial concentration from xyc file; z function initial concentration; specified concentration from initial concentration; specified third-type flushing).
HGS Premium June 2016 (Revision 1620)
With the 'flow solver maximum iterations' and 'transport solver maximum iterations' commands, the maximum number of solver iterations are not bounded by the number of equations. Problems were identified for which the linear solver could require more iterations than the number of equations with BiCGStab.
'remove negative coefficients' command is effective for saturated flow and transport now. Users still need to be cautious in using the command if there are many negative inter-nodal conductance. It can significantly improve the numerical efficiency for saturated flow and transport only with limited number of negative coefficients.
Minor bug fixes: boundary condition linking with 1D structures and critical depth BC; large grok.dbg file size for ET simulations.
HGS Premium May 2016
'transpiration limiting pressure head' and 'evaporation limiting pressure head' commands added. These can be used as alternatives for 'transpiration limiting saturations' and 'evaporation limiting saturations' commands.
'elevation from file' command added. The command works with 'base elevation' and 'new layer' within 'generate layers interactive' and requires an ascii file that contains nn2d (number of nodes in each sheet) number of elevation data (one per each line). Users can edit/modify/generate the elevation data to feed HGS in an ascii format.
'initial head from xyh file' and 'initial concentration xyc file' commands added. These commands require the maximum distance and the name of the file (each per line) which contains the number of data (nxyh) followed by nxyh sets of (x,y,head) and (x,y,conc) data. Any selected node will take a value from the closest point data if the distance between two are smaller than the maximum distance. The purpose of these commands are to provide a tool to incorporate the measurements into the initial conditions.
'z function initial concentration' command added. The command requires to read the next two lines with (z1, c1(z1),c2(z2), ...) and (z2,c1(z2),,c2(z2), ...) data. For chosen nodes, grok interpolates the concentration of a node based on its elevation.
'specified concentration from initial concentration' command added. The command forces a set of chosen nodes to be specified concentration nodes and the values are taken from the initial concentration.
HGS Premium April 2016
HGS Linux (beta) is now available to download with a time-locked license - compiled with the Intel Fortran with the static library option. The license will support up to 10 mac addresses within a single box. The zip file includes three HGS executables (grok.x/hgs.x/hsplot.x), a mac address extractor (mac.x), and a temporary license which is valid until June 1, 2016 for any machine. A new version will become available every three months. The maintenance schedule may be adjusted, depending on the demand.
Boundary Condition Link (BCL) between 1D, 2D, and 3D domains has been updated. Such grok commands as 'choose nodes gb node list', 'choose nodes gb wall node list', 'create node set for cutoff wall', and 'choose node number for cutoff wall' have been updated for this purpose. Manual will soon be updated accordingly.
'specified third-type flushing' command added - requires to read [npanel; q(i),i=1,npanel]. This new transport boundary condition is applied to a set of no flow faces, to simulate the flushing as total mass flux = -qAC.
[read "properties" from raster] commands have been improved to remove the possibility of reading a value not from the cell which the center of an element belongs to, but from its neighbor cells.
HGS Premium March 2016
Default values for canopy interception parameter and initial interception storage set as 1.5 mm (based on Rowe, L.K. 1983. Rainfall interception by an evergreen beech forest, Nelson, New Zealand. Journal of Hydrology, 66: 143-158.)
Minor bug fixes and manual updates
HGS Premium February 2016
Improvement for simultaneous overland and fracture transport
Grok will issue a warning and stop when a PET boundary condition is applied without defining ET zones/properties
Some minor bug fixes and manual updates
HGS Premium January 2016
For dual continuum transport simulations, HGS now outputs the mass exchange flux between porous medium and dual continuum in raw mass balance output file.
Improvement for freezing/thawing analytic integration - being further improved.
Improvement for 'flux nodal' boundary condition for saturated flow.
HGS Premium December 2015
'flux nodal' boundary condition can have an option to reduce flux when the pressure head at the node becomes lower than a certain value. 'nodal flux reduction by pressure head' instruction can be included in 'boundary condition ... end' and it requires two pressure head values in the next line to read ph1 and ph2. If ph>ph2, specified nodal flux is applied; if ph<ph1, flux becomes zero; if ph1<ph<ph2, flux gradually increases between 0 and the specified value following a function x sup 2(1-x) where x=(ph-ph1)/(ph2-ph1). This is supposed to help prevent slowdown of the model due to over-pumping. Manual will be updated later.
Evaporation calculation can follow either Eq.2.80 or Eq.2.81 in the theory manual. By default, potential evaporation is calculated as (PET-canopy evaporation)*(1-f1) (Eq.2.81) and optionally (PET-canopy evaporation-transpiration) (Eq.2.80) - Users can include 'potential evaporation using transpiration' in grok for this. Manual will be updated accordingly.
'tracing contaminant source' is added to improve backward-in-time transport simulation capability in the overland domain. Needs for further improvement have been identified.
'target times ... end' command working properly. With this command, time stepping will be adjusted to hit the specified target times. This improvement has been identified to be potentially very useful for HGS-PEST coupling and other purposes when the simulation results need to be compared to the measured at specific times.
'soil water balance' will be reporting the amount of water in the overland domain and below and subsurface above water table. It also reports the amount of water in the top 10cm and 1m.
HGS Premium November 2015
'read overland zones from raster, dominant class' is added to assign a dominant land use class for each of surface triangular elements. - 'read overland zones from raster' assigns the zone number from the raster value at the center of the elements. This new command can be most useful when the resolution of the raster file is much higher than the grid resolution.
'generate uniform rectangles' can now specify the origin of the 2D mesh (optional). For this command, required data format is: [x,nx,(x0); y,ny,(y0)] where x0 and y0 are the coordinates of the origin.
'truncate time domain' instruction for hsplot has been fixed. Users can force hsplot to process the outputs between two times (example).
HGS Premium October 2015
For the grok commands to read ascii raster files, coordinates for the lower left corner are assumed to represent the lower left corner of the lower left cell (it was assumed that they are for the center of the lower left cell) - diagram
For 'read zones from raster for chosen elements' and 'read overland zones from raster' commands, grok does not (bi-linear) interpolate the values to assign; head and elevation will still be interpolated
Zero canopy evaporation is forced when LAI is smaller than 10E-8. This will be clarified in the manual.
Third-type transport boundary conditions implemented for discrete fracture simulations (example).
Further breakdown for mass crossing slice (advective and dispersive) from the 'slice flux output nodes from chosen' command
HGS Premium September 2015
'read elemental k from file' can now read one (isotropic), three (anisotropic), and six (full tensor) values for each element; hsplot will process them accordingly (example)
debug control instruction 'write seepage face output to .lst file' fixed to work with 'seepage node' BC
potential negative initial time step due to non-zero 'initial time' and input time series fixed (example)
'slice flux output nodes from chosen' reports further breakdowns for transport (advective and dispersive mass flux crossing slice along different media)
HGS utility available to convert FEFLOW mesh (.fem) and AlgoMesh into HGS inputs (link to download)
Bug Report Form to download
HGS Premium August 2015
Case-sensitivity for 'end' and 'include' fixed (example)
Third-type transport BC from file fixed (example)
Transport mass balance and slice flux output nodes fixed (example)
Precision for for 'compute velocity field from head' improved
Random fracture networks improved (example output)
Permafrost simulation capability improved for fracture zones
HGS manual split into theory manual & reference manual (input instructions)
HGS Premium July 2015
"Fracture zone porosity" [fprops] command added - works together with "High-k zone" (example)
"Zoned fracture retardation factor" and "Fracture retardation factor" [solute] fixed (example)
The issue associated with hidden tabs in blank lines fixed (example)
Time varying root depth and logistic root growth function implemented for evapotranspiration [etprops] - manual will be updated accordingly
"K to tecplot" command fixed - to convert zoned k to elemental k & to create prefixo.ElemK_pm(dual).0001 for hsplot to process (example)