# HydroGeoSphere/Solute Definition

These instructions can be used to add a new solute (i.e. species) to the system. HydroGeoSphere is able to handle more than one solute per simulation, and straight and branching decay chains are also supported. An example of a straight decay chain is the following system:
    $Uranium^{234}\rightarrow Thorium^{230}\rightarrow Radium^{226}$
which indicates that the decay of the radioactive isotope Uranium$^{234}$ produces the daughter product Thorium$^{230}$, which in turn decays to form Radium$^{226}$. For an example of a straight decay chain see Section 4.5.1. Branching decay chains can have a single isotope which decays into one or more daughter products, or daughter products which have one or more parents.
Note that a solute can have different values for the decay constant and distribution coefficient (retardation factor for fractured media) in porous, dual or fractured media or from zone to zone in a single medium.

## Solute

Causes grok to begin reading a group of solute definition instructions until it encounters an End instruction.
The available instructions are:

## Name

* spname Solute name.
Changes the solute name, which defaults to Species n, where n is the current solute number.

## Free-solution diffusion coefficient

* diffrac Free-solution diffusion coefficient [L$^2$ T$^{−1}$], $D_{free}$ in Equation 2.97.
Assigns a new value for the free-solution diffusion coefficient, which defaults to 0.0 (zero).

## Parents

* npa Number of parent species for the current species. If the current species has one or more parents, enter the following npa times (i.e. once for each parent):
       (a) kparen, aparen Parent species number and the mass fraction.
Assigns a value for the number of parent species, which defaults to 0. The mass fraction is a number between 0 and 1 which defines how much of the parent species transforms into the daughter species (i.e. the current species).
The following parameters affect porous media solute properties:

## Decay constant

* clambda First-order decay constant [T$^{−1}$], ${\lambda }$ in Equation 2.95.
Assigns a uniform value for the solute first-order decay constant for all porous media zones in the domain. The default value is 0.0 (no decay).

## Zoned decay constant

* clambda(i,j),j=1,nzones_prop First-order decay constant [T$^{−1}$] for species i for each porous media zone j, ${\lambda }$ in Equation 2.95.
Assigns a unique value for the solute first-order decay constant to each porous media zone in the domain. The default value is 0.0 (no decay).

## Distribution coefficient

* dkd Distribution coefficient, $K^{\prime }$ in Equation 2.96.
Assigns a uniform value for the solute distribution coefficient for all porous media zones in the domain. The default value is 0.0 (no attenuation).

## Zoned distribution coefficient

* dkd(i,j),j=1,nzones_prop Distribution coefficient for species i for each porous media zone j, $K^{\prime }$ in Equation 2.96.
Assigns a unique value for the distribution coefficient to each porous media zone in the domain. The default value is 0.0 (no attenuation).

## Dual decay constant

* clambda First-order decay constant [T$^{−1}$], ${\lambda }_{d}$ in Equation 2.103.
Assigns a uniform value for the solute first-order decay constant for all dual continua zones in the domain. The default value is 0.0 (no decay).

## Zoned dual decay constant

* clambda(i,j),j=1,nzones_prop First-order decay constant [T$^{−1}$] for species i for each dual continua zone j, ${\lambda }_{d}$ in Equation 2.103.
Assigns a unique value for the solute first-order decay constant to each zone in the domain. The default value is 0.0 (no decay).

## Dual distribution coefficient

* dkd Distribution coefficient, $K_{d}^{\prime }$ in Equation 2.104.
Assigns a uniform value for the solute distribution coefficient for all dual continua zones in the domain. The default value is 0.0 (no attenuation).

## Zoned dual distribution coefficient

* dkd(i,j),j=1,nzones_prop Distribution coefficient for species i for each dual continua zone j, $K_{d}^{\prime }$ in Equation 2.104.
Assigns a unique value for the distribution coefficient to each dual continua zone in the domain. The default value is 0.0 (no attenuation).
The following parameters affect fractured media solute properties:

## Fracture Decay constant

* clambda_f First-order decay constant [T$^{−1}$], ${\lambda }_{f}$ in Equation 2.99.
Assigns a uniform value for the solute first-order decay constant for all discrete fracture zones in the domain. The default value is 0.0 (no decay).

## Zoned fracture decay constant

* clambda_f(i,j),j=1,nzones_prop First-order decay constant [T$^{−1}$] for species i for each discrete fracture zone j, ${\lambda }_{f}$ in Equation 2.99.
Assigns a unique value for the solute first-order decay constant to each discrete fracture zone in the domain. The default value is 0.0 (no decay).

## Fracture retardation factor

* rfrac Fracture retardation factor, $R_{f}$ in Equation 2.100.
Assigns a uniform value for the fracture retardation factor for all discrete fracture zones in the domain. The default value is 1.0 (no attenuation).

## Zoned fracture retardation factor

* rfrac(i,j),j=1,nzones_prop Retardation factor for species i for each discrete fracture zone j, $R_{f}$ in Equation 2.100.
Assigns a unique value for the fracture retardation factor to each discrete fracture zone in the domain. The default value is 1.0 (no attenuation).
The following parameters affect overland media solute properties:

## Overland Decay constant

* clambda_o First-order decay constant [T$^{−1}$], ${\lambda }_{f}$ in Equation 2.110.
Assigns a uniform value for the solute first-order decay constant for all overland flow zones in the domain. The default value is 0.0 (no decay).

## Zoned overland decay constant

* clambda_o(i,j),j=1,nzones_prop First-order decay constant [T$^{−1}$] for species i for each overland flow zone j, ${\lambda }_{f}$ in Equation 2.99.
Assigns a unique value for the solute first-order decay constant to each overland flow zone in the domain. The default value is 0.0 (no decay).

## Overland retardation factor

* rolf Overland flow retardation factor, $R_{o}$ in Equation 2.100.
Assigns a uniform value for the overland retardation factor for all overland zones in the domain. The default value is 1.0 (no attenuation).

## Zoned overland retardation factor

* rfrac(i,j),j=1,nzones_prop retardation factor for species i for each overland flow zone j, $R_{o}$ (similar to $R_{f}$ in Equation 2.100).
Assigns a unique value for the overland flow retardation factor to each overland zone in the domain. The default value is 1.0 (no attenuation).
The following instructions can be used to identify certain species. This is especially important to calculate fluid density and viscosity (for variable-density transport) from individual species concentrations and temperature. Note that fluid temperature is treated as a mobile species.

## Sodium species

The presently defined species is identified as sodium, ${Na^{+}}$
The following instructions can be used likewise to identify other species:
    Potassium species
    Calcium species
    Magnesium species
    Chloride species
    Sulphate species
    Hydrogencarbonate species
    Carbonate species
    Salt mass fraction
    Temperature species
By default, no species impacts fluid density or viscosity. This default can be changed with the following instruction:

## Affects fluid properties

With this instruction, the presently defined species has an impact on both fluid density and viscosity. This instruction can only be applied to the following species: $Na^{+},K^{+},Ca^{2+},Mg^{2+},Cl^{-},SO_{4}^{2-},CO_{3}^{2-}$ and $HCO_{3}^{-}$, fluid temperature $T$ and salt mass fraction $smf$. Note that, for the moment, if salt mass fraction affects fluid properties, no other species can impact fluid properties.

## Placement of instructions

Note that instructions like decay constant and zoned decay constant are mutually exclusive for a given solute, and should not appear in the same Solute . . . End solute block. This also applies to distribution coefficient definitions for all types of media. You can however, define a solute with decay or attenuation properties which are uniform throughout the domain while a second solute has a zoned behaviour.
Since a new species is created each time the instruction solute is used, any instructions (e.g. make fractures, specified concentration, specified third-type concentration, etc. which depend on it should be placed after it in the prefix.grok file.

## Example solute definitions

The following simple example shows how to define a single, conservative, non-decaying solute called 'Species 1' with a free-solution diffusion coefficient of zero (0.0):
An example of a more complex system with two solutes and 7 material zones is shown in Figure 5.7 for the first solute, called DCB, which only decays in zone 1, and has distribution coefficients which vary from zone to zone:
    Figure 5.7: Definition of a Parent Solute With Zoned Properties
Figure 5.8 shows how to define the second solute, called BAM, which is a daughter product of DCB, and does not decay. This solute has the same zoned distribution coefficients as the first solute:
    Figure 5.8: Definition of a Daughter Solute With Zoned Properties