atomica.scenarios.Scenario¶
- class atomica.scenarios.Scenario(name, active=True, parsetname=None, progsetname=None)[source]¶
Bases:
NamedItem
Base scenario class
All Scenario objects share this type. It is a NamedItem that also has an
active
property which represents whether the scenario should be run as part ofproject.Project.run_scenarios()
The optional variables
parsetname
andprogsetname
reference the name of parsets and progsets to use viaScenario.run()
. These should match the names of objects in the project passed intoScenario.run()
. However,Scenario.run()
can also take in a parset and/or progset directly, allowing the scenario to be used with other parsets and progsets on the fly. Ifparsetname
andprogsetname
are not set in theScenario
then they must be passed intoScenario.run()
.- Parameters:
name (
str
) – The name of the scenario - also sets the result name viaScenario.run()
parsetname (
str
) – If running viaProject.run_scenarios
this identifies which parset to use from the projectprogsetname (
str
) – If running viaProject.run_scenarios
this identifies which progset to use. If set toNone
then programs will not be usedactive (
bool
) – If running viaProject.run_scenarios
this flags whether to run the scenario
NamedItem constructor
A name must be a string
- Parameters:
name (
str
)
Attributes
Specify parset name when run via
Project.run_scenarios
Specify progset name when run via
Project.run_scenarios
Flag whether the scenario should be run via
Project.run_scenarios
Methods
copy
Get scenario instructions
Get scenario parset
Get scenario progset
Run scenario
- active¶
Flag whether the scenario should be run via
Project.run_scenarios
- get_instructions(progset, project)[source]¶
Get scenario instructions
If the derived scenario class produces program instructions, return them here.
- Parameters:
progset (
ProgramSet
) – InputProgramSet
- Return type:
- Returns:
ProgramInstructions
instance, or None if no instructions (in which case, programs will not be used)
- get_parset(parset, project)[source]¶
Get scenario parset
If the derived scenario class modifies the parset, return the modified version
- Parameters:
parset – Input
ParameterSet
- Return type:
- Returns:
Modified parset for use in the simulation
- get_progset(progset, project)[source]¶
Get scenario progset
If the derived scenario class modifies the progset, return the modified version
- Parameters:
progset (
ProgramSet
) – InputProgramSet
- Return type:
- Returns:
Modified progset for use in the simulation
- parsetname¶
Specify parset name when run via
Project.run_scenarios
- progsetname¶
Specify progset name when run via
Project.run_scenarios
- run(project, parset=None, progset=None, store_results=True)[source]¶
Run scenario
- Parameters:
project – A
Project
instanceparset (
ParameterSet
) – Optionally aParameterSet
instance, otherwise will useself.parsetname
progset (
ProgramSet
) – Optionally aProgramSet
instance, otherwise will useself.progsetname
store_results (
bool
) – If True, the results will be copied into the project
- Return type:
- Returns:
A
Result
object