def test(self):
        from LinearlyInterpolatedDispersion_Example import example
        disp = example()

        from DWFromDOS_Example import example
        dw_calctor = example()

        atoms = mccomponentsbp.vector_AtomicScatterer(5)
        
        aa = mcnibp.Vector3_double(1,0,0)
        bb = mcnibp.Vector3_double(0,1,0)
        cc = mcnibp.Vector3_double(0,0,1)
        
        temperature = 300
        Ei = 70
        max_omega = 55
        max_Q = 12
        nMCsteps_to_calc_RARV = 10000

        kernel = mccomponentsbp.Phonon_CoherentInelastic_PolyXtal_kernel(
            disp, atoms, aa, bb, cc,
            dw_calctor,
            temperature,
            max_omega, 
            )
            
        return
    def phonon_coherentinelastic_singlextal_kernel(
        self,
        dispersion, dw_calctor,
        unitcell, 
        temperature,
        ):

        # unitcell_vol = unitcell.getVolume()
        unitcell_vol = unitcell.lattice.getVolume()
        unitcell_vol = float(unitcell_vol)

        temperature = float(temperature)
        
        atoms = [ self.atomicscatterer_fromSite( site ) for site in unitcell ]
        atom_vector = b.vector_AtomicScatterer(0)
        for atom in atoms: atom_vector.append( atom )
        
        deltaV_Jacobi = 0.001
        zridd = b.ZRidd(10) # 0.1 - accuracy of velocity (m/s)
        rootsfinder = b.FindRootsEvenly(zridd, 2000)
        targetregion = b.TargetCone(self.vector3(0,0,0),0)
        epsilon = 1.e-10

        return b.Phonon_CoherentInelastic_SingleXtal_kernel(
            dispersion, atom_vector, unitcell_vol, dw_calctor,
            temperature,
            deltaV_Jacobi, 
            rootsfinder, targetregion,
            epsilon
            )
Beispiel #3
0
    def test(self):
        from LinearlyInterpolatedDispersion_Example import example
        disp = example()

        from DWFromDOS_Example import example
        dw_calctor = example()

        atoms = mccomponentsbp.vector_AtomicScatterer(5)

        aa = mcnibp.Vector3_double(1, 0, 0)
        bb = mcnibp.Vector3_double(0, 1, 0)
        cc = mcnibp.Vector3_double(0, 0, 1)

        temperature = 300
        Ei = 70
        max_omega = 55
        max_Q = 12
        nMCsteps_to_calc_RARV = 10000

        kernel = mccomponentsbp.Phonon_CoherentInelastic_PolyXtal_kernel(
            disp,
            atoms,
            aa,
            bb,
            cc,
            dw_calctor,
            temperature,
            max_omega,
        )

        return
    def phonon_coherentinelastic_polyxtal_kernel(
        self,
        dispersion, dw_calctor,
        unitcell, 
        temperature, max_omega,
        ):

        # unitcell_vol = unitcell.getVolume()
        lattice = unitcell.lattice
        base = lattice.base
        aa = self.vector3(base[0])
        bb = self.vector3(base[1])
        cc = self.vector3(base[2])
        
        temperature = float(temperature)
        
        atoms = [ self.atomicscatterer_fromSite( site ) for site in unitcell ]
        atom_vector = b.vector_AtomicScatterer(0)
        for atom in atoms: atom_vector.append( atom )
        
        return b.Phonon_CoherentInelastic_PolyXtal_kernel(
            dispersion, atom_vector, aa, bb, cc,
            dw_calctor,
            temperature, max_omega,
            )
    def test(self):
        atoms = mccomponentsbp.vector_AtomicScatterer(5)
        unitcell_vol = 30
        dw_core = 0.1
        scattering_xs = absorption_xs = 0

        kernel = mccomponentsbp.Phonon_IncoherentElastic_kernel(
            atoms,
            unitcell_vol,
            dw_core,
            scattering_xs, absorption_xs,
            )
            
        return
    def test(self):
        atoms = mccomponentsbp.vector_AtomicScatterer(5)
        unitcell_vol = 30
        dw_core = 0.1
        scattering_xs = absorption_xs = 0

        kernel = mccomponentsbp.Phonon_IncoherentElastic_kernel(
            atoms,
            unitcell_vol,
            dw_core,
            scattering_xs,
            absorption_xs,
        )

        return
    def phonon_incoherentelastic_kernel(
        self,
        unitcell, dw_core,
        scattering_xs = 0., absorption_xs = 0.,
        ):

        # unitcell_vol = unitcell.getVolume()
        unitcell_vol = unitcell.lattice.getVolume()
        unitcell_vol = float(unitcell_vol)

        atoms = [ self.atomicscatterer_fromSite( site ) for site in unitcell ]
        atom_vector = b.vector_AtomicScatterer(0)
        for atom in atoms: atom_vector.append( atom )

        return b.Phonon_IncoherentElastic_kernel(
            atom_vector, unitcell_vol, dw_core,
            scattering_xs, absorption_xs,
            )
 def test2(self):
     'vector<AtomicScatterer>'
     atoms = mccomponentsbp.vector_AtomicScatterer(2)
     return
Beispiel #9
0
 def test2(self):
     'vector<AtomicScatterer>'
     atoms = mccomponentsbp.vector_AtomicScatterer(2)
     return