|
static bool | CalculateConcentration (const SEScalarMass &mass, const SEScalarVolume &volume, SEScalarMassPerVolume &concentration, Logger *logger=nullptr) |
| Calculates the concentration of a substance given mass and volume. concentration = mass / volume. More...
|
|
static bool | CalculateMass (const SEScalarVolume &volume, const SEScalarMassPerVolume &concentration, SEScalarMass &mass, Logger *logger=nullptr) |
| Calculates the mass of a substance given concentration and volume. mass = concentration * volume. More...
|
|
static bool | CalculateHenrysLawConcentration (const SESubstance &substance, const SEScalarPressure &partialPressure, SEScalarMassPerVolume &concentration, Logger *logger=nullptr) |
| Calculates the mass of a substance given concentration and volume. mass = concentration * volume. More...
|
|
static bool | CalculatePartialPressureInGas (const SEScalar0To1 &volumeFraction, const SEScalarPressure &pressure, SEScalarPressure &partialPressure, Logger *logger=nullptr) |
| Calculates the partial pressure of a substance in gas based on the volumeFraction * pressure. More...
|
|
static bool | CalculatePartialPressureInLiquid (const SESubstance &substance, const SEScalarMassPerVolume &concentration, SEScalarPressure &partialPressure, Logger *logger=nullptr) |
| Calculates the partial pressure of a substance in liquid using (density and solubility coefficient) and the concentration. More...
|
|
static void | CalculateOsmolarity (const SEScalarAmountPerVolume &sodiumMolarity, const SEScalarAmountPerVolume &potassiumMolarity, const SEScalarAmountPerVolume &glucoseMolarity, const SEScalarAmountPerVolume &ureaMolarity, SEScalarOsmolarity &fluidOsmolarity) |
| [32] More...
|
|
static void | CalculateOsmolality (const SEScalarAmountPerVolume &sodiumMolarity, const SEScalarAmountPerVolume &potassiumMolarity, const SEScalarAmountPerVolume &glucoseMolarity, const SEScalarAmountPerVolume &ureaMolarity, const SEScalar &specificGravity, SEScalarOsmolality &fluidOsmolality) |
| [32] More...
|
|
static bool | CalculateSpecificGravity (const SEScalarMass &mass, const SEScalarVolume &volume, SEScalar &specificGravity, Logger *logger=nullptr) |
|
static void | Combinations (std::vector< size_t > maxValues, std::vector< std::vector< size_t > > &permutations) |
|
static bool | LinearInterpolator (std::vector< double > &v, size_t newSize) |
|
static void | LinearInterpolator1 (std::vector< double > &v, size_t newSize) |
| A 1D linear interpolator which keeps the min/max value from input. More...
|
|
static double | LinearInterpolator (double initial, double target, double percent) |
| Performs a 1D linear interpolation between two points given the percent between start/finish. More...
|
|
static double | LinearInterpolator (double x1, double x2, double y1, double y2, double xPrime) |
| Performs linear interpolation between two points. More...
|
|
static double | PiecewiseLinearInterpolator (const std::vector< std::pair< double, double > > &points, double x) |
|
static void | SplineInterpolater (std::vector< double > &v, size_t newSize) |
|
static double | ParbolicInterpolator (double min, double max, double factor) |
|
static double | Damper (double targetValue, double previousValue, double dampenFraction_perSec, double timeStep_s) |
|
static double | PercentDifference (double expected, double calculated) |
|
static double | PercentTolerance (double expected, double calculated, double epsilon=1e-20) |
|
static double | ExponentialDecayFunction (double dbase, double dmin, double dmax, double dx) |
| Returns y value for the specified logarithmic function given a normalized x value (0.0 to 1.0). More...
|
|
static double | ExponentialGrowthFunction (double dbase, double dmin, double dmax, double dx) |
| Returns y value for the specified logarithmic function given a normalized x value (0.0 to 1.0). More...
|
|
static double | LogisticFunction (double a, double x50, double k, double x) |
| A logistic function. More...
|
|
static double | RootMeanSquaredError (std::vector< double > observed, std::vector< double > predicted, bool normalize=false, double outlierStandardDeviation=-1.0) |
|
double GeneralMath::ExponentialDecayFunction |
( |
double |
dbase, |
|
|
double |
dmin, |
|
|
double |
dmax, |
|
|
double |
dx |
|
) |
| |
|
static |
Returns y value for the specified logarithmic function given a normalized x value (0.0 to 1.0).
y = dbase ^ [(Log10(dmin/dmax) * x) + Log10(dmax)]
- Parameters
-
dbase | base value |
dmin | minimum |
dmax | maximum |
x | normalized x, 0.0 to 1.0 |
- Returns
- y
Exponential function used to model changes based on severity. Requires a base value for the function, a maximum y value (x = 0), and minimum y value (x = 1). Return the y value that maps to x.
Limitations:
- dmin > 0
- dmax > 0
- 0.0 <= dx <= 1.0
If any of the input variables fall outside the above bounds, the function returns NaN
Input with a min value greater than max value will be exponential growth
double GeneralMath::ExponentialGrowthFunction |
( |
double |
dbase, |
|
|
double |
dmin, |
|
|
double |
dmax, |
|
|
double |
dx |
|
) |
| |
|
static |
Returns y value for the specified logarithmic function given a normalized x value (0.0 to 1.0).
y = dbase ^ [(Log10(dmax/dmin) * x) + Log10(dmin)]
- Parameters
-
dbase | base value |
dmin | minimum |
dmax | maximum |
x | normalized x, 0.0 to 1.0 |
- Returns
- y
Exponential function used to model changes based on severity. Requires a base value for the function, a minimum y value (x = 0), and maximum y value (x = 1). Return the y value that maps to x.
Limitations:
- dmin > 0
- dmax > 0
- 0.0 <= dx <= 1.0
If any of the input variables fall outside the above bounds, the function returns NaN
Input with a min value greater than max value will be exponential decay