Helium6CRES / he6-cres-spec-sims

A python package to simulate cres data for the 6He CRES experiment at CENPA (University of Washington).
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link


he6_cres_spec_sims

A package for simulating cres experiments over a variety of magnetic field values.


Simulate an experiment then make interactive plots of cres track features!


Instructions for running simulations on CENPA cluster (rocks):


Instructions for running simulations locally:


Documentation for simulation config files:


Experiment config (.json)

Description:

The most basic function of the simulation package is to simulate betas in a given trap depth and main field. An "experiment" is a set of individual simulations run together with organized output. This makes it easy to simulate something closely resembling our experiments; running at a range of trap depths and main field values. The .json experiment config serves as the instructions for which simulations to run in the experiment.
One can find an example of this config file here: /he6-cres-spec-sims/config_files/rocks_exp_config_example.json. Note that the name the experiment directory is assigned is the name of the .json experiment config file.

An example of it's contents:

{
"experiment_copies": 3,
"base_config_path": "/data/eliza4/he6_cres/simulation/sim_results/experiments/rocks_base_config_example.yaml",
"isotope": "He6",
"events_to_simulate": -1,
"betas_to_simulate": 1e2,
"rand_seeds": [4062, 3759, 3456, 3153, 2850, 2547, 2244, 1941, 1638, 1335, 1032],
"fields_T": [3.25, 3.0, 2.75, 2.5, 2.25, 2.0, 1.75, 1.5, 1.25, 1.0, 0.75],
"traps_A": [1.8, 1.661538, 1.523077, 1.384615, 1.246154, 1.107692, 0.969231, 0.830769, 0.692308, 0.553846, 0.4153845]
}

Explanation of the required fields:

To build your own .json config:


Base config (.yaml)

Description:

The base configuration .yaml file contains the specific parameters to use for each "block" of an individual simulation. When running an experiment, certain settings are over-written (like the betas_to_simulate) by the .json experiment config. But the general settings defined in the .yaml base config are used across all fields and trap depths defined in the .json experiment config.

One can find an example of this config file here: /he6-cres-spec-sims/config_files/rocks_base_config_example.yaml

An example of it's contents:

Explanation of the required fields:

FILL IN.

Simulation Blocks

FILL IN. Need descriptions of what each block of the simulation does.

Documentation for tracks output:

Below is a description for all of the features output by the simulations. One can find instructions for generating the tracks pd.Dataframe above for a local or cluster based simulation.

[ 'energy':
'gamma', 'energy_stop', 'initial_rho_pos', 'initial_phi_pos', 'initial_zpos', 'initial_theta', 'cos_initial_theta', 'initial_phi_dir', 'center_theta', 'cos_center_theta', 'initial_field', 'initial_radius', 'center_x', 'center_y', 'rho_center', 'trapped_initial_theta', 'max_radius', 'min_radius', 'avg_cycl_freq', 'b_avg', 'freq_stop', 'zmax', 'axial_freq', 'mod_index', 'segment_power', 'slope', 'segment_length', 'band_power', 'band_num', 'segment_num', 'event_num', 'beta_num', 'fraction_of_spectrum', 'energy_accept_high', 'energy_accept_low', 'gamma_accept_high', 'gamma_accept_low', 'time_start', 'time_stop', 'freq_start', 'exp_copy', 'simulation_num', 'field', 'trap_current']


Important notes:




Development in Progress:

To Dos (11/18/22):

Tests: