PPPLDeepLearning / plasma-python

PPPL deep learning disruption prediction package
http://tigress-web.princeton.edu/~alexeys/docs-web/html/
79 stars 43 forks source link

Automatically switch all_signals definition for JET 0D vs 1D #57

Open felker opened 4 years ago

felker commented 4 years ago

A tricky, undocumented step when switching to training on jet_data_0D is that the user must comment-out the line containing 'etemp_profile': etemp_profile, 'edens_profile': edens_profile, in the definition of the dictionary that stores "all signals defined on this machine": https://github.com/PPPLDeepLearning/plasma-python/blob/c82ba61e339882a5af10b1052edc0348e16119f4/data/signals.py#L399-L415

before re-building the module and preprocessing the raw shot data. This is unique to this selection of the conf['paths']['data'] in: https://github.com/PPPLDeepLearning/plasma-python/blob/c82ba61e339882a5af10b1052edc0348e16119f4/examples/conf.yaml#L13

since the carbon-wall training set defined for jet_data_0D, jet_data_1D, jet_data (latter two are basically unused) has missing or incomplete 1D density and temperature profile data for many shots, unlike other data choices. This causes a significant fraction of shots to be excluded during the python guaranteed_preprocessed.py step, even when the 1D profiles are not used.

We should pop the 2x profile entries from the all_signals dictionary automatically when params['paths']['shot_files'] = [jet_carbon_wall].