RELEASE NOTES

 

OpenGeoSys 5.6.0 (CL/TN) - 07.07.2015

Changes

·         Moved CMakeConfiguation and cmake directory to scripts/cmake.

·         Turned on MAT_NEW_NONZERO_ALLOCATION_ERR flag in PETSc.

·         Added a namespace for physical constants. This namespace shall serve as a source of unified values for physical constants in the future. Please use it for new developments.

·         Moved all third party libraries to ThirdParty.

·         Added STABLE_ERROR_ADAPTIVE time stepping.

·         Added prefix for command line PETSc options.

·         Enabled RELOAD for PETSc#DEFORMATION.

·         Added restriction for calculation of velocity for constrained BC/ST.

·         Removed all Qt and VTK dependent functionality including Data Explorer.

·         Added a new process type TES, which is a thermal equilibrium version of TNEQ.

·         Added material model for zeolite Z13XBF.

·         Added commandline-parameter to specify the output directory: --output-directory=DIR

·         Added STABLE Option for Constrained BC.

Fixes

Removal of numerous compiler warnings.

·         Fixed: Bug in Stiff_Bulirsch-Stoer.

·         Fixed: Recalulation of time step didn't work for Richards flows with regional local flow.

·         Fixed: Polyline were found if empty line in gli file was given.

·         Fixed: Compilation error caused by pow function under VS2010.

·         Enabled Mat***SetPreallocation for PETSc matrix again.

·         Fixed: Rejected time step was not recalculated for PI_AUTO_STEP_SIZE.

·         Fixed: Added time step rejection for nonlinear solver.

·         Fixed: Bug in constrained BC under MPI/PETSc.

·         Fixed: Need NEW_EQS for IPQC with MPI.

New benchmarks

·         TES/Convection_2D

·         TES/Convection_2D_axi

·         TES/friction

·         TES/heat_of_reaction

OpenGeoSys 5.5.7 (WH/TK/EJ) - 31.03.2015

Changes

·         add IPhreeqc source code (version 3.1.2-8538)

·         IPhreeqc functions are applied within the function REACT::Call_Phreeqc(void) of existing OGS-PHREEQC interface to calculate geochemical reactions (system call to PHREEQC executable will still be applied, if flag “OGS_FEM_IPQC” is not chosen).

·         deactivate TransportFlux? variable in ElementValue? due to significant memory consumption. The variable can be activated by passing -DUSE_TRANSPORT_FLUX to a compiler option

·         automatically close any open-polylines if they are used to define surfaces (i.e. the last point of a polyline should be equal to the first point)

Bug fixes by WW/TF/MW/NW

·         improve mesh node searching. A user-provided epsilon in *.gli will be used during the search.

·         fixed a bug in CFEMesh::computeSearchLength(). When all edges have the same length, this function has number overflow.

·         fixed a bug that 2D elements are included in the face intrgration of 3D elements for ST

·         added a rank to a file name of BC output in the case of MPI parallelization

·         fixed a bug that some functions in MSH, ST, BC assumed an open polyline for a surface (i.e. the end point of a polyline is not same as the beginning point)

·         fixed a bug in ST setting. Process type was not verified in setting of the source term. With the previous code, some source terms like DIRECT type were assigned for each process in a coupled problem.

·         corrected printf arguments in ScreenMessage?()

·         fixed a bug related to the assignement of nGaussPoints in case of hybrid 3D-Meshes (reported by CB in Kiel)

New benchmarks

·         C/IPhreeqcCoupling/isotope_fractionation/1d_isofrac

OpenGeoSys 5.5.6 (WW/MW/NW) - 05.12.2014

Changes

·         support parallel FEM with PETSc in coupled HM, H2M, and TH2M processes

·         extend SELF_ADAPTIVE time control with new keywords MULTIPLIER (optional), INITIAL_STEP_SIZE, ITERATIVE_TYPE, STAY

