pleiades.sammy.parameters.orres module

Oak Ridge Resolution Function parameters (Card Set 9).

class pleiades.sammy.parameters.orres.ModeratorType(value)[source]

Bases: Enum

Type of moderator used

WATER = 'WATER'
TANTALUM = 'TANTA'
class pleiades.sammy.parameters.orres.DetectorType(value)[source]

Bases: Enum

Type of detector used

LITHIUM = 'LITHI'
NE110 = 'NE110'
class pleiades.sammy.parameters.orres.BurstParameters(*, burst: float, flag_burst: VaryFlag = VaryFlag.NO, d_burst: float | None = None)[source]

Bases: BaseModel

Burst width parameters.

This models the BURST section of ORRES card that specifies: - Burst width in nanoseconds - Flag indicating whether to vary/PUP the parameter - Optional uncertainty on the burst width

burst: float
flag_burst: VaryFlag
d_burst: float | None
classmethod from_lines(lines: List[str]) BurstParameters[source]

Parse burst parameters from input lines.

Parameters:

lines – List of lines containing burst parameters

Returns:

BurstParameters object

Raises:

ValueError – If required data missing or invalid format

to_lines() List[str][source]

Convert parameters to fixed-width format lines.

Returns:

List containing the formatted parameter line

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.WaterParameters(*, watr0: float = 3.614, watr1: float = -0.089, watr2: float = 0.037, dof: Annotated[int, Ge(ge=1)] = 4, flag_watr0: VaryFlag = VaryFlag.NO, flag_watr1: VaryFlag = VaryFlag.NO, flag_watr2: VaryFlag = VaryFlag.NO, d_watr0: float | None = None, d_watr1: float | None = None, d_watr2: float | None = None)[source]

Bases: BaseModel

Water moderator parameters for the ORRES card.

Contains parameters for mean free path coefficients: - Constant term (WATR0) - Linear term (WATR1) - Quadratic term (WATR2) - Degrees of freedom for chi-squared distribution - Vary flags and uncertainties for each parameter

watr0: float
watr1: float
watr2: float
dof: int
flag_watr0: VaryFlag
flag_watr1: VaryFlag
flag_watr2: VaryFlag
d_watr0: float | None
d_watr1: float | None
d_watr2: float | None
classmethod from_lines(lines: List[str]) WaterParameters[source]

Parse water moderator parameters from input lines.

to_lines() List[str][source]

Convert parameters to fixed-width format lines.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.TantalumParameters(*, tanta: float, flag_tanta: VaryFlag = VaryFlag.NO, d_tanta: float | None = None, x0: float, x1: float, x2: float, x3: float, flag_x0: VaryFlag = VaryFlag.NO, flag_x1: VaryFlag = VaryFlag.NO, flag_x2: VaryFlag = VaryFlag.NO, flag_x3: VaryFlag = VaryFlag.NO, d_x0: float | None = None, d_x1: float | None = None, d_x2: float | None = None, d_x3: float | None = None, beta: float, alpha: float, flag_beta: VaryFlag = VaryFlag.NO, flag_alpha: VaryFlag = VaryFlag.NO, d_beta: float | None = None, d_alpha: float | None = None)[source]

Bases: BaseModel

Tantalum target parameters for ORRES card.

tanta: float
flag_tanta: VaryFlag
d_tanta: float | None
x0: float
x1: float
x2: float
x3: float
flag_x0: VaryFlag
flag_x1: VaryFlag
flag_x2: VaryFlag
flag_x3: VaryFlag
d_x0: float | None
d_x1: float | None
d_x2: float | None
d_x3: float | None
beta: float
alpha: float
flag_beta: VaryFlag
flag_alpha: VaryFlag
d_beta: float | None
d_alpha: float | None
classmethod from_lines(lines: List[str]) TantalumParameters[source]

Parse parameters from input lines.

to_lines() List[str][source]

Convert parameters to fixed-width format lines.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.LithiumParameters(*, d: float, f: float, g: float, flag_d: VaryFlag = VaryFlag.NO, flag_f: VaryFlag = VaryFlag.NO, flag_g: VaryFlag = VaryFlag.NO, d_d: float | None = None, d_f: float | None = None, d_g: float | None = None)[source]

Bases: BaseModel

Lithium glass detector parameters.

d: float
f: float
g: float
flag_d: VaryFlag
flag_f: VaryFlag
flag_g: VaryFlag
d_d: float | None
d_f: float | None
d_g: float | None
classmethod from_lines(lines: List[str]) LithiumParameters[source]

Parse lithium detector parameters from input lines.

to_lines() List[str][source]

Convert parameters to fixed-width format lines.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.CrossSectionPoint(*, energy: float, sigma: float)[source]

Bases: BaseModel

Single energy/cross-section point for NE110 detector.

energy: float
sigma: float
model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.NE110Parameters(*, delta: float, flag_delta: VaryFlag = VaryFlag.NO, d_delta: float | None = None, density: float = 0.0047, cross_sections: List[CrossSectionPoint] | None = None)[source]

Bases: BaseModel

NE110 detector parameters.

delta: float
flag_delta: VaryFlag
d_delta: float | None
density: float
cross_sections: List[CrossSectionPoint] | None
classmethod from_lines(lines: List[str]) NE110Parameters[source]

Parse NE110 detector parameters from input lines.

to_lines() List[str][source]

Convert parameters to fixed-width format lines.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.ChannelParameters(*, ecrnch: float, chann: float, d_chann: float | None = None, flag_chann: VaryFlag = VaryFlag.NO)[source]

Bases: BaseModel

Channel width parameters.

ecrnch: float
chann: float
d_chann: float | None
flag_chann: VaryFlag
classmethod from_lines(lines: List[str]) List[ChannelParameters][source]

Parse multiple channel parameter entries.

Returns list since multiple channel definitions can exist.

to_lines() List[str][source]

Convert single channel parameter to fixed-width format.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.ORRESParameters(*, burst: BurstParameters | None = None, moderator: WaterParameters | TantalumParameters | None = None, detector: LithiumParameters | NE110Parameters | None = None, channels: List[ChannelParameters] | None = None)[source]

Bases: BaseModel

Main container for ORRES parameters with validation logic.

burst: BurstParameters | None
moderator: WaterParameters | TantalumParameters | None
detector: LithiumParameters | NE110Parameters | None
channels: List[ChannelParameters] | None
validate_components() ORRESParameters[source]

Validate dependencies between components.

classmethod parse_orres_parameters(lines: List[str]) ORRESParameters[source]
to_lines() List[str][source]

Convert all parameters to lines.

model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pleiades.sammy.parameters.orres.ORRESCard(*, parameters: ORRESParameters)[source]

Bases: BaseModel

Container for complete ORRES card.

parameters: ORRESParameters
classmethod is_header_line(line: str) bool[source]
classmethod from_lines(lines: List[str]) ORRESCard[source]
to_lines() List[str][source]
model_config = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].