{'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.simulation.Simulation': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.simulation.Simulation', 'type': 'object', 'description': 'Holds all data associated with a single simulation run. Gets passed into the rendering engine.', 'properties': {'delta_t_si': {'type': 'number', 'description': 'width of a single timestamp in s'}, 'time_steps': {'type': 'integer', 'minimum': 1, 'description': 'total number of time steps to run for'}, 'solver': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.solver.YeeSolver'}, 'grid': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.grid.Grid3D'}, 'laser': {'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.laser.GaussianLaser'}]}, 'species_initmanager': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.initmanager.InitManager'}, 'output': {'description': 'configuration for all output profiles', 'type': 'object', 'unevaluatedProperties': False, 'required': ['auto'], 'properties': {'auto': {'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.output.auto.Auto'}]}}}}, 'required': ['delta_t_si', 'time_steps', 'solver', 'grid', 'laser'], 'unevaluatedProperties': False}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.grid.Grid3D': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.grid.Grid3D', 'description': 'Specification of a (cartesian) grid of cells with 3 spacial dimensions.', 'type': 'object', 'properties': {'cell_size': {'description': 'width of a single cell in m', 'type': 'object', 'unevaluatedProperties': False, 'required': ['x', 'y', 'z'], 'properties': {'x': {'$anchor': 'cell_size_component', 'type': 'number', 'exclusiveMinimum': 0}, 'y': {'$ref': '#cell_size_component'}, 'z': {'$ref': '#cell_size_component'}}}, 'cell_cnt': {'description': 'number of cells', 'type': 'object', 'unevaluatedProperties': False, 'required': ['x', 'y', 'z'], 'properties': {'x': {'$anchor': 'cell_cnt_component', 'type': 'integer', 'minimum': 1}, 'y': {'$ref': '#cell_cnt_component'}, 'z': {'$ref': '#cell_cnt_component'}}}, 'gpu_cnt': {'description': 'number of gpus', 'type': 'object', 'unevaluatedProperties': False, 'required': ['x', 'y', 'z'], 'properties': {'x': {'$anchor': 'gpu_cnt_component', 'type': 'integer', 'minimum': 1}, 'y': {'$ref': '#gpu_cnt_component'}, 'z': {'$ref': '#gpu_cnt_component'}}}, 'boundary_condition': {'description': 'boundary condition to be passed to --periodic (encoded as number)', 'type': 'object', 'unevaluatedProperties': False, 'required': ['x', 'y', 'z'], 'properties': {'x': {'$anchor': 'boundary_condition_component', 'type': 'string', 'pattern': '^(0|1)$'}, 'y': {'$ref': '#boundary_condition_component'}, 'z': {'$ref': '#boundary_condition_component'}}}}, 'required': ['cell_size', 'cell_cnt', 'boundary_condition'], 'unevaluatedProperties': False}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.solver.YeeSolver': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.solver.YeeSolver', 'type': 'object', 'properties': {'name': {'type': 'string'}}, 'required': ['name'], 'unevaluatedProperties': False}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.laser.GaussianLaser': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.laser.GaussianLaser', 'type': 'object', 'properties': {'wave_length_si': {'type': 'number', 'exclusiveMinimum': 0}, 'waist_si': {'type': 'number', 'exclusiveMinimum': 0}, 'pulse_length_si': {'type': 'number', 'exclusiveMinimum': 0}, 'focus_pos_si': {'type': 'number'}, 'phase': {'type': 'number', 'minimum': -3.1416, 'exclusiveMaximum': 6.2832}, 'E0_si': {'type': 'number', 'exclusiveMinimum': 0}, 'pulse_init': {'type': 'number', 'exclusiveMinimum': 0}, 'init_plane_y': {'type': 'integer', 'minimum': 0}, 'polarization_type': {'type': 'string', 'pattern': '^(LINEAR_X|LINEAR_Z|CIRCULAR)$'}, 'laguerre_modes': {'type': 'array', 'minItems': 1, 'items': {'type': 'object', 'required': ['single_laguerre_mode'], 'unevaluatedProperties': False, 'properties': {'single_laguerre_mode': {'type': 'number'}}}}, 'laguerre_phases': {'type': 'array', 'minItems': 1, 'items': {'type': 'object', 'required': ['single_laguerre_phase'], 'unevaluatedProperties': False, 'properties': {'single_laguerre_phase': {'type': 'number'}}}}, 'modenumber': {'type': 'integer', 'minimum': 0}}, 'required': ['wave_length_si', 'waist_si', 'pulse_length_si', 'focus_pos_si', 'phase', 'E0_si', 'pulse_init', 'init_plane_y', 'polarization_type', 'laguerre_modes', 'laguerre_phases', 'modenumber'], 'unevaluatedProperties': False}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.initmanager.InitManager': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.initmanager.InitManager', 'description': 'collects all information (singleton) for species declaration and initialization', 'type': 'object', 'unevaluatedProperties': False, 'required': ['species'], 'properties': {'species': {'description': 'all species to be defined', 'type': 'array', 'items': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species'}}, 'operations': {'description': 'All operations, ordered by type of operation. Note that all keys are always defined, they may contain empty lists though.', 'type': 'object', 'unevaluatedProperties': False, 'required': ['simple_density', 'simple_momentum'], 'properties': {'simple_density': {'type': 'array', 'items': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.simpledensity.SimpleDensity'}}, 'simple_momentum': {'type': 'array', 'items': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.simplemomentum.SimpleMomentum'}}, 'set_bound_electrons': {'type': 'array', 'items': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.setboundelectrons.SetBoundElectrons'}}}}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species', 'description': 'defines a species C++ type', 'type': 'object', 'unevaluatedProperties': False, 'required': ['name', 'typename', 'attributes', 'constants'], 'properties': {'name': {'type': 'string', 'description': 'name of the species (e.g. for output)', 'minLength': 1, 'pattern': '^[A-Za-z0-9_]+$'}, 'typename': {'type': 'string', 'description': 'name of c++ species type', 'minLength': 1, 'pattern': '^[A-Za-z_][A-Za-z0-9_]*$'}, 'attributes': {'type': 'array', 'description': 'names of attributes of each macroparticle', 'items': {'type': 'object', 'unevaluatedProperties': False, 'required': ['picongpu_name'], 'properties': {'picongpu_name': {'type': 'string', 'description': 'c++ code to define this property', 'minLength': 1}}}}, 'constants': {'type': 'object', 'description': 'species constants (flags), accessible by a well defined name -- keys must always be defined, may be null if not present', 'unevaluatedProperties': False, 'required': ['mass', 'charge', 'density_ratio'], 'properties': {'mass': {'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.mass.Mass'}]}, 'charge': {'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.charge.Charge'}]}, 'density_ratio': {'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.densityratio.DensityRatio'}]}, 'ionizers': {'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.ionizers.Ionizers'}]}, 'element_properties': {'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.elementproperties.ElementProperties'}]}}}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.util.element.Element': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.util.element.Element', 'description': 'a chemical element from the periodic table of elements', 'type': 'object', 'unevaluatedProperties': False, 'required': ['symbol', 'picongpu_name'], 'properties': {'symbol': {'description': 'symbol from the periodic table of elements, case sensitive', 'type': 'string', 'pattern': '^[A-Z][a-z]?$'}, 'picongpu_name': {'description': 'name as used in PIConGPU lookup tables', 'type': 'string', 'pattern': '^[A-Za-z0-9_]*$'}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.setboundelectrons.SetBoundElectrons': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.setboundelectrons.SetBoundElectrons', 'description': 'set bound electrons attribute to given value', 'type': 'object', 'unevaluatedProperties': False, 'required': ['species', 'bound_electrons'], 'properties': {'species': {'description': 'species to set bound electrons for', '$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species'}, 'bound_electrons': {'description': 'number of bound electrons to set', 'type': 'integer', 'minimum': 1}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.simplemomentum.SimpleMomentum': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.simplemomentum.SimpleMomentum', 'description': 'set momentum of one species using temperature, drift, both, or none', 'type': 'object', 'unevaluatedProperties': False, 'required': [], 'properties': {'species': {'description': 'species for the momentum is given', '$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species'}, 'drift': {'description': 'initial velocity (optional)', 'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.momentum.drift.Drift'}]}, 'temperature': {'description': 'initial temperature (optional)', 'anyOf': [{'type': 'null'}, {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.momentum.temperature.Temperature'}]}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.simpledensity.SimpleDensity': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.simpledensity.SimpleDensity', 'type': 'object', 'unevaluatedProperties': False, 'required': ['ppc', 'profile', 'placed_species_initial', 'placed_species_copied'], 'properties': {'ppc': {'description': 'Number of macro particles per cell (random position).', 'type': 'integer', 'exclusiveMinimum': 0}, 'profile': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.densityprofile.densityprofile.DensityProfile'}, 'placed_species_initial': {'description': 'species to be placed first, lowest ratio of species placed in this operation', '$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species'}, 'placed_species_copied': {'type': 'array', 'description': 'species to be placed which have their position copied from placed_species_initial', 'items': {'$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species'}}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.momentum.drift.Drift': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.momentum.drift.Drift', 'description': 'initial velocity of particles', 'type': 'object', 'unevaluatedProperties': False, 'required': ['gamma', 'direction_normalized'], 'properties': {'gamma': {'description': 'scales direction_normalized', 'type': 'number', 'minimum': 0}, 'direction_normalized': {'description': 'drift direction, length of 1', 'type': 'object', 'unevaluatedProperties': False, 'required': ['x', 'y', 'z'], 'properties': {'x': {'type': 'number'}, 'y': {'type': 'number'}, 'z': {'type': 'number'}}}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.momentum.temperature.Temperature': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.momentum.temperature.Temperature', 'description': '(positive) temperature of a species', 'type': 'object', 'required': ['temperature_kev'], 'unevaluatedProperties': False, 'properties': {'temperature_kev': {'description': 'temperature in keV, zero forbidden: if at rest, do not use this object', 'type': 'number', 'exclusiveMinimum': 0}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.densityprofile.uniform.Uniform': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.densityprofile.uniform.Uniform', 'type': 'object', 'description': 'Describes a globally constant density.', 'unevaluatedProperties': False, 'required': ['density_si'], 'properties': {'density_si': {'type': 'number', 'description': 'density in kg * m^-3', 'exclusiveMinimum': 0}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.operation.densityprofile.densityprofile.DensityProfile': False, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.mass.Mass': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.mass.Mass', 'description': 'mass of a single particle', 'unevaluatedProperties': False, 'type': 'object', 'required': ['mass_si'], 'properties': {'mass_si': {'type': 'number', 'description': 'mass in kg', 'minimum': 0}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.charge.Charge': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.charge.Charge', 'description': 'charge of a macroparticle', 'type': 'object', 'unevaluatedProperties': False, 'required': ['charge_si'], 'properties': {'charge_si': {'type': 'number', 'description': 'charge in C'}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.elementproperties.ElementProperties': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.elementproperties.ElementProperties', 'description': 'species constants (flags) associated to a chemical element (matter constants), e.g. ionization levels', 'type': 'object', 'unevaluatedProperties': False, 'required': ['element'], 'properties': {'element': {'description': 'element to use matter constants for', '$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.util.element.Element'}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.densityratio.DensityRatio': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.densityratio.DensityRatio', 'description': 'ratio for weighting calculations', 'type': 'object', 'unevaluatedProperties': False, 'required': ['ratio'], 'properties': {'ratio': {'description': 'numerical density ratio', 'type': 'number', 'exclusiveMinimum': 0}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.ionizers.Ionizers': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.constant.ionizers.Ionizers', 'description': 'used ionization methods and electron species', 'type': 'object', 'unevaluatedProperties': False, 'required': ['electron_species'], 'properties': {'electron_species': {'description': 'electrons used for ionization', '$ref': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.species.species.Species'}}}, 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.output.auto.Auto': {'$id': 'https://registry.hzdr.de/crp/picongpu/schema/picongpu.pypicongpu.output.auto.Auto', 'description': 'enable as many output plugins as feasable with only the period specified', 'type': 'object', 'unevaluatedProperties': False, 'required': ['period', 'png_axis'], 'properties': {'period': {'description': 'number of time steps: at each multiple output is generated', 'type': 'integer', 'minimum': 1}, 'png_axis': {'description': 'axis pairs (i.e. planes) for which to generate png output', 'type': 'array', 'items': {'type': 'object', 'required': ['axis'], 'unevaluatedProperties': False, 'properties': {'axis': {'description': 'actually a plane of two axis, but name follows PIConGPU', 'type': 'string', 'pattern': '^(x|y|z)(x|y|z)$'}}}}}}}