saltproc.simulation module¶
- class saltproc.simulation.Simulation(sim_name='default', sim_depcode='SERPENT', core_number=1, node_number=1, h5_file='db_saltproc.h5', compression=Filters(complevel=9, complib='blosc', shuffle=True, bitshuffle=False, fletcher32=True, least_significant_digit=None), iter_matfile='./saltproc_mat')[source]¶
- Bases: - object- Class sets up parameters for simulation, runs Serpent, parses output, creates input. - __init__(sim_name='default', sim_depcode='SERPENT', core_number=1, node_number=1, h5_file='db_saltproc.h5', compression=Filters(complevel=9, complib='blosc', shuffle=True, bitshuffle=False, fletcher32=True, least_significant_digit=None), iter_matfile='./saltproc_mat')[source]¶
- Initializes the Simulation object. - Parameters
- sim_name (str) – Name of simulation may contain number of reference case, paper name or other specific information to identify simulation. 
- sim_depcode (obj) – Depcode object initiated using Depcode class. 
- cores (int) – Number of cores to use for Serpent run (-omp flag in Serpent). 
- nodes (int) – Number of nodes to use for Serpent run (-mpi flag in Serpent). 
- h5_file (str) – Name of HDF5 database. 
- compression (Pytables filter object) – HDF5 database compression parameters. 
- iter_matfile (str) – Name of file containing burnable materials composition used in Serpent runs and update after each depletion step. 
 
 
 - check_switch_geo_trigger(current_time, switch_time)[source]¶
- Compares current timestep with user defined time to switch geometry. Returns True if its time. - Parameters
- current_timestep (int) – Current time after depletion started. 
- switch_time (list) – List containing moments in time when geometry have to be switched. 
 
- Returns
- is the next geometry must be used at the next step? 
- Return type
- bool 
 
 - read_k_eds_delta(current_timestep, restart)[source]¶
- Reads from database delta between previous and current keff at the end of depletion step and returns True if predicted keff at the next depletion step drops below 1. - Parameters
- current_timestep (int) – Number of current depletion time step. 
- restart (bool) – Was this simulation restarted? 
 
- Returns
- Is the reactor will become subcritical at the next step? 
- Return type
- bool 
 
 - runsim_no_reproc(reactor, nsteps)[source]¶
- Run simulation sequence for integral test. No reprocessing involved, just re-running Serpent for comparision with model output. - Parameters
- reactor (Reactor) – Contains information about power load curve and cumulative depletion time for the integration test. 
- nsteps (int) – Number of depletion time steps in integration test run. 
 
 
 - store_after_repr(after_mats, waste_dict, step)[source]¶
- Adds to HDF5 database waste streams data for each process after reprocessing was performed (grams per depletion step). - Parameters
- after_mats (Materialflow) – Burnable material stream object after performing reprocessing. 
- waste_dict (dict of str to Materialflow) – - Dictionary that maps Process objects to waste Materialflow objects. - key
- Process name (str) 
- value
- Materialflow object containing waste streams data. 
 
- step (int) – Current depletion step. 
 
 
 - store_mat_data(mats, d_step, moment)[source]¶
- Initializes HDF5/Pytables database (if not exist) or append burnable material composition, mass, density, volume, temperature, burnup, mass_flowrate, void_fraction, at the current depletion step to it. - Parameters
- mats (dict of str to Materialflow) – - Dictionary that contains Materialflow objects. - key
- Name of burnable material. 
- value
- Materialflow object holding composition and properties. 
 
- d_step (int) – Current depletion step. 
- moment (int) – Indicates at which moment in the depletion step store the data. 0 refers the beginning, 1 refers the end of depletion step. 
 
 
 - store_run_init_info()[source]¶
- Adds to database Serpent and Saltproc simulation parameters before starting depletion sequence.