예제 #1
0
 def test_resistivity(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_resistivity,
                                  n_eff=np.logspace(11., 15., 1000.),
                                  is_n_type=[False, True],
                                  temperature=range(150, 350, 50),
                                  e_field=[1e3, 1e4, 1e5, 1e6]))
예제 #2
0
 def test_free_path(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_free_path,
                                  fluence=np.logspace(12., 15., 1000.),
                                  e_field=[1e4, 1e5, 1e6],
                                  temperature=range(150, 350, 50),
                                  is_electron=[False, True]))
예제 #3
0
 def test_eff_acceptor_concentration(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_eff_acceptor_concentration,
                                  fluence=np.logspace(0., 4., 1000.),
                                  n_eff_0=[1, 1.5, 1.8, 2.0],
                                  is_ntype=[True, False],
                                  is_oxygenated=[True, False]))
예제 #4
0
    def test_w_field_analytic(self):
        ''' Check analytic weighting field calculation
                for planar sensors.
            '''

        self.assertTrue(tools.check_with_fixture(
            fields.get_weighting_field_analytic,
            x=np.linspace(-200, 200, 200),
            y=np.linspace(0, 250, 200),
            D=[100, 150, 200, 250],
            S=[5, 50, 100, 150, 250],
            is_planar=True))
예제 #5
0
 def test_trapping(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_trapping,
                                  fluence=np.logspace(12., 15., 1000.),
                                  is_electron=[False, True],
                                  paper=[1, 2]))
예제 #6
0
 def test_get_mobility(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_mobility,
                                  e_field=np.logspace(3., 5., 1000.),
                                  temperature=range(150, 350, 50),
                                  is_electron=[False, True]))
예제 #7
0
 def test_diffusion_potential(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_diffusion_potential,
                                  n_eff=np.linspace(0.1, 100., 1000.),
                                  temperature=range(200, 350, 20)))
예제 #8
0
 def test_get_depletion_voltage(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_depletion_voltage,
                                  n_eff=np.linspace(0.1, 100., 1000.),
                                  distance=range(10, 300, 10)))
예제 #9
0
 def test_depletion_depth(self):
     self.assertTrue(
         tools.check_with_fixture(silicon.get_depletion_depth,
                                  V_bias=np.linspace(0, 100., 1000.),
                                  n_eff=[1, 10, 100],
                                  temperature=[200, 250, 300]))