wtf section

wtf stands for what to fit. This section parametrizes the failed cavities, as well as how they are fixed.

If you want to use the k out of n method:

Entry

Type

Description

Allowed values

Mandatory?

failed

list

Index/name of failed cavities. Must be a list[list[int]] or list[list[str]].

history_kwargs

dict

kwargs for the OptimizationHistory.

id_nature

str

Indicates if failed is element index/cavity index/name, element or cavity or name.

(‘element’, ‘cavity’, ‘name’)

objective_preset

str

Objectives for the optimisation algorithm.

(‘EnergyPhaseMismatch’, ‘simple_ADS’, ‘EnergyMismatch’, ‘rephased_ADS’, ‘EnergySyncPhaseMismatch’, ‘sync_phase_as_objective_ADS’, ‘experimental’)

optimisation_algorithm

str

Name of optimisation algorithm.

(‘least_squares’, ‘least_squares_penalty’, ‘nsga’, ‘downhill_simplex’, ‘downhill_simplex_penalty’, ‘nelder_mead’, ‘nelder_mead_penalty’, ‘differential_evolution’, ‘explorator’, ‘experimental’)

optimisation_algorithm_kwargs

dict

Keyword arguments passed to the optimisation algorithm.

strategy

str

How compensating cavities are selected.

(‘k out of n’, ‘l neighboring lattices’, ‘global’, ‘global_downstream’, ‘manual’)

tie_politics

str

How to select the compensating elements when several are equidistant to the failure.

(‘upstream first’, ‘downstream first’)

shift

int

Distance increase for downstream elements (shift < 0) or upstream elements (shift > 0). Used to have a window of compensating cavities which is not centered around the failed elements.

k

int

Number of compensating cavities per failed cavity.

If you want to use the l neighboring lattices method:

Entry

Type

Description

Allowed values

Mandatory?

failed

list

Index/name of failed cavities. Must be a list[list[int]] or list[list[str]].

history_kwargs

dict

kwargs for the OptimizationHistory.

id_nature

str

Indicates if failed is element index/cavity index/name, element or cavity or name.

(‘element’, ‘cavity’, ‘name’)

objective_preset

str

Objectives for the optimisation algorithm.

(‘EnergyPhaseMismatch’, ‘simple_ADS’, ‘EnergyMismatch’, ‘rephased_ADS’, ‘EnergySyncPhaseMismatch’, ‘sync_phase_as_objective_ADS’, ‘experimental’)

optimisation_algorithm

str

Name of optimisation algorithm.

(‘least_squares’, ‘least_squares_penalty’, ‘nsga’, ‘downhill_simplex’, ‘downhill_simplex_penalty’, ‘nelder_mead’, ‘nelder_mead_penalty’, ‘differential_evolution’, ‘explorator’, ‘experimental’)

optimisation_algorithm_kwargs

dict

Keyword arguments passed to the optimisation algorithm.

strategy

str

How compensating cavities are selected.

(‘k out of n’, ‘l neighboring lattices’, ‘global’, ‘global_downstream’, ‘manual’)

tie_politics

str

How to select the compensating elements when several are equidistant to the failure.

(‘upstream first’, ‘downstream first’)

shift

int

Distance increase for downstream elements (shift < 0) or upstream elements (shift > 0). Used to have a window of compensating cavities which is not centered around the failed elements.

l

int

Number of compensating lattices per failed cavity.

min_number_of_cavities_in_lattice

int

Minimum number of compensating cavities in the lattice; when a lattice does not reach this number, we use it anyway for compensation, but we also take another lattice. Designed to remove the lattices that do not have any cavity.

If you want to manually associate each failed cavity with its compensating cavities:

Entry

Type

Description

Allowed values

Mandatory?

failed

list

Index/name of failed cavities. Must be a list[list[int]] or list[list[str]].

history_kwargs

dict

kwargs for the OptimizationHistory.

id_nature

str

Indicates if failed is element index/cavity index/name, element or cavity or name.

(‘element’, ‘cavity’, ‘name’)

objective_preset

str

Objectives for the optimisation algorithm.

(‘EnergyPhaseMismatch’, ‘simple_ADS’, ‘EnergyMismatch’, ‘rephased_ADS’, ‘EnergySyncPhaseMismatch’, ‘sync_phase_as_objective_ADS’, ‘experimental’)

optimisation_algorithm

str

Name of optimisation algorithm.

(‘least_squares’, ‘least_squares_penalty’, ‘nsga’, ‘downhill_simplex’, ‘downhill_simplex_penalty’, ‘nelder_mead’, ‘nelder_mead_penalty’, ‘differential_evolution’, ‘explorator’, ‘experimental’)

optimisation_algorithm_kwargs

dict

Keyword arguments passed to the optimisation algorithm.

strategy

str

How compensating cavities are selected.

(‘k out of n’, ‘l neighboring lattices’, ‘global’, ‘global_downstream’, ‘manual’)

failed

list

Index/name of failed cavities. Must be a list[list[list[int]]] or list[list[list[str]]].

compensating_manual

list

Index/name of compensating cavities cavities. Must be a list[list[list[int]]] or list[list[list[str]]]. The number of FaultScenarios (length of most outer list) must match failed. The number of groups of compensating cavities (second level) must match failed.

Note

You can type the index of failed cavities on several lines if you want to study several fault scenarios at once.

Example

# Indexes are cavity indexes
idx = "cavity"
failed = [
   [0, 1],       # First simulation first cryomodule is down
   [0],          # Second simulation only first cavity is down
   [1, 45]       # Third simulation second and 46th cavity are down
]