def test_IntegrationCase4(self): alpha = pi / 3 m=1.3;a_b=1.2;type=-1 particle = Spheroid(m,a_b,type) particle.set_xl(1) nmax = 6 ebcm = SpheroidalEBCM(particle,nmax) b_sca = ebcm.getMatrixSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] print C_ext, C_sca delta = (C_ext-C_sca)/(C_ext+C_sca) print delta self.assertAlmostEqual(delta,0,5) self.assertAlmostEqual(C_ext,C_sca,5) self.assertTrue(C_ext>0.) self.assertTrue(C_sca>0.)
def test_IntegrationCase4(self): alpha = pi / 3 m = 1.3 a_b = 1.2 type = -1 particle = Spheroid(m, a_b, type) particle.set_xl(1) nmax = 6 ebcm = SpheroidalEBCM(particle, nmax) b_sca = ebcm.getMatrixSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] print C_ext, C_sca delta = (C_ext - C_sca) / (C_ext + C_sca) print delta self.assertAlmostEqual(delta, 0, 5) self.assertAlmostEqual(C_ext, C_sca, 5) self.assertTrue(C_ext > 0.) self.assertTrue(C_sca > 0.)
def generate_data(a_b,xl,type): y=[] execution_time=[] particle = Spheroid(m,a_b,type) particle.set_xl(xl) id = str(a_b) + " " + str(xl) + " " + str(type) for i in range(n_min,n_max,2): nmax = i print nmax start = time.time() svm = SpheroidalSVM(particle,nmax) b_sca = svm.getSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] delta=(C_ext-C_sca)/(C_ext+C_sca) execution_time.append(time.time() - start) y.append(delta) y= np.fabs(y) save("svm_delta"+id,y) save("svm_time"+id,execution_time) y=[] execution_time=[] for i in range(n_min,n_max,2): nmax = i print nmax start = time.time() ebcm = SpheroidalEBCM(particle,nmax) b_sca = ebcm.getMatrixSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] delta=(C_ext-C_sca)/(C_ext+C_sca) execution_time.append(time.time() - start) y.append(delta) y= np.fabs(y) save("ebcm_m_delta"+id,y) save("ebcm_m_time"+id,execution_time) y=[] execution_time=[] for i in range(n_min,n_max,2): nmax = i print nmax start = time.time() ebcm = SpheroidalEBCM(particle,nmax) b_sca = ebcm.getSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] delta=(C_ext-C_sca)/(C_ext+C_sca) execution_time.append(time.time() - start) y.append(delta) y= np.fabs(y) save("ebcm_delta"+id,y) save("ebcm_time"+id,execution_time) y=[] execution_time=[]
def generate_data(a_b, xl, type): y = [] execution_time = [] particle = Spheroid(m, a_b, type) particle.set_xl(xl) id = str(a_b) + " " + str(xl) + " " + str(type) for i in range(n_min, n_max, 2): nmax = i print nmax start = time.time() svm = SpheroidalSVM(particle, nmax) b_sca = svm.getSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] delta = (C_ext - C_sca) / (C_ext + C_sca) execution_time.append(time.time() - start) y.append(delta) y = np.fabs(y) save("svm_delta" + id, y) save("svm_time" + id, execution_time) y = [] execution_time = [] for i in range(n_min, n_max, 2): nmax = i print nmax start = time.time() ebcm = SpheroidalEBCM(particle, nmax) b_sca = ebcm.getMatrixSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] delta = (C_ext - C_sca) / (C_ext + C_sca) execution_time.append(time.time() - start) y.append(delta) y = np.fabs(y) save("ebcm_m_delta" + id, y) save("ebcm_m_time" + id, execution_time) y = [] execution_time = [] for i in range(n_min, n_max, 2): nmax = i print nmax start = time.time() ebcm = SpheroidalEBCM(particle, nmax) b_sca = ebcm.getSolution(TMInputWave(alpha))[0] C_ext = getCext(particle, alpha, b_sca, nmax)[0] C_sca = getCsca(particle, b_sca, nmax)[0] delta = (C_ext - C_sca) / (C_ext + C_sca) execution_time.append(time.time() - start) y.append(delta) y = np.fabs(y) save("ebcm_delta" + id, y) save("ebcm_time" + id, execution_time) y = [] execution_time = []