pyleecan.Classes.VarSimu module¶
Method code available at https://github.com/Eomys/pyleecan/tree/master/pyleecan/Methods/Simulation/VarSimu
- class VarSimu(name='', desc='', datakeeper_list=- 1, is_keep_all_output=False, stop_if_error=False, var_simu=None, nb_simu=0, is_reuse_femm_file=True, postproc_list=- 1, pre_keeper_postproc_list=None, post_keeper_postproc_list=None, is_reuse_LUT=True, init_dict=None, init_str=None)[source]¶
Bases:
FrozenClass
Abstract class for the multi-simulation
- VERSION = 1¶
- run()¶
Run the multi-simulation The VarSimu object must be in a Simulation object (and not a VarSimu one)
- Parameters:
self (VarSimu) – A VarSimu object
- set_reused_data(simu, output, is_log=True, simu_type='VarSimu')¶
Resuse some data from the reference simulation to skip computation
- Parameters:
self (VarSimu) – a VarSimu object
simu (Simulation) – The simulation to update
output (Output) – Output from the reference simulation to enforce
is_log (bool) – True to log the changes
simu_type (str) – Name of the multi-simulation kind
- check_param()¶
Check VarParamSweep parameters validity
- generate_simulation_list(ref_simu=None)¶
Generate all the simulation for the multi-simulation
- Parameters:
self (VarSimu) – A VarSimu object
ref_simu (Simulation) – Reference simulation to copy / update
- Returns:
multisim_dict – dictionary containing the simulation and paramexplorer list
- Return type:
dict
- gen_datakeeper_list(ref_simu)¶
Generate default DataKeepers according the reference simulation type
- get_elec_datakeeper(symbol_list, is_multi=False)¶
Generate DataKeepers to store by default results from electric module :param self: A VarLoad object :type self: VarLoad :param symbol_list: List of the existing datakeeper (to avoid duplicate) :type symbol_list: list :param is_multi: True for multi-simulation of multi-simulation :type is_multi: bool
- Returns:
dk_list – list of DataKeeper
- Return type:
list
- get_mag_datakeeper(symbol_list, is_multi=False)¶
Generate DataKeepers to store by default results from magnetic module
- Parameters:
self (VarLoad) – A VarLoad object
symbol_list (list) – List of the existing datakeeper (to avoid duplicate)
is_multi (bool) – True for multi-simulation of multi-simulation
- Returns:
dk_list – list of DataKeeper
- Return type:
list
- get_force_datakeeper(symbol_list, is_multi=False)¶
Generate DataKeepers to store by default results from force module
- Parameters:
self (VarLoad) – A VarLoad object
symbol_list (list) – List of the existing datakeeper (to avoid duplicate)
is_multi (bool) – True for multi-simulation of multi-simulation
- Returns:
dk_list – list of DataKeeper
- Return type:
list
- get_ref_simu_index(ref_simu, simu_dict)¶
Get the index of the reference simulation (None if must be computed)
- Parameters:
self (VarSimu) – A VarSimu object
ref_simu (Simulation) – A Simulation object (reference simulation)
simu_dict (dict) – Dict of simulations
- Returns:
ref_simu_index – index of the reference simulation (None if must be computed)
- Return type:
int
- save(save_path='', is_folder=False, type_handle_old=2, type_compression=0)¶
Save the object to the save_path
- Parameters:
self – A pyleecan object
save_path (str) – path to the folder to save the object
is_folder (bool) – to split the object in different files: separate simulation machine and materials (json only)
type_handle_old (int) – How to handle old file in folder mode (0:Nothing, 1:Delete, 2:Move to “Backup” folder)
type_compression (int) – Available only for json, 0: no compression, 1: gzip
- get_logger()¶
Get the object logger or its parent’s one
- Parameters:
obj – A pyleecan object
- Returns:
logger – Pyleecan object dedicated logger
- Return type:
logging.Logger
- compare(other, name='self', ignore_list=None, is_add_value=False)[source]¶
Compare two objects and return list of differences
- as_dict(type_handle_ndarray=0, keep_function=False, **kwargs)[source]¶
Convert this object in a json serializable dict (can be use in __init__). type_handle_ndarray: int
How to handle ndarray (0: tolist, 1: copy, 2: nothing)
- keep_functionbool
True to keep the function object, else return str
Optional keyword input parameter is for internal use only and may prevent json serializability.
- property name¶
Name of the multi-simulation
- Type:
str
- property desc¶
Multi-simulation description
- Type:
str
- property datakeeper_list¶
List containing DataKeepers to extract VarSimu results
- Type:
[DataKeeper]
- property is_keep_all_output¶
True to store every output in a list
- Type:
bool
- property stop_if_error¶
Stop the multi-simulation if a simulation fails
- Type:
bool
- property var_simu¶
Multi-simulation of a Multi-simulation definition
- Type:
VarSimu
- property nb_simu¶
Number of simulations
- Type:
int
- property is_reuse_femm_file¶
True to reuse the femm file for each simulation (draw the machine only once, MagFEMM only)
- Type:
bool
- property postproc_list¶
List of post-processing to run on XOutput after the multisimulation
- Type:
[Post]
- property pre_keeper_postproc_list¶
If not None, replace the reference simulation postproc_list in each generated simulation (run before datakeeper)
- Type:
[Post]
- property post_keeper_postproc_list¶
List of post-processing to run on output after each simulation (except reference one) after the datakeeper.
- Type:
[Post]
- property is_reuse_LUT¶
True to reuse the look up table
- Type:
bool