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 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 test(self): from LinearlyInterpolatedDispersion_Example import example dispersion = example() Q = mcnibp.Vector3_double b1 = Q( 2,0,0 ) b2 = Q( 0,3,0 ) b3 = Q( 0,0,4 ) rc = mccomponentsbp.ReciprocalCell( ) rc.b1 = b1; rc.b2 = b2; rc.b3 = b3 disp = mccomponentsbp.PeriodicDispersion_3D( dispersion, rc ) self.assertAlmostEqual( disp.energy(0, Q(2,3,4)), disp.energy(0, Q(0,0,0) ) ) return
def test(self): from LinearlyInterpolatedDispersion_Example import example dispersion = example() M = mcnibp.Matrix3_double Q = mcnibp.Vector3_double m = M( 1,2,0, 2,0,3, 3,1,0) disp = mccomponentsbp.ChangeCoordinateSystem_forDispersion_3D( dispersion, m ) self.assertAlmostEqual( disp.energy(0, Q(1,0,0)), disp.energy(0, Q(1,2,3) ) ) self.assertAlmostEqual( disp.energy(0, Q(0,1,0)), disp.energy(0, Q(2,0,1) ) ) self.assertAlmostEqual( disp.energy(0, Q(0,0,1)), disp.energy(0, Q(0,3,0) ) ) return
def test(self): from LinearlyInterpolatedDispersion_Example import example dispersion = example() Q = mcnibp.Vector3_double b1 = Q(2, 0, 0) b2 = Q(0, 3, 0) b3 = Q(0, 0, 4) rc = mccomponentsbp.ReciprocalCell() rc.b1 = b1 rc.b2 = b2 rc.b3 = b3 disp = mccomponentsbp.PeriodicDispersion_3D(dispersion, rc) self.assertAlmostEqual(disp.energy(0, Q(2, 3, 4)), disp.energy(0, Q(0, 0, 0))) return
def test(self): from LinearlyInterpolatedDispersion_Example import example dispersion = example() M = mcnibp.Matrix3_double Q = mcnibp.Vector3_double m = M(1, 2, 0, 2, 0, 3, 3, 1, 0) disp = mccomponentsbp.ChangeCoordinateSystem_forDispersion_3D( dispersion, m) self.assertAlmostEqual(disp.energy(0, Q(1, 0, 0)), disp.energy(0, Q(1, 2, 3))) self.assertAlmostEqual(disp.energy(0, Q(0, 1, 0)), disp.energy(0, Q(2, 0, 1))) self.assertAlmostEqual(disp.energy(0, Q(0, 0, 1)), disp.energy(0, Q(0, 3, 0))) return