·         $TIME_CONTROL
·         SELF_ADAPTIVE
·         MULTIPLIER <-- a list of [number_of_iterations] [time-step_multiplier] (needs to have at least two items)
·         3 3.5 <-- eg: this will increase the next time step size by factor 3.5, if coupling iterations are less or equal than 3
·         5 1.01
·         6 0.6
·         8 0.3
·         MIN_TIME_STEP
·         1e-2
·         MAX_TIME_STEP
·         200000
·         INITIAL_STEP_SIZE
·         1000
·         ITERATIVE_TYPE <-- select which iteration should determine time step adaption, options: [COUPLED/LINEAR/NONLINEAR]
·         COUPLED
·         STAY <-- let's time adaption suspend for a given number of time steps after decrease of time step
·         2 <-- eg: if time step is decreased, for the following 2 time steps, no increase will happen

 

·         add constrained BC/ST options with a new keyword $CONSTRAINED

·         add RECHARGE and RECHARGE_DIRECT as $DIS_TYPE for ST

·         add $PRESSURE_AS_HEAD keyword for BC to give hydraulic head as BC in PRESSURE based processes

·         remove the break control because it may cause zombie processes on EVE

·         check line ending of input files before start reading them

·         check if enough properties are defined in MMP compared to material IDs in a mesh

·         enabled clock time output for all PCS with OGS_OUTPUT_TIME_ALLPCS option in CMake

·         support PETSc version 3.5

·         update Eigen to v3.0.7

more infos on the changes and new implementations can be found in the presentations of the OGS Community Meeting 2014

New benchmarks

·         H_us/Darcy/unconf_W_rch/unconf

·         H_us/Darcy/unconf_WO_rch/unconf

·         DENSITY-DEPENDENT_FLOW/goswami-clement/constrBC_PressAsHead_tri/HM

·         DENSITY-DEPENDENT_FLOW/goswami-clement/wholeBC_PressAsHead_tri/HM

Bug fixes

·         bugfix in effective strain calculation (credit to Thomas Nagel)

·         bugfix in higher order shape functions for Prism elements (credit to Thomas Nagel)

·         bugfix in permeability calculation when permeability model=8 and porosity model=13 (credit to Christof Beyer and Daniel Müller)

·         bugfix in transient Sugio approach

·         bugfix in Marsily and Yaws(1976) Viscosity models

·         bugfix in reading reload files

·         recover output of element fluxes which was deleted in previous version

·         correct fluid momentum velocity during local assembly when a mehs is on XZ coordinates

·         correct MPFGetNodeValue for MASS_TRANSPORT

·         correct DISTRIBUTE_VOLUME_FLUX if no node found

·         no need to switch velocity dimensions for FLUID_MOMENTUM in PVD output

·         improve TIN file reading (credit to Thomas Fischer)

OpenGeoSys 5.5.5 (JOD) - 10.11.2014

The version includes

·         TOTAL_FLUX replaces WATER_BALANCE output

·         density model 20: rho = rho (p,T,C)

OpenGeoSys 5.5.4 (WW/NW/LB) - 27.06.2014

The version includes

·         Rewritten member functions of class matrix_class that gives better performance in the local assembly computation. With the changes, the computation time for the problem using large local matrix (e.g deformation problems) becomes shorter than the previous versions.

