fusionlab.params.LearnableSs

class fusionlab.params.LearnableSs[source]

Bases: BaseLearnable

Learnable Specific Storage (Ss).

Indicates that the PINN’s specific storage coefficient \(S_s\) should be learned (trainable) if TensorFlow is available; otherwise acts as a fixed NumPy‐based parameter. We learn \(\log(S_s)\) to ensure \(S_s > 0\). The user supplies an initial_value, and the object initializes:

\[\log S_s \;=\; \log( ext{initial\_value}).\]

Returns positive values via exp transform.

Examples

>>> ss = LearnableSs(1e-3)
>>> value = ss.get_value()
__init__(initial_value=0.0001, log_transform=True, name=None, trainable=True, **kws)[source]
Parameters:
  • initial_value (float)

  • log_transform (bool)

  • name (str | None)

  • trainable (bool)

Methods

__init__([initial_value, log_transform, ...])

from_config(config)

Re-instantiate from get_config().

get_config()

Return a JSON-serialisable dict for tf.keras.

get_value()

Return \(Ss = \exp(log\_Ss)\).

__init__(initial_value=0.0001, log_transform=True, name=None, trainable=True, **kws)[source]
Parameters:
  • initial_value (float)

  • log_transform (bool)

  • name (str | None)

  • trainable (bool)

get_value()[source]

Return \(Ss = \exp(log\_Ss)\).

Returns:

Positive storage coefficient.

Return type:

Union[Tensor, float]