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: BaseModel

Container 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.

crfn: float
temp: float
thick: float
deltal: float
deltag: float
deltae: float
d_crfn: float | None
d_temp: float | None
d_thick: float | None
d_deltal: float | None
d_deltag: float | None
d_deltae: float | None
deltc1: float | None
deltc2: float | None
d_deltc1: float | None
d_deltc2: float | None
flag_crfn: VaryFlag
flag_temp: VaryFlag
flag_thick: VaryFlag
flag_deltal: VaryFlag
flag_deltag: VaryFlag
flag_deltae: VaryFlag
flag_deltc1: VaryFlag | None
flag_deltc2: VaryFlag | None
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:

BroadeningParameters

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: BaseModel

Container 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:

bool

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:

BroadeningParameterCard

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].