·         Parallel binary I/O for parallel computing with PETSc. With the changes, partmesh outputs binary files by default if option '-asci' is not used. (How to use this binary IO, please refer to the updated page: https://svn.ufz.de/ogs/wiki/PETScPage)

·         Parallelization of the pressure saturation scheme (PS_GLOBAL) with PETSc, and a new benchmark for which is added.

·         OGS_FEM_BRNS now requires BLAS and LAPACK libraries during compilation under UNIX

·         Added MKL_DIR option in CMake to specify a root dir of MKL.

·         Reactivated benchmakrs configured for OGS_FEM_LIS and OGS_FEM_MKL.

·         Some other bug fixings in point search on surfaces, PS_GLOBAL, VTK output, FEFLOW import, etc

·         Added CMake-option OGS_BUILD_FILECONVERTER to enable building of the OGS-5 / OGS-6 file converter

·         Output of crashed benchmarks (exit code not zero) can now be seen in the Jenkins Benchmarks_Linux-job output

OpenGeoSys 5.5.3 (WW) - 11.03.2014

The new features of this version include

·         Parallel mesh data input, and parallel domain data output for the parallel FEM with PETSc. For a large mesh, this improves I/O significantly.

·         Deformation analysis with the parallel FEM with PETSc.

·         Some other bug fixings

OpenGeoSys 5.5.2 (JM) - 25.02.2014

This release introduces

·         new Bishop model type

·         thermal fluid expansion within Richards flow model

·         saturation and temperature dependent thermal conductivity of solid phase (input by fct-table)

·         bugfix Richards: neglecting storage from dp/dS in the saturated case

·         small changes in order to allow the use of some material models within Richards flow model (Yaws viscosity, p-V-T tables) based on deg Celsius

·         new input possibility for the base heat diffusion coefficient (Richards flow model)

·         new THM benchmark (THM/deco_2015_b2s1)

new Bishop model type
; BISHOP-BIOT Model: 
; GENERAL: Sigma_tot = Sigma_eff - Biot*bishop(S)*p_w

$BIOT_CONSTANT

1.0 ; Biot

BISHOP_COEFFICIENT

;1 0.0 ; model type, coeff; model_1: bishop=S_eff*coeff

;2 10 ; model type, coeff; model_2: bishop=S_effcoeff

3 0.0 ; model type, coeff; model_3: bishop=0.0 if p<coeff

bishop=1.0 else

thermal fluid expansion within Richards flow model

The Richards flow model gives now the same solution as the fluid flow model in the saturated case for THM problems including thermal expansion of the fluid.

If the key

$DRHO_DT_UNSATURATED

is found within the *.mfp file, thermal expansion of the fluid is condidered in the unsaturated case additionally.

saturation and temperature dependent thermal conductivity of solid phase (input by fct-table)

*.msp 
$THERMAL

EXPANSION 1.0E-6 
CAPACITY: 
1 341. 
CONDUCTIVITY: 
5 273.15 ; type, T_0; type5: read from S-T-Conductivity table, T_0: reference temperature
; T_0 will be added to the calculated Temperature before the look up table is used

*.fct 
#FUNCTION
$TYPE
BUFFER 
$VARIABLES
SATURATION TEMPERATURE CONDUCTIVITY 
$DIMENSION
123 3 
$MATRIX
0.000 0.0 0.7439
0.001 0.0 0.743901776[... ...]

use of material models within Richards flow model based on deg Celsius

$DENSITY 
10 273.15 ; model type, T_0; type10: read density from a rho-P-T table
; T_0 will be added to the calculated Temperature before the look up table is used 
$VISCOSITY 
3 273.15 ; viscosity model 3: my=f(T) (Yaws), T_0
; Dynamische Fluessigkeits-Viskositaet nach Yaws et al.
(1976)
; als Funktion von Temperatur
; in Reid et al. (1988), S. 441/455 ; Eqn.(3): ln(my) = A + B/T' + CT' + DT' 2 ; T'=T+T_0

new input possibility for the base heat diffusion coefficient (Richards flow model)

; GENERAL: Dv = tau*(1-S)*n*Dv0*(T/273.15)1.8

$DIFFUSION 
1 1.5e-6 ; heat_diffusion_model, Dv0; type=1: constant, Dv0=base heat diffusion coefficient 
;273 ; heat_diffusion_model, type=273: constant, Dv0=fixed=2.16e-5

OpenGeoSys 5.5.1 (TN/NB) - 30.01.2014 15:21

This release introduces

·         Pressure BC for deformation pcs

·         General improvements to TNEQ

·         Bugfix of second derivative of dimensionless Helmholtz free energy for nitrogen

·         Added oxygen thermal conductivity and dynamic viscosity

·         Added linear heat capacity model

·         Added Warnings for wrong input files

OpenGeoSys 5.5 (CB/DL/AM/SB) - 21.08.2013

This release introduces

·         a new ChemApp interface

·         a new reaction-interface / toolbox with general functionalities for coupling of reaction codes to OGS

·         some routines of the Geochemcalc-Toolbox by Dedong Li for water density and gas-phase / water phase equilibria

·         some updates to the OGS-Phreeqc interface

·         updates to the KineticReaction routine of OGS including NAPL-dissolution and mineral dissolution / precipitation models

·         a new model for porosity and permeability updates from mineral dissolution / precipitation reactions

·         several minor things related to the coupling of heat and conservative / reactive mass transport (temperature dependent diffusion, dispersion, biodegradation models, etc.)

New ChemApp interface A completely new interface between OpenGeoSys and ChemApp was implemented. An new input file with file extension *.cap is used to invoke ChemApp during an OpenGeoSys model run. As ChemApp is a commercial code, the actual ChemApp source code files (project folder CMP) and libraries are not included in this version. If ChemApp is available, the OpenGeoSys project can be configured with the CMAKE option OGS_FEM_CAP. The ChemApp interface is implemented in four new source code files: rf_react_cap.h and rf_react_cap.cpp host the actual interface, while CAP_IO.h and CAP_IO.cpp encapsulate the functions calling and receiving results from ChemApp. The new ChemApp-related benchmarks only test the correct functioning of the interface reading in pre-calculated results files from ChemApp. An introductory presentation can be found here. A tutorial on the use of the new ChemApp interface with detailed instructions and explanations of keywords will follow soon.

New reaction interface REI The idea of this new interface toolbox is to provide generalized routines which are frequently required in the coupling of heat transport, flow, mass transport and reaction processes. This toolbox is more or less independent from the actual reaction codes used with OGS. An introductory presentation can be found here. The REI is invoked by a new input file with file extension *.rei and is implemented in two new source code files: rf_react_int.h and rf_react_ int.cpp. The following keywords and routines are currently implemented:

·         The keyword

$MOL_PER

VOLUME ; WEIGHT

with options "VOLUME" or "WEIGHT" defines whether concentration units for components are given in volume (usually mol/m³ l,s (liquid or solid)) or weight based units (usually mol/kg w (water)) are used. In the former case, reaction codes coupled to OGS usually require a conversion of units to molality, i.e. mol/kg w (e.g. PHREEQC) or total mol/m³ of REV in the system (ChemApp ). The conversion factors are only required when concentrations are defined in volumetric units (requiring the option "VOLUME") and can be requested in a specific reaction interface by call to the REI-function REACTINT::CalcUnitConversionFactors (long index, double *fl, double *fs, bool molal) where the input index is the current node index, *fl and *fs return the conversion factors for liquid and solid phase species and input molal (true/false) decides whether the conversion factors for molalities or total moles are returned.

In the latter case, the conversion is straightforward:

mol = mol/m³ l * porosity * saturation

mol = mol/m³ s * (1-porosity) * saturation

In the former case, unit conversion is achieved by

mol/kgw = mol/m³ l / (molw/m³l) * mol w /kg w

mol/kgw = mol/m³ s * (1-porosity) / porosity / (mol w /m³ l ) * mol w /kg w

For the unit conversion, porosities at nodes are required. These are computed as averaged values from connected element porosities. The quantity molw/m³l represents the "concentration of water, i.e. the moles of water in 1 m³ of liquid. For dilute systems, which is the default case, this parameter can be assumed constant as the product of water density and 55.50843506, the number of moles of water per kg of water: molw/m³l = densityw * molw/kgw For non-dilute systems such as brines, this approximation may not be suited and the concentration of water must be established by a an appropriate water density model. Such a model is implemented in the new geochemcalc toolbox (GCC, see below) and is invoked by the keyword $WATER_CONCENTRATION with option VARIABLE, followed by a list of names of model components or species which are evaluated in the density model, e.g.: $WATER_CONCENTRATION

VARIABLE ; CONSTANT

H[+]

OH[-]

Ca[2+]

CaOH[+]

CaHCO3[+]

HCO3[-]

CO3[2-]

With this definition, the water concentration is quantified as a function of solute content, pressure and temperature. (Note: $WATER_CONCENTRATION with option CONSTANT represents the default case, but this definition is not mandatory.) A more detailed explanation can be found here.

·         The Keywords

$WATER_SPECIES_NAME

H2O

$DISSOLVED_NEUTRAL_CO2_SPECIES_NAME

CO2

$SODIUM_SPECIES_NAME

Na[+]

can be used to define the names of components representing water, dissolved CO2 or Na+, which may differ between different geochemical databases. These names are required by some REI-routines, e.g. for the water density model.

·         The Keywords

$PRESSURE

CONSTANT 1.0 ; bar ; VARIABLE

$TEMPERATURE

CONSTANT 298.15 ; Kelvin ; VARIABLE

can be used to set constant pressure or temperature values throughout the model domain in the REI, which can be used as input values for the reaction routine, e.g. without the need to define a heat transport process in the simulation. Calls to the functions double REACTINT::GetPressure (long node) double REACTINT::GetTemperature (long node) will then return the respective values defined with the keywords behind the option CONSTANT in units of bar and Kelvin. Instead, the option VARIABLE (without any specified value) will return local node pressures from the flow or heat transport model (if defined).

·         The Keyword

$SOLID_SPECIES_DUMP_MOLES ; mineral conc. mol/m3_aquifer

1000

will invoke additional domain output concentrations of components in the solid phase (i.e. minerals or sorbed somponents) in units of total mol/m³ REV for every ith time step, with i as the indicated below the keyword. Additionally, nodal porosities (possibly modified from mineral dissolution / precipitation) are written to the output file.

·         The Keyword

$ALL_PCS_DUMP

10

will invoke output of restart files for all processes and process primary variables for every ith time step, with i as the indicated below the keyword.

·         The Keyword

$WATER_SATURATION_LIMIT

0.05

will suppress geochemical reaction calculatiuons at nodes where water phase saturations drop below the indicated threshhold (dry out).

·         The Keyword

$UPDATE_INITIAL_SOLID_COMPOSITION

will allow initial geochemical equilibration between liquid and solid phase by the reaction module to modify and update solid phase concentrations. Usually, only liquid phase concentrations are updated by default.

·         The Keyword

$INITIAL_CONDITION_OUTPUT

will invoke output of initial concentrations to regular output files after initial geochemical equilibration between liquid and solid phase by the reaction module.

·         The Keyword

$POROSITY_RESTART

filename.txt

will invoke reading in nodal porosities, e.g. from a restart file "filename.txt" of a revious model run with transient nodal porosities from mineral dissolution / precipitation. The nodal porosities are interpolated to elements.

·         The keywords

$PCS_RENAME_INIT H2O 4.89281E+04 one

H<+> 6.05790E-02 one

OH<-> 5.33345E-06 one

...

END

$PCS_RENAME_PRE

TIC 1.0 (HCO3)<-> 1.0 (CO3)<2-> 1.0 (CO2)<0>

END

$PCS_RENAME_POST

...

will allow manipulation of components concentrations by simple arithmetic operations before initialization of the geochemical model (_INIT), before each time steps execution of the reaction code node loop code (_PRE), or after completion of each time steps execution of the reaction code node loop code (_POST). In the first example, the components initial concentrations indicated in the list are replaced by the product of the respective values indicated with the concenration of an immobile dummy component "one" throughout the model domain. The "concentration" of the dummy component hence can be used as a scaling factor. By this, initial conditions for very large numbers of components in a geochemical system can be can modified quickly without the need to update the *.ic component by component. The list has to end with the keyword "END". In the second example the component TIC is the total inorganic dissolved carbon and is calculated as the sum of the relevant carbon complexes (HCO3)<->, (CO3)<2-> and (CO2)<0>, i.e.

TIC = 1.0 * (HCO3)<-> + 1.0 * (CO3)<2-> + 1.0 * (CO2)<0>

There are other options available for these keywords which will be explained here soon.

·         The keywords

$VLE

$P_VLE

$RESIDUAL

with options will be explained here soon.

New geochemistry routines toolbox

Some routines of the Geochemcalc-Toolbox by Dedong Li for water density and gas-phase / water phase equilibria have been included in the OGS source code (project subfolder GCC). These routines currently are accessed via the REI, e.g. for quantification of the moles of water per volume of liquid phase (see above), or gas phase liquid phase equilibration (vapor-liquid-equilibrium).

PHREEQC-interface updates

The Phreeqc interface was updated to allow more flexibility in input-output between PHREEQC and OGS:

·         The new Keyword

DATABASE

filename.dat

allows specification of a different thermodynamic database file than the default Phreeqc.dat data base file

·         The new Keyword

KINETICS

Dolomite(dis) # comp

-m 0

-steps 100 in 1 steps

#ende

allows specification of kinetic phases using the PHREEQC input file syntax. Rate laws can be specified in the database file or in the *.pqc input file with the new keyword

RATES

Dolomite(dis)

-start

10 rate = 1.0e-8

20 Area = .001

30 rate = Area * rate * (1 - SR("Dolomite(dis)"))

40 moles = rate * time

50 save moles

-end

#ende

·         The new Keywords

ADDITIONAL_OUTPUT

CO3-2 # comp

HCO3- # comp

a_HCO3- # comp

#ende

ADDITIONAL_PUNCH

PUNCH MOL("CO3-2")

PUNCH MOL("HCO3-")

PUNCH ACT("HCO3-")

#ende

now allow output of other quantities than primary species concentrations from PHREEQC. For these quantities (e.g. concentrations of secondary species, activities, etc.), additional (immobile) components must be defined in OGS to store the output values, i.e. for the above example the components CO3-2, HCO3- and a_HCO3- have to be defnined. For each component in the ADDITIONAL_OUTPUT list a corresponding ADDITIONAL_PUNCH statement must be provided, which invokes output of the requested quantity from PHREEQC by means of the USER_PUNCH keyword. In the example, additional output are concentrations of CO3-2 and HCO3- complexes as well as the activity of the latter.

New Reaction models in KinReact

The kinetic reaction object in OGS has been extended for kinetic dissolution of NAPL source zones and kinetic mineral dissolution / precipitation.

·         NAPL-dissolution requires a two-phase PS_GLOBAL flow with an immobile NAPL-Phase, i.e. NAPL saturation must be below or equal to residual saturation. The new model is explained in detail in a tutorial.

·         Mineral dissolution / precipitation is simulated using a Lasaga-type rate law (Lasaga AC, Soler JM, Ganor J, Burch TE, Nagy KL (1994) Chemical weathering rate laws and global geochemical cycles. Geochim Cosmochim Acta 58:2361–2386). The model is explained in detail here and here. A more detailed instruction will follow soon.

·         Other updates to the kinetic reaction object in OGS comprise a MPI parallelization of the kinetic reaction node loop, introduction of temperature dependency models for biodegradation and NAPL-dissolution, and methods for temporal deactivation of model subdomains during periods of quasi steady state. Some introductory slides can be found here.

New Poro-Perm model for porosity changes from geochemical reactions

Mineral dissolution / precipitation will result in changes of porosity and permeability. To account for these changes we introduce a new generalized routine for porosity updates, which is independent from the geochemical code coupled to OGS. The routine is implemented in the new reaction interface REI, hence a minimal (no specific keywords required) *.rei input file is required to create an instance of the REI object:

#REACTION_INTERFACE

#STOP

Geochemical reactions are quantified for grid nodes. Hence, porosity changes occur at the node locations. Therefore, the REI hosts a node_porosity vector, which stores the porosity values and their updates for each node. At the beginning of the simulation, the element porosities are interpolated to the node locations during initialization of the REI object. After geochemical reactions at the end of each time step, the updated node porosities are interpolated back to the element center of mass. These transient element porosities are stored as element variables with the flow process. For this, a new porosity model is introduced in the CMediumProperties class:

$POROSITY

13 0.05 ; 13 = porosity update from geochemical reactions, 0.05 = initial porosity of material group

With this model, CMediumProperties::Porosity(...) will return the porosity from the element value vector of the flow process.

For updating permeabilities from porosity changes, the new $PERMEABILITY_FUNCTION_POROSITY model 8 was introduced:

$PERMEABILITY_FUNCTION_POROSITY

8 Kozeny_Carman ;

;8 Verma_Pruess ;

Currently, the Kozeny-Carman and Verma-Pruess models are implemented. Usage of this keyword will overrule the permeability model defined with $PERMEABILITY_TENSOR.

Porosity updates are quantified by calculating solid phase volume changes from the sum of solid phase component concentration changes. For this, molar weights (MW) and mineral densities (MD) of the solid phase components must be defined as component properties, e.g.:

#COMPONENT_PROPERTIES

$NAME

Calcite

$MOBILE

0

$TRANSPORT_PHASE

1 ; 0 = aqueous phase, 1 = matrix, 2 = biofilm, 3= NAPL

$MOLAR_WEIGHT

0.10008 ; kg/mol

$MINERAL_DENSITY

2710 ; kg/m3

The volume change (assuming that solid phase components are defined in units of mol/m³ of solid phase) then is given by

DV = [C(t-1)-C(t)] * MW / MD * [1-n(t-1)]

and the new porosity is given by

n(t) = n(t-1) + DV

Note, that solid phase concentrations should be defined either in units of mol/m³ solid phase or in units of mol/kg of water; in the latter case a conversion of units will be performed within the porosity update routine.

New transverse dispersion model

A new model for the transerse dispersion coefficient by Chiogna et al. (Chiogna, G., Eberhardt, C., Grathwohl, P., Cirpka, O.A., Rolle, M., 2010. Evidence of compound-dependent hydrodynamic and mechanical transverse dispersion by multitracer laboratory experiments. Environmental Science and Technology 44 (2), 668–693.) was implemented.

In the *.mmp file the new keyword

$COMPOUND_DEPENDENT_DT

;alpha_t_model graindiameter hydraulicrad betaexpo

1 0.00025 0.00005 0.5

will replace the transverse components of the dispersivity tensor by expressions depending on the aqueous diffusion coefficient of the respective transported component, the grain diameter and the flow velocity.

New tortuosity model

A new tortuosity model for material properties, where

tortuosity = a * porosity

is available:

$TORTUOSITY

2 1.0 ; tortuosity-model porosity-multiplier

New Benchmarks

1) NAPL-Dissolution

