geoprior.params.LearnableMV#

class geoprior.params.LearnableMV(initial_value=1e-07, name=None, trainable=True, log_transform=True, **kws)[source]#

Bases: BaseLearnable

Learnable effective vertical compressibility (m_v).

In GeoPriorSubsNet this is a global scalar that links head changes to equilibrium settlement via \(s_{\\mathrm{eq}}(h) = m_v\\,\\gamma_w\\,\\Delta h\\,H\), where \(H(x,y)\) is an effective compressible thickness field. The field \(S_s(x,y)\) is interpreted as an effective specific storage, with \(S_s \\approx m_v\\,\\gamma_w\) used as a soft consistency relation rather than a hard identity.

Positivity is enforced by learning \(\\log(m_v)\).

Parameters:
  • initial_value (float, default 1e-7) – Initial value for \(m_v\) [Pa^-1]. Must be positive and typically falls in a geotechnically plausible range (e.g. \(10^{-9}–10^{-5}\) Pa^-1).

  • name (str, optional) – Variable name.

  • trainable (bool, default True) – Whether the parameter is trainable.

  • log_transform (bool)

__init__(initial_value=1e-07, name=None, trainable=True, log_transform=True, **kws)[source]#
Parameters:

Methods

__init__([initial_value, name, trainable, ...])

from_config(config)

Re-instantiate from get_config().

get_config()

Return a JSON-serialisable dict for tf.keras.

get_value()

Return \(m_v = \exp(\log(m_v))\)

__init__(initial_value=1e-07, name=None, trainable=True, log_transform=True, **kws)[source]#
Parameters:
get_value()[source]#

Return \(m_v = \exp(\log(m_v))\)

Return type:

Tensor | float