Commit 18b99445 authored by Peter Drewelow's avatar Peter Drewelow
Browse files

data/finger_info_HHF.csv: updated HHF widths

IR_image_tools: in derive_wetted_area_per_module() if heat_flux < 0 exist, set all heat fluxes lower than noise_threshold to 0
parent 5cb30000
......@@ -593,8 +593,8 @@ def read_finger_info(file_name=None, OP='OP1.2b', verbose=0):
def derive_wetted_area_per_module(heat_flux, mapping, mode='average', q_max=None,
profile_average_range=3, ports_loaded=None,
plot_it=False, verbose=0):
profile_average_range=3, noise_threshold=2E5,
ports_loaded=None, plot_it=False, verbose=0):
''' Derive wetted area of heat flux array by integrating the total power load
and dividing with a peak heat flux value.
The peak heat flux value is either:
......@@ -628,6 +628,9 @@ def derive_wetted_area_per_module(heat_flux, mapping, mode='average', q_max=None
number of central profiles on each finger to average the
integral heat flux on (this avoids hot leading edges and shadowed edges)
(OPTIONAL: default is 3 profiles)
noise_threshold: float, optional
minimum heat flux level to crop heat_flux to, if heat flux has negative values
(OPTIONAL: default is 200kW/m²)
ports_loaded: list or str or int, optinal
label of divertor modules provided in heat_flux array for plots;
int of port number for single divertor data and list of
......@@ -675,6 +678,11 @@ def derive_wetted_area_per_module(heat_flux, mapping, mode='average', q_max=None
is_central_profile.append( np.logical_or.reduce([profile_no == centre_profile for centre_profile in central_profiles]) )
central_profiles_on_finger = np.array(central_profiles_on_finger)
if np.nanmin(heat_flux) < 0:
heat_flux[heat_flux<noise_threshold] = 0
if verbose>0:
print('derive_wetted_area_per_module: set heat_flux < {0:.1f}kW/m² to 0'.format(noise_threshold/1E3))
heat_flux_dim = len(np.shape(heat_flux))
# reduce dimension of heat_flux if in 'average' mode
if heat_flux_dim == 2 and mode == 'average':
......@@ -683,12 +691,14 @@ def derive_wetted_area_per_module(heat_flux, mapping, mode='average', q_max=None
heat_flux = np.nanmean(heat_flux, axis=0)
heat_flux_dim = 2
ports_loaded = 'mean heat flux'
if verbose>0:
print('derive_wetted_area_per_module: averaged 3D heat flux array over first dimension')
if heat_flux_dim==3:
# assume dimensions: toroidal index (camera ports), row, column
n_ports, n_rows, n_cols = np.shape(heat_flux)
if verbose>0:
print('derive_wetted_area: deriving wetted area on {0} divertor modules in {1} mode...'.format(n_ports, mode))
print('derive_wetted_area_per_module: deriving wetted area on {0} divertor modules in {1} mode...'.format(n_ports, mode))
# derive q_max for normalization of integral
if q_max is None:
# derive q_max on every finger
......@@ -752,7 +762,7 @@ def derive_wetted_area_per_module(heat_flux, mapping, mode='average', q_max=None
elif heat_flux_dim==2:
# assume dimensions: row, column
if verbose>0:
print('derive_wetted_area: deriving wetted area on single divertor module in {0} mode...'.format(mode))
print('derive_wetted_area_per_module: deriving wetted area on single divertor module in {0} mode...'.format(mode))
# derive q_max for normalization of integral
if q_max is None:
if mode == 'average' or mode == 'module':
......@@ -803,6 +813,8 @@ def derive_wetted_area_per_module(heat_flux, mapping, mode='average', q_max=None
# merge half-fingers of TM5 and TM6
if np.any(finger_dic['finger_part']):
if verbose>0:
print('derive_wetted_area_per_module: merge wetted area on half fingers of TM05 and TM06')
new_finger_ID = np.copy(finger_ID)
# scan backwards over fingers, merge and delete second finger halfs
for i_finger in finger_ID[:0:-1]:
......
# Finger widths of TDU;;;;;
# continuous ID of divertor fingers;ID of divertor section;target module number within horizontal or vertical target;number of profiles in standard mapping;width used for integration of averaged central profile;finger_part indicates if finger is the second part of the previous finger (in h_m)
# finger_ID;target;target element;n_profiles;width [m];finger_part
0;h_l;1;13;0.051072;0
1;h_l;1;14;0.053565;0
2;h_l;1;14;0.053565;0
3;h_l;1;14;0.053565;0
4;h_l;1;14;0.053565;0
5;h_l;1;14;0.053565;0
6;h_l;1;14;0.053565;0
7;h_l;2;14;0.053565;0
8;h_l;2;14;0.053565;0
9;h_l;2;14;0.053565;0
10;h_l;2;15;0.058047;0
11;h_l;2;15;0.05794;0
12;h_l;2;14;0.053565;0
13;h_l;2;14;0.055486;0
14;h_l;3;14;0.054198;0
15;h_l;3;13;0.052192;0
16;h_l;3;13;0.052192;0
17;h_l;3;13;0.052192;0
18;h_l;3;13;0.052192;0
19;h_l;3;13;0.052192;0
20;h_l;3;13;0.052192;0
21;h_l;3;13;0.052192;0
22;h_l;4;13;0.052192;0
23;h_l;4;13;0.052192;0
24;h_l;4;13;0.052192;0
25;h_l;4;13;0.052192;0
26;h_l;4;13;0.052192;0
27;h_l;4;13;0.052192;0
28;h_l;4;13;0.052192;0
29;h_l;4;13;0.052192;0
30;h_m;5;14;0.054328;0
31;h_m;5;15;0.054328;1
32;h_m;5;14;0.054328;0
33;h_m;5;15;0.054328;1
34;h_m;5;14;0.054152;0
35;h_m;5;15;0.054152;1
36;h_m;5;14;0.054152;0
37;h_m;5;15;0.054152;1
38;h_m;5;14;0.05408;0
39;h_m;5;15;0.05408;1
40;h_m;5;14;0.054134;0
41;h_m;5;15;0.054134;1
42;h_m;5;14;0.054134;0
43;h_m;5;15;0.054134;1
44;h_m;5;14;0.054134;0
45;h_m;5;15;0.054134;1
46;h_m;5;14;0.054134;0
47;h_m;5;15;0.054134;1
48;h_m;5;14;0.054134;0
49;h_m;5;15;0.054134;1
50;h_m;5;14;0.054134;0
51;h_m;5;15;0.054134;1
52;h_m;5;14;0.054134;0
53;h_m;5;15;0.054134;1
54;h_m;6;14;0.053823;0
55;h_m;6;15;0.053823;1
56;h_m;6;14;0.053823;0
57;h_m;6;15;0.053823;1
58;h_m;6;14;0.053823;0
59;h_m;6;15;0.053823;1
60;h_m;6;14;0.053823;0
61;h_m;6;15;0.053823;1
62;h_m;6;14;0.053823;0
63;h_m;6;15;0.053823;1
64;h_m;6;14;0.05406;0
65;h_m;6;15;0.05406;1
66;h_m;6;14;0.05406;0
67;h_m;6;15;0.05406;1
68;h_m;6;14;0.05406;0
69;h_m;6;15;0.05406;1
70;h_m;6;14;0.05406;0
71;h_m;6;15;0.05406;1
72;h_m;6;14;0.05406;0
73;h_m;6;15;0.05406;1
74;h_m;6;14;0.05406;0
75;h_m;6;15;0.05406;1
76;h_m;6;14;0.05406;0
77;h_m;6;15;0.05406;1
78;h_h;7;15;0.056351;0
79;h_h;7;14;0.052463;0
80;h_h;7;14;0.052463;0
81;h_h;7;14;0.052463;0
82;h_h;7;14;0.052463;0
83;h_h;7;15;0.054963;0
84;h_h;8;16;0.057662;0
85;h_h;8;15;0.055162;0
86;h_h;8;15;0.055162;0
87;h_h;8;15;0.055162;0
88;h_h;8;15;0.055162;0
89;h_h;8;15;0.055162;0
90;h_h;8;15;0.055162;0
91;h_h;8;15;0.055162;0
92;h_h;8;15;0.055162;0
93;h_h;8;15;0.055162;0
94;h_h;8;15;0.055162;0
95;h_h;8;15;0.055162;0
96;h_h;9;15;0.055162;0
97;h_h;9;15;0.055162;0
98;h_h;9;15;0.055162;0
99;h_h;9;15;0.055162;0
100;h_h;9;15;0.055162;0
101;h_h;9;15;0.055162;0
102;h_h;9;15;0.055162;0
103;h_h;9;15;0.055162;0
104;h_h;9;15;0.055162;0
105;h_h;9;15;0.055162;0
106;h_h;9;15;0.055162;0
107;h_h;9;15;0.055162;0
108;v;1;15;0.054426;0
109;v;1;15;0.054426;0
110;v;1;15;0.054426;0
111;v;1;15;0.054426;0
112;v;1;15;0.054426;0
113;v;1;15;0.054426;0
114;v;1;15;0.054426;0
115;v;1;15;0.054426;0
116;v;1;15;0.054426;0
117;v;1;15;0.054426;0
118;v;2;15;0.054426;0
119;v;2;15;0.054426;0
120;v;2;15;0.054426;0
121;v;2;15;0.054426;0
122;v;2;15;0.054426;0
123;v;2;15;0.054426;0
124;v;2;15;0.054426;0
125;v;2;15;0.054426;0
126;v;2;15;0.054426;0
127;v;2;15;0.054426;0
128;v;3;15;0.054426;0
129;v;3;15;0.054426;0
130;v;3;15;0.054426;0
131;v;3;15;0.054426;0
132;v;3;15;0.054426;0
133;v;3;15;0.054426;0
134;v;3;15;0.054426;0
135;v;3;15;0.054426;0
136;v;3;15;0.054426;0
0;h_l;1;13;0.0553;0
1;h_l;1;14;0.0538;0
2;h_l;1;14;0.0538;0
3;h_l;1;14;0.0538;0
4;h_l;1;14;0.0538;0
5;h_l;1;14;0.0538;0
6;h_l;1;14;0.0537;0
7;h_l;2;14;0.0537;0
8;h_l;2;14;0.0538;0
9;h_l;2;14;0.0538;0
10;h_l;2;15;0.0582;0
11;h_l;2;15;0.0582;0
12;h_l;2;14;0.0538;0
13;h_l;2;14;0.0582;0
14;h_l;3;14;0.0569;0
15;h_l;3;13;0.0523;0
16;h_l;3;13;0.0523;0
17;h_l;3;13;0.0523;0
18;h_l;3;13;0.0523;0
19;h_l;3;13;0.0523;0
20;h_l;3;13;0.0523;0
21;h_l;3;13;0.0523;0
22;h_l;4;13;0.0523;0
23;h_l;4;13;0.0523;0
24;h_l;4;13;0.0523;0
25;h_l;4;13;0.0523;0
26;h_l;4;13;0.0523;0
27;h_l;4;13;0.0523;0
28;h_l;4;13;0.0523;0
29;h_l;4;13;0.0523;0
30;h_m;5;14;0.0543;0
31;h_m;5;15;0.0543;1
32;h_m;5;14;0.0543;0
33;h_m;5;15;0.0543;1
34;h_m;5;14;0.0542;0
35;h_m;5;15;0.0542;1
36;h_m;5;14;0.0542;0
37;h_m;5;15;0.0542;1
38;h_m;5;14;0.0541;0
39;h_m;5;15;0.0541;1
40;h_m;5;14;0.0541;0
41;h_m;5;15;0.0541;1
42;h_m;5;14;0.0541;0
43;h_m;5;15;0.0541;1
44;h_m;5;14;0.0541;0
45;h_m;5;15;0.0541;1
46;h_m;5;14;0.0541;0
47;h_m;5;15;0.0541;1
48;h_m;5;14;0.0541;0
49;h_m;5;15;0.0541;1
50;h_m;5;14;0.0541;0
51;h_m;5;15;0.0541;1
52;h_m;5;14;0.0541;0
53;h_m;5;15;0.0541;1
54;h_m;6;14;0.0539;0
55;h_m;6;15;0.0539;1
56;h_m;6;14;0.0539;0
57;h_m;6;15;0.0539;1
58;h_m;6;14;0.0539;0
59;h_m;6;15;0.0539;1
60;h_m;6;14;0.0539;0
61;h_m;6;15;0.0539;1
62;h_m;6;14;0.0539;0
63;h_m;6;15;0.0539;1
64;h_m;6;14;0.0541;0
65;h_m;6;15;0.0541;1
66;h_m;6;14;0.0541;0
67;h_m;6;15;0.0541;1
68;h_m;6;14;0.0541;0
69;h_m;6;15;0.0541;1
70;h_m;6;14;0.0541;0
71;h_m;6;15;0.0541;1
72;h_m;6;14;0.0541;0
73;h_m;6;15;0.0541;1
74;h_m;6;14;0.0541;0
75;h_m;6;15;0.0541;1
76;h_m;6;14;0.0541;0
77;h_m;6;15;0.0541;1
78;h_h;7;15;0.0552;0
79;h_h;7;14;0.0522;0
80;h_h;7;14;0.0522;0
81;h_h;7;14;0.0522;0
82;h_h;7;14;0.0522;0
83;h_h;7;15;0.0567;0
84;h_h;8;16;0.0602;0
85;h_h;8;15;0.0557;0
86;h_h;8;15;0.0557;0
87;h_h;8;15;0.0557;0
88;h_h;8;15;0.0557;0
89;h_h;8;15;0.0557;0
90;h_h;8;15;0.0557;0
91;h_h;8;15;0.0557;0
92;h_h;8;15;0.0557;0
93;h_h;8;15;0.0557;0
94;h_h;8;15;0.0557;0
95;h_h;8;15;0.0557;0
96;h_h;9;15;0.0557;0
97;h_h;9;15;0.0557;0
98;h_h;9;15;0.0557;0
99;h_h;9;15;0.0557;0
100;h_h;9;15;0.0557;0
101;h_h;9;15;0.0557;0
102;h_h;9;15;0.0557;0
103;h_h;9;15;0.0557;0
104;h_h;9;15;0.0557;0
105;h_h;9;15;0.0557;0
106;h_h;9;15;0.0557;0
107;h_h;9;15;0.0557;0
108;v;1;15;0.0547;0
109;v;1;15;0.0548;0
110;v;1;15;0.0548;0
111;v;1;15;0.0549;0
112;v;1;15;0.0548;0
113;v;1;15;0.0548;0
114;v;1;15;0.0548;0
115;v;1;15;0.0548;0
116;v;1;15;0.0548;0
117;v;1;15;0.0547;0
118;v;2;15;0.0547;0
119;v;2;15;0.0547;0
120;v;2;15;0.0547;0
121;v;2;15;0.0547;0
122;v;2;15;0.0547;0
123;v;2;15;0.0547;0
124;v;2;15;0.0547;0
125;v;2;15;0.0547;0
126;v;2;15;0.0547;0
127;v;2;15;0.0547;0
128;v;3;15;0.0547;0
129;v;3;15;0.0548;0
130;v;3;15;0.0547;0
131;v;3;15;0.0548;0
132;v;3;15;0.0547;0
133;v;3;15;0.0549;0
134;v;3;15;0.0547;0
135;v;3;15;0.0547;0
136;v;3;15;0.0547;0
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment