pleiades.sammy.parfile module

Top level parameter file handler for SAMMY.

class pleiades.sammy.parfile.CardOrder(value)[source]

Bases: Enum

Defines the standard order of cards in SAMMY parameter files.

Order follows Table VI B.2 in the SAMMY documentation. The order is relevant for writing files, though cards can be read in any order.

RESONANCE = 1
FUDGE = 2
EXTERNAL_R = 3
BROADENING = 4
UNUSED_CORRELATED = 5
NORMALIZATION = 6
RADIUS = 7
DATA_REDUCTION = 8
ORRES = 9
ISOTOPE = 10
PARAMAGNETIC = 11
USER_RESOLUTION = 12
classmethod get_field_name(card_type: CardOrder) str[source]

Get the corresponding field name in SammyParameterFile for a card type.

Parameters:

card_type – The card type enum value

Returns:

Field name used in the parameter file class

Return type:

str

class pleiades.sammy.parfile.SammyParameterFile(*, fudge: Annotated[float | None, Ge(ge=0.0), Le(le=1.0)] = None, resonance: ResonanceCard | None = None, external_r: ExternalREntry | None = None, broadening: BroadeningParameterCard | None = None, unused_correlated: UnusedCorrelatedCard | None = None, normalization: NormalizationBackgroundCard | None = None, radius: RadiusCard | None = None, data_reduction: DataReductionCard | None = None, orres: ORRESCard | None = None, paramagnetic: ParamagneticParameters | None = None, user_resolution: UserResolutionParameters | None = None, isotope: Card10 | None = None)[source]

Bases: BaseModel

Top level parameter file for SAMMY.

All components are optional as parameter files may contain different combinations of cards based on the analysis needs.

fudge: float | None
resonance: ResonanceCard | None
external_r: ExternalREntry | None
broadening: BroadeningParameterCard | None
unused_correlated: UnusedCorrelatedCard | None
normalization: NormalizationBackgroundCard | None
radius: RadiusCard | None
data_reduction: DataReductionCard | None
orres: ORRESCard | None
paramagnetic: ParamagneticParameters | None
user_resolution: UserResolutionParameters | None
isotope: Card10 | None
to_string() str[source]

Convert parameter file to string format.

Returns:

Parameter file content in SAMMY fixed-width format

Return type:

str

The output follows the standard card order from Table VI B.2. Each card is separated by appropriate blank lines.

classmethod from_string(content: str) SammyParameterFile[source]

Parse content string into a parameter file object.

Parameters:

content – Content of the parameter file.

Returns:

Parsed parameter file object.

Return type:

SammyParameterFile

classmethod from_file(filepath: str | Path) SammyParameterFile[source]

Read parameter file from disk.

Parameters:

filepath – Path to parameter file

Returns:

Parsed parameter file object

Return type:

SammyParameterFile

Raises:
to_file(filepath: str | Path) None[source]

Write parameter file to disk.

Parameters:

filepath – Path to write parameter file

Raises:
  • OSError – If file cannot be written

  • ValueError – If content cannot be formatted

print_parameters() None[source]

Print the details of the parameter file.

model_config = {}

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