graintrace.simulation_postprocessing#
Load and query MOOSE/PUMA CPFE simulation output CSVs (SimulationResults).
- class graintrace.simulation_postprocessing.FieldFileNaming(prefix, index_width=None, sep='_', suffix='.csv')[source]#
Bases:
objectNaming convention for per-time-step field CSVs (e.g. prefix_0000.csv).
- class graintrace.simulation_postprocessing.SimulationResults(block_csv, field_dir, field_naming)[source]#
Bases:
objectAccess per-block and per-time-step field data from a CPFE run.
- Parameters:
block_csv (Union[str, Path])
field_dir (Union[str, Path])
field_naming (FieldFileNaming)
- get_tensor_block(tensor_prefix, order, sample, grain_id=None, block_id=None, return_comp_names=False)[source]#
Block (per-grain) extraction.
sample=’time’ -> requires grain_id, returns (n_times, 1|3|9) sample=’id’ -> requires block_id, returns (n_grains, 1|3|9)
- get_tensor_element(tensor_prefix, order, sample, element_id=None, block_id=None, return_comp_names=False)[source]#
Element (per-point/per-element) extraction.
sample=’id’ -> requires block_id, returns (n_elements, 1|3|9) from that field CSV sample=’time’ -> requires element_id, returns (n_available_times, 1|3|9) by scanning field CSVs