Пример #1
0
    def _update_links(self):

        self.ni = ni(material=self._cal_dts['material'],
                     author=self._cal_dts['ni_author'],
                     temp=self._cal_dts['temp'],
                     )
        self.ni.update()

        self.vel_th_e, self.vel_th_h = Vel_th(
            material=self._cal_dts['material'],
            author=self._cal_dts['vth_author'],
            temp=self._cal_dts['temp']).update()
Пример #2
0
def generteCaldts(T,
                  Ndop,
                  doptypelist,
                  ionauthor='Altermatt_2006_table1',
                  vthauthor='Green_1990',
                  ni_author='Couderc_2014',
                  **kwarg):
    vth_e300, vth_h300 = Vel_th().update(temp=300, author=vthauthor)
    Caldts = []
    for i in range(len(T)):
        vth_e, vth_h = Vel_th().update(temp=T[i], author=vthauthor)
        Ni = ni().update(temp=T[i], author=ni_author)
        doptype = doptypelist[i]
        if doptype == 'n':
            Nidop = Ion(temp=T[i],
                        ni_author=ni_author).update_dopant_ionisation(
                            N_dop=Ndop[i],
                            nxc=0,
                            impurity='phosphorous',
                            author=ionauthor)
            n0, p0 = CF.get_carriers(1,
                                     Nidop,
                                     0,
                                     temp=T[i],
                                     ni_author=ni_author)
        elif doptype == 'p':
            Nidop = Ion(temp=T[i],
                        ni_author=ni_author).update_dopant_ionisation(
                            N_dop=Ndop[i],
                            nxc=0,
                            impurity='boron',
                            author=ionauthor)
            n0, p0 = CF.get_carriers(Nidop,
                                     0,
                                     0,
                                     temp=T[i],
                                     ni_author=ni_author)
        dts = {
            'ni': Ni,
            'vth_e': vth_e,
            'vth_h': vth_h,
            'n0': n0,
            'p0': p0,
            'T': T[i],
            'doptype': doptype,
            'vth_e300': vth_e300,
            'vth_h300': vth_h300
        }
        Caldts.append(dts.copy())
    return Caldts
Пример #3
0
    def _update_links(self):

        # setting downstream values, this should change from initalisation
        # to just updating through the update function
        self.Mob = Mob(material=self._cal_dts['material'],
                       author=self._cal_dts['mob_author'],
                       temp=self._cal_dts['temp'])
        self.ni = ni(material=self._cal_dts['material'],
                     author=self._cal_dts['nieff_author'],
                     temp=self._cal_dts['temp'])
        self.ion = Ion(material=self._cal_dts['material'],
                       author=self._cal_dts['ionis_author'],
                       ni_author=self._cal_dts['nieff_author'],
                       temp=self._cal_dts['temp'])
Пример #4
0
    def _update_links(self):

        # setting downstream values, this should change from initalisation
        # to just updating through the update function
        self.Mob = Mob(material=self._cal_dts['material'],
                       author=self._cal_dts['mob_author'],
                       temp=self._cal_dts['temp'])
        self.ni = ni(material=self._cal_dts['material'],
                     author=self._cal_dts['nieff_author'],
                     temp=self._cal_dts['temp'])
        self.ion = Ion(material=self._cal_dts['material'],
                       author=self._cal_dts['ionis_author'],
                       ni_author=self._cal_dts['nieff_author'],
                       temp=self._cal_dts['temp'])