pleiades.sammy.parameters.broadening module
Data class for card 04::broadening parameters.
- class pleiades.sammy.parameters.broadening.BroadeningParameters(*, crfn: float, temp: float, thick: float, deltal: float, deltag: float, deltae: float, d_crfn: float | None = None, d_temp: float | None = None, d_thick: float | None = None, d_deltal: float | None = None, d_deltag: float | None = None, d_deltae: float | None = None, deltc1: float | None = None, deltc2: float | None = None, d_deltc1: float | None = None, d_deltc2: float | None = None, flag_crfn: VaryFlag = VaryFlag.NO, flag_temp: VaryFlag = VaryFlag.NO, flag_thick: VaryFlag = VaryFlag.NO, flag_deltal: VaryFlag = VaryFlag.NO, flag_deltag: VaryFlag = VaryFlag.NO, flag_deltae: VaryFlag = VaryFlag.NO, flag_deltc1: VaryFlag | None = None, flag_deltc2: VaryFlag | None = None)[source]
Bases:
BaseModelContainer for a single set of broadening parameters.
Contains all parameters from a single card set 4 entry including: - Main parameters (CRFN, TEMP, etc.) - Their uncertainties - Additional Gaussian parameters - Flags indicating whether each parameter should be varied
Note on fixed-width format: Each numeric field in the file uses a 10-column width with a 9+1 pattern: - 9 characters for the actual numeric data (e.g. “1.2340E+00”) - 1 character for space separator This format ensures human readability while maintaining proper fixed-width alignment.
- validate_gaussian_parameters() BroadeningParameters[source]
Validate that if any Gaussian parameter is present, both are present.
- classmethod from_lines(lines: List[str]) BroadeningParameters[source]
Parse broadening parameters from a list of fixed-width format lines.
- Parameters:
lines – List of input lines (excluding header)
- Returns:
Parsed parameters
- Return type:
- Raises:
ValueError – If lines are invalid or required data is missing
- to_lines() List[str][source]
Convert the parameters to a list of fixed-width format lines.
- Returns:
Lines representing the parameters
- Return type:
List[str]
- model_config = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pleiades.sammy.parameters.broadening.BroadeningParameterCard(*, parameters: BroadeningParameters)[source]
Bases:
BaseModelContainer for a complete broadening parameter card set (Card Set 4).
This class handles a complete broadening parameter card set, including: - Header line - Parameter entries - Trailing blank line
- parameters: BroadeningParameters
- classmethod is_header_line(line: str) bool[source]
Check if line is a valid header line.
- Parameters:
line – Input line to check
- Returns:
True if line is a valid header
- Return type:
- classmethod from_lines(lines: List[str]) BroadeningParameterCard[source]
Parse a complete broadening parameter card set from lines.
- Parameters:
lines – List of input lines including header
- Returns:
Parsed card set
- Return type:
- Raises:
ValueError – If no valid header found or invalid format
- to_lines() List[str][source]
Convert the card set to a list of lines.
- Returns:
Lines including header and parameters
- Return type:
List[str]
- model_config = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].