1.1 1D_NAPL-diss_flow : PS_GLOBAL with immobile NAPL-Phase

1.2 1D_NAPL-diss_transport : PS_GLOBAL and cons. MT with immobile NAPL-Phase

1.3 1D_NAPL-diss_dissolution : Hansen & Kueper Benchmark

2) OpenGeoSys-ChemApp / Reaction-Interface

2.1 Engesgaard-Benchmarks

2.1.1 Equilibrium

2.1.1.1 calcite_pqc_volume: Unit-Conversion

2.1.1.2 calcite_pqc_weight: Unit-Conversion

2.1.2 Dolomite-Kinetics

2.1.2.1 slow_kin_pqc : Kinetics in pqc interface

2.1.2.2 slow_kin_pqc_krc : Equilibrium in PQC, Kinetics in KRC

2.1.2.3 fast_kin_pqc_krc : Equilibrium in PQC, Kinetics in KRC

2.1.3 Calcite-Dolomite-Kinetics

2.1.3.1 slow_kin_pqc : Kinetics in pqc interface

2.1.3.2 slow_kin_pqc_krc : Speciation in PQC, Kinetics in KRC

2.1.3.3 slow_kin_cap_act_precalc : Speciation in CAP, Kinetics in KRC with CAP Activities, precalculated CAP results

