Ejemplo n.º 1
0
 def __init__(self, filters=['AlBe', 'ZrMylar', 'SiBe'], fname='nickal2_sxt_emiss.pkl'):
     self.filters = filters
     
     # Set up the geometry - this is fixed
     theta = 67.5 + 90.
     theta *= np.pi/180.
     self.los = geo.line_of_sight(0.0, theta)
     
     # Get the NICKAL2 emission interpolators
     self.emiss = get_emiss_NICKAL2(filters=self.filters)
Ejemplo n.º 2
0
    def __init__(self, chord_name):
        self.name = chord_name
        index = fir_chord_names.index(chord_name)

        radius = fir_chord_radius[index]
        if radius > 0:
            self.impact_p = radius
            self.impact_phi = 0.0
        else:
            self.impact_p = -1.0 * radius
            self.impact_phi = np.pi

        self.los = geo.line_of_sight(self.impact_p, self.impact_phi)
        self.length = fir_chord_length[index]
Ejemplo n.º 3
0
def define_LoS(impact_p, impact_phi):
    return [geo.line_of_sight(*p) for p in zip(impact_p, impact_phi)]
Ejemplo n.º 4
0
"""
"""
from __future__ import division
import os
import pickle
import numpy as np
import scipy as sp
import scipy.io
import mst_ida.models.base.geometry as geo

# Parameters for the NICKAL2 geometry - these are fixed
theta = 67.5 + 90.
theta *= np.pi/180.
los_n2 = geo.line_of_sight(0.0, theta)

class NICKAL2(object):
    """
    Used to model the NICKAL2 measurements in [W /m^2 /sr]. Based on the emission model created by Lisa Reusch.
    """
    def __init__(self, filters=['AlBe', 'ZrMylar', 'SiBe'], fname='nickal2_sxt_emiss.pkl'):
        self.filters = filters
        
        # Set up the geometry - this is fixed
        theta = 67.5 + 90.
        theta *= np.pi/180.
        self.los = geo.line_of_sight(0.0, theta)
        
        # Get the NICKAL2 emission interpolators
        self.emiss = get_emiss_NICKAL2(filters=self.filters)
        
    def take_data(self, plasma, num_pts=100):