def function_a10(self, m, n, l): cv_l = get_cv(m, l, self.c1, self.particle.type) cv_n = get_cv(m, n, self.c1, self.particle.type) return lambda nu: -(conjugate(spheroidal.get_a_function(m,n,self.c1,cv_n,3,self.particle)(nu)) *\ spheroidal.get_a_function(m,l,self.c1,cv_l,1,self.particle)(nu) +\ conjugate(spheroidal.get_b_function(m,n,self.c1,cv_n,3,self.particle)(nu)) *\ spheroidal.get_b_function(m,l,self.c1,cv_l,1,self.particle)(nu))
def function_a10(self,m, n, l): cv_l = get_cv(m, l, self.c1, self.particle.type) cv_n = get_cv(m, n, self.c1, self.particle.type) return lambda nu: -(conjugate(spheroidal.get_a_function(m,n,self.c1,cv_n,3,self.particle)(nu)) *\ spheroidal.get_a_function(m,l,self.c1,cv_l,1,self.particle)(nu) +\ conjugate(spheroidal.get_b_function(m,n,self.c1,cv_n,3,self.particle)(nu)) *\ spheroidal.get_b_function(m,l,self.c1,cv_l,1,self.particle)(nu))
def get_BRi(self): Br = zeros((self.nmax, self.nmax), dtype=complex) type = self.particle.type m = 1 for i in range(self.nmax): for k in range(self.nmax): n = i + m l = k + m cv_l = get_cv(m, l, self.c2, type) cv_n = get_cv(m, n, self.c1, type) func = lambda nu: (spheroidal.get_a_function(m, l, self.c2, cv_l, 1, self.particle)(nu) * \ spheroidal.get_b_function(m, n, self.c1, cv_n, 1, self.particle)(nu) - \ spheroidal.get_c_function(m, l, self.c2, cv_l, 1, self.particle)(nu) * \ spheroidal.get_a_function(m, n, self.c1, cv_n, 1, self.particle)(nu)) * spheroidal.metric_phi(nu, self.particle)\ * spheroidal.get_integral_metric(self.particle)(nu) Br[i][k] = spheroidal.quad(func, -1, 1) return -1j * mat(Br)