2.1.4 Additional_pqc_output : Output of Secondary Species, activities etc. from PQC

2.2 Poro-Perm-Update

2.2.1 calcite_vol : PQC-Equilibrium volumetric unit conversion

2.2.2 calcite_weight : PQC-Equilibrium weight unit conversion

2.2.3 Lagneau_Batch : Lagneau Benchmark for kinetic batch system

2.2.3 Lagneau_Diffusion : Lagneau Benchmark for kinetic 1D-Diffusion system

2.3 Wagrien_BatchEqui_CAP : PVLE Equilibration with Wagrien rock, precalculated CAP results

2.4 Cation-Exchange: example 11 in phreeqc user manual, precalculated CAP results

3) Temperature-Transport-Reaction-Coupling

3.1 Temperature_BacGrowth: Ratkowski-Modell

3.2 Temperature_Diff: Yaws-Modell

3.3 Temperature_Disp: Chiogna-Modell with Yaws-Modell

3.4 Temperature_NAPLdiss_Csat: Knaus-Modell

3.5 Temperature_NAPLdiss_PhaseDiff: Yaws-Modell for Phase-Diffusion

4) Reaction-Deactivation

4.1 1D_isofrac_1: Method1

4.2 1D_isofrac_2: Method2

4.3 1D_isofrac_3: Method3

4.4 FG_3ports_deac_3: Method3 for 2D-System