DiscretizationModel
DiscretizationModel is the abstract base class for discretization error models. Below is the description of the abstract base class followed by the concrete classes.
- class cfdverify.discretization.DiscretizationModel(parent: DiscretizationError)
Abstract base class for discretization error models
- abstract f_est() Series
Return estimate of system response quantities
- Returns:
System response quantity estimates
- Return type:
pd.Series
- abstract model(key: str, h: int | float | ndarray) int | float | ndarray
Estimate system response quantity at provided discertizations
- Parameters:
key (str) – Key of system response quantity
h (int | float | np.ndarray) – Discretization levels of interest
- Returns:
System response quantity estimate
- Return type:
int | float | np.ndarray
- abstract order() Series
Return observed convergence orders of system response quantities
- Returns:
Observed convergence orders
- Return type:
pd.Series
- abstract property parameter_keys
List of parameter keys
- abstract solve(*args, **kwargs)
Solve the discretization model
- class cfdverify.discretization.SinglePower(parent: DiscretizationError)
Bases:
DiscretizationModelModel discretization error with a single term power series
- f_est() Series
Return estimate of system response quantities
- Returns:
System response quantity estimates
- Return type:
pd.Series
- model(key: str, h: int | float | ndarray) int | float | ndarray
Estimate system response quantity at provided discertizations
The discretization model for a single term power series expansion is
\[f_h = f_0 + \alpha h^{\hat{p}},\]where \(f_h\) is the system response quantity (SRQ) at a representative discretization size of \(h\), \(f_0\) is the estimated SRQ with no discretization error, \(\alpha\) is the term coefficient, and \(\hat{p}\) is the observed order of convergence.
- Parameters:
key (str) – Key of system response quantity
h (int | float | np.ndarray) – Discretization levels of interest
- Returns:
System response quantity estimate
- Return type:
int | float | np.ndarray
- order() Series
Return observed convergence orders of system response quantities
- Returns:
Observed convergence orders
- Return type:
pd.Series
- parameter_keys = ['f_est', 'p', 'alpha']
Parameter keys for SinglePower
- solve(p_limits: list | tuple = [0, inf])
Solve the model
- Parameters:
p_limits (list | tuple) – Lower and upper limit for observed convergence order
- class cfdverify.discretization.AverageValue(parent: DiscretizationError)
Bases:
DiscretizationModelModel discretization error as average of all values
- f_est() Series
Return estimate of system response quantities
- Returns:
System response quantity estimates
- Return type:
pd.Series
- model(key: str, h: int | float | ndarray) int | float | ndarray
Estimate system response quantity at provided discertizations
AverageValue uses the average of all system response quantities (SRQ)s as the estimated true value. This model is useful for cases with oscillatory data without a definitive trend.
- Parameters:
key (str) – Key of system response quantity
h (int | float | np.ndarray) – Discretization levels of interest
- Returns:
est – System response quantity estimate
- Return type:
int | float | np.ndarray
- order() Series
Return observed convergence orders of system response quantities
- Returns:
Observed convergence orders
- Return type:
pd.Series
- parameter_keys = ['mean', 'std', 'order']
Parameter keys for AverageValue
- solve()
Solve the discretization model
- class cfdverify.discretization.FinestValue(parent: DiscretizationError)
Bases:
DiscretizationModelModel discretization error relative to finest response value
- f_est() Series
Return estimate of system response quantities
- Returns:
System response quantity estimates
- Return type:
pd.Series
- model(key: str, h: int | float | ndarray) int | float | ndarray
Estimate system response quantity at provided discertizations
FinestValue uses the system response quantity (SRQ) of the finest result as its estimate. This model is useful if only the finest mesh result is trusted.
- Parameters:
key (str) – Key of system response quantity
h (int | float | np.ndarray) – Discretization levels of interest
- Returns:
est – System response quantity estimate
- Return type:
int | float | np.ndarray
- order() Series
Return observed convergence orders of system response quantities
- Returns:
Observed convergence orders
- Return type:
pd.Series
- parameter_keys = ['f_est', 'order']
Parameter keys for FinestValue
- solve()
Solve the discretization model
- class cfdverify.discretization.MaximumValue(parent: DiscretizationError)
Bases:
DiscretizationModelModel discretization error relative to maximum response value
- f_est() Series
Return estimate of system response quantities
- Returns:
System response quantity estimates
- Return type:
pd.Series
- model(key: str, h: int | float | ndarray) int | float | ndarray
Estimate system response quantity at provided discertizations
MaximumValue uses the largest system response quantity (SRQ) of the results. This model is useful if expert knowledge indicates this is the only reliable result.
- Parameters:
key (str) – Key of system response quantity
h (int | float | np.ndarray) – Discretization levels of interest
- Returns:
est – System response quantity estimate
- Return type:
int | float | np.ndarray
- order() Series
Return observed convergence orders of system response quantities
- Returns:
Observed convergence orders
- Return type:
pd.Series
- parameter_keys = ['f_est', 'order']
Parameter keys for MaximumValue
- solve()
Solve the discretization model
- class cfdverify.discretization.MinimumValue(parent: DiscretizationError)
Bases:
DiscretizationModelModel discretization error relative to minimum response value
- f_est() Series
Return estimate of system response quantities
- Returns:
System response quantity estimates
- Return type:
pd.Series
- model(key: str, h: int | float | ndarray) int | float | ndarray
Estimate system response quantity at provided discertizations
MinimumValue uses the smallest system response quantity (SRQ) of the results. This model is useful if expert knowledge indicates this is the only reliable result.
- Parameters:
key (str) – Key of system response quantity
h (int | float | np.ndarray) – Discretization levels of interest
- Returns:
est – System response quantity estimate
- Return type:
int | float | np.ndarray
- order() Series
Return observed convergence orders of system response quantities
- Returns:
Observed convergence orders
- Return type:
pd.Series
- parameter_keys = ['f_est', 'order']
Parameter keys for MinimumValue
- solve()
Solve the discretization model