You're reading the documentation for a development version. For the latest stable documentation, please have a look at v5.1.X.
Neural Network Binding¶
Group /input/model/unit_XXX/particle_type_ZZZ/adsorption - ADSORPTION_MODEL = NEURAL_NETWORK
For information on model equations, refer to Neural Network Binding.
IS_KINETICSelects kinetic or quasi-stationary adsorption mode: 1 = kinetic, 0 = quasi-stationary. If a single value is given, the mode is set for all bound states. Otherwise, the adsorption mode is set for each bound state separately.
Type: int |
Range: {0,1} |
Length: 1/NTOTALBND |
NN_KKINLinear-driving-force coefficients in component-major ordering. Controls the rate at which the solid-phase loading approaches the neural network-predicted equilibrium.
Unit: \(s^{-1}\)
Type: double |
Range: \(\geq 0\) |
Length: NCOMP |
NLAYERSNumber of hidden layers \(N\) in the neural network architecture.
Type: int |
Range: \(\geq 1\) |
Length: 1 |
NNODESNumber of nodes per hidden layer. All hidden layers share the same width.
Type: int |
Range: \(\geq 1\) |
Length: 1 |
Group /input/model/unit_XXX/particle_type_ZZZ/adsorption/bound_state_XXX/layer_0
NORM_FACTORNormalization factors applied to the pore-phase concentration before feeding into the neural network.
Type: double |
Range: \(> 0\) |
Length: 1 |
POROSITY_FACTORScaling factor applied to the neural network prediction. This can be used to account for porosity differences or unit conversions between training data and simulation conditions.
Type: double |
Range: \(> 0\) |
Length: 1 |
Neural network weights and biases are organized hierarchically by bound state and layer.
For each bound state, there are NLAYERS + 1 layer groups:
layer_0 through layer_{NLAYERS-1} are the hidden layers and
layer_{NLAYERS} is the output layer. All weight matrices must be stored in
column-major (Fortran) order.
Group /input/model/unit_XXX/particle_type_ZZZ/adsorption/bound_state_XXX/layer_0
First hidden layer parameters. Always present.
KERNELWeight matrix \(W_1\) connecting the input to the first hidden layer. Shape: (NNODES x NCOMP). Stored in column-major order.
Type: double |
Range: \(\mathbb{R}\) |
Length: NNODES * NCOMP |
BIASBias vector \(b_1\) for the first hidden layer.
Type: double |
Range: \(\mathbb{R}\) |
Length: NNODES |
Group /input/model/unit_XXX/particle_type_ZZZ/adsorption/bound_state_XXX/layer_l (for l = 1, …, NLAYERS-1)
Intermediate hidden layer parameters. Present only when NLAYERS >= 2.
Layer layer_l connects hidden layer \(l\) to hidden layer \(l+1\).
KERNELWeight matrix \(W_{l+1}\) of shape (NNODES x NNODES). Stored in column-major order.
Type: double |
Range: \(\mathbb{R}\) |
Length: NNODES*NNODES |
BIASBias vector \(b_{l+1}\) for hidden layer \(l+1\).
Type: double |
Range: \(\mathbb{R}\) |
Length: NNODES |
Group /input/model/unit_XXX/particle_type_ZZZ/adsorption/bound_state_XXX/layer_NLAYERS
Output layer parameters. Always present. Index equals NLAYERS.
KERNELWeight matrix \(W_{N+1}\) connecting the last hidden layer to the scalar output. Shape: (1 x NNODES). Stored in column-major order.
Type: double |
Range: \(\mathbb{R}\) |
Length: NNODES |
BIASBias scalar \(b_{N+1}\) for the output layer.
Type: double |
Range: \(\mathbb{R}\) |
Length: 1 |