Source code for sirepo.sim_data.warppba

# -*- coding: utf-8 -*-
"""simulation data operations

:copyright: Copyright (c) 2019 RadiaSoft LLC.  All Rights Reserved.
:license: http://www.apache.org/licenses/LICENSE-2.0.html
"""
from __future__ import absolute_import, division, print_function
from pykern import pkcollections
from pykern.pkcollections import PKDict
from pykern.pkdebug import pkdc, pkdlog, pkdp
import sirepo.sim_data


[docs] class SimData(sirepo.sim_data.SimDataBase): ANALYSIS_ONLY_FIELDS = frozenset(("colorMap", "notes"))
[docs] @classmethod def fixup_old_data(cls, data, qcall, **kwargs): dm = data.models cls._init_models( dm, ( "animation", "beamAnimation", "beamPreviewReport", "electronBeam", "fieldAnimation", "laserPreviewReport", "particleAnimation", "simulationGrid", ), ) pkcollections.unchecked_del( dm.simulationGrid, "xMin", "xMax", "xCount", "zLambda", ) if "rmsRadius" in dm.electronBeam and dm.electronBeam.rmsRadius == 0: del dm.electronBeam["rmsRadius"] cls._organize_example(data)
@classmethod def _compute_job_fields(cls, data, r, compute_model): if r not in ("beamPreviewReport", "laserPreviewReport"): return [] return cls._non_analysis_fields(data, r) + [ "simulation.sourceType", "electronBeam", "electronPlasma", "laserPulse", "simulationGrid", ] @classmethod def _lib_file_basenames(cls, data): return []