def constrCouplingMatrices(self): k = self.__class__.k h = self.h a = 2. * self.b2 * k / (h**2) Nx = self.Nx Ny = self.Ny Dlapl = laplacian_matrix_2d(Nx, Ny, self.boundaryCond) self.C1 = ((self.gamma * k / h)**2 + a) * Dlapl - ( self.kappa * k / (h**2))**2 * biharmonic_matrix_2d(Nx, Ny, self.boundaryCond) self.C2 = -a * Dlapl
def constrUpdateMatrices(self): self.__calcGridStep() # calculate grid step k = self.__class__.k; _lambda = self.gamma*k/self.h; mu = self.kappa*k/self.h**2 zeta = 2.*self.b2*k/self.h**2; den = 1. + self.b1*k; Nx = self.Nx; Ny = self.Ny self.Nm = (self.Nx - 1)*(self.Ny - 1) # create update matrices in sparse diagonal form Dlapl = laplacian_matrix_2d(Nx,Ny,self.boundaryCond) I = identity(self.Nm) self.B = (2.*I - mu**2*biharmonic_matrix_2d(Nx,Ny,self.boundaryCond) + (_lambda**2 + zeta)*Dlapl)/den self.C = -((1. - self.b1*k)*I + zeta*Dlapl)/den
def constrUpdateMatrices(self): self.__calcGridStep() # calculate grid step k = self.__class__.k _lambda = self.gamma * k / self.h mu = self.kappa * k / self.h**2 zeta = 2. * self.b2 * k / self.h**2 den = 1. + self.b1 * k Nx = self.Nx Ny = self.Ny self.Nm = (self.Nx - 1) * (self.Ny - 1) # create update matrices in sparse diagonal form Dlapl = laplacian_matrix_2d(Nx, Ny, self.boundaryCond) I = identity(self.Nm) self.B = (2. * I - mu**2 * biharmonic_matrix_2d(Nx, Ny, self.boundaryCond) + (_lambda**2 + zeta) * Dlapl) / den self.C = -((1. - self.b1 * k) * I + zeta * Dlapl) / den
def constrCouplingMatrices(self): k = self.__class__.k; h = self.h; a = 2.*self.b2*k/(h**2); Nx = self.Nx; Ny = self.Ny Dlapl = laplacian_matrix_2d(Nx,Ny,self.boundaryCond) self.C1 = ((self.gamma*k/h)**2 + a)*Dlapl - (self.kappa*k/(h**2))**2*biharmonic_matrix_2d(Nx,Ny,self.boundaryCond) self.C2 = -a*Dlapl