|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Functions | |
| None | validate_positive (float value, str name, Optional[str] context=None) |
| None | validate_range (float value, str name, float min_val, float max_val, Optional[str] context=None) |
| None | validate_efficiency (float efficiency, str name, Optional[str] context=None) |
| None | validate_temperature (float temperature, str name, float min_temp=200.0, float max_temp=5000.0, Optional[str] context=None) |
| None | validate_pressure (float pressure, str name, float min_pressure=1e4, float max_pressure=50e6, Optional[str] context=None) |
| None | validate_mach_number (float mach, str name, bool supersonic=False, Optional[str] context=None) |
| None | validate_gamma (float gamma, str name="gamma", Optional[str] context=None) |
| None | validate_required_keys (dict data_dict, list required_keys, str dict_name="dictionary") |
| None | validate_monotonic_decreasing (np.ndarray array, str name, Optional[str] context=None) |
| None | validate_mass_flow_rate (float mdot, str name, float min_mdot=0.001, float max_mdot=100.0, Optional[str] context=None) |
Centralized validation functions for physics quantities. This module provides explicit validation functions that raise clear errors instead of hiding problems with clipping, clamping, or default fallbacks. Design principles: 1. NEVER hide errors with defaults or clipping 2. Raise ValueError with descriptive messages 3. Include relevant context in error messages 4. Validate physical constraints explicitly
| None engine.pipeline.validation.validate_efficiency | ( | float | efficiency, |
| str | name, | ||
| Optional[str] | context = None ) |
Validate that an efficiency is in [0, 1].
Parameters
----------
efficiency : float
Efficiency value to validate
name : str
Name of the efficiency for error message
context : str, optional
Additional context (e.g., "L*=0.15 m, mixing=0.8")
Raises
------
ValueError
If efficiency is not in [0, 1]
Definition at line 91 of file validation.py.
References validate_range().
| None engine.pipeline.validation.validate_gamma | ( | float | gamma, |
| str | name = "gamma", | ||
| Optional[str] | context = None ) |
Validate that specific heat ratio is physically reasonable.
Parameters
----------
gamma : float
Specific heat ratio
name : str, optional
Name for error message (default: "gamma")
context : str, optional
Additional context for error message
Raises
------
ValueError
If gamma is not in reasonable range
Definition at line 256 of file validation.py.
| None engine.pipeline.validation.validate_mach_number | ( | float | mach, |
| str | name, | ||
| bool | supersonic = False, | ||
| Optional[str] | context = None ) |
Validate that a Mach number is physically reasonable.
Parameters
----------
mach : float
Mach number
name : str
Name of the Mach number for error message
supersonic : bool, optional
If True, require M > 1 (default: False)
context : str, optional
Additional context for error message
Raises
------
ValueError
If Mach number is invalid
Definition at line 207 of file validation.py.
| None engine.pipeline.validation.validate_mass_flow_rate | ( | float | mdot, |
| str | name, | ||
| float | min_mdot = 0.001, | ||
| float | max_mdot = 100.0, | ||
| Optional[str] | context = None ) |
Validate that a mass flow rate is physically reasonable.
Parameters
----------
mdot : float
Mass flow rate in kg/s
name : str
Name of the mass flow for error message
min_mdot : float, optional
Minimum reasonable mass flow (default: 1 g/s)
max_mdot : float, optional
Maximum reasonable mass flow (default: 100 kg/s)
context : str, optional
Additional context for error message
Raises
------
ValueError
If mass flow rate is invalid
Definition at line 372 of file validation.py.
| None engine.pipeline.validation.validate_monotonic_decreasing | ( | np.ndarray | array, |
| str | name, | ||
| Optional[str] | context = None ) |
Validate that an array is monotonically decreasing.
Parameters
----------
array : np.ndarray
Array to validate
name : str
Name of the array for error message
context : str, optional
Additional context for error message
Raises
------
ValueError
If array is not monotonically decreasing
Definition at line 329 of file validation.py.
| None engine.pipeline.validation.validate_positive | ( | float | value, |
| str | name, | ||
| Optional[str] | context = None ) |
Validate that a value is positive and finite.
Parameters
----------
value : float
Value to validate
name : str
Name of the variable for error message
context : str, optional
Additional context for error message
Raises
------
ValueError
If value is not positive and finite
Definition at line 17 of file validation.py.
| None engine.pipeline.validation.validate_pressure | ( | float | pressure, |
| str | name, | ||
| float | min_pressure = 1e4, | ||
| float | max_pressure = 50e6, | ||
| Optional[str] | context = None ) |
Validate that a pressure is physically reasonable.
Parameters
----------
pressure : float
Pressure in Pascal
name : str
Name of the pressure for error message
min_pressure : float, optional
Minimum reasonable pressure (default: 10 kPa)
max_pressure : float, optional
Maximum reasonable pressure (default: 50 MPa)
context : str, optional
Additional context for error message
Raises
------
ValueError
If pressure is outside reasonable range
Definition at line 158 of file validation.py.
| None engine.pipeline.validation.validate_range | ( | float | value, |
| str | name, | ||
| float | min_val, | ||
| float | max_val, | ||
| Optional[str] | context = None ) |
Validate that a value is in a specified range.
Parameters
----------
value : float
Value to validate
name : str
Name of the variable for error message
min_val : float
Minimum allowed value (inclusive)
max_val : float
Maximum allowed value (inclusive)
context : str, optional
Additional context for error message
Raises
------
ValueError
If value is outside the specified range
Definition at line 51 of file validation.py.
Referenced by validate_efficiency().
| None engine.pipeline.validation.validate_required_keys | ( | dict | data_dict, |
| list | required_keys, | ||
| str | dict_name = "dictionary" ) |
Validate that all required keys are present in a dictionary.
Parameters
----------
data_dict : dict
Dictionary to validate
required_keys : list
List of required key names
dict_name : str, optional
Name of the dictionary for error message
Raises
------
KeyError
If any required keys are missing
Definition at line 299 of file validation.py.
| None engine.pipeline.validation.validate_temperature | ( | float | temperature, |
| str | name, | ||
| float | min_temp = 200.0, | ||
| float | max_temp = 5000.0, | ||
| Optional[str] | context = None ) |
Validate that a temperature is physically reasonable.
Parameters
----------
temperature : float
Temperature in Kelvin
name : str
Name of the temperature for error message
min_temp : float, optional
Minimum reasonable temperature (default: 200 K)
max_temp : float, optional
Maximum reasonable temperature (default: 5000 K)
context : str, optional
Additional context for error message
Raises
------
ValueError
If temperature is outside reasonable range
Definition at line 115 of file validation.py.