def __init__(self, mesh, spatial_accuracy_order=4, spatial_shifted_differences=True, **kwargs): self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order self.spatial_shifted_differences = spatial_shifted_differences ConstantDensityAcousticFrequencyScalarBase.__init__( self, mesh, spatial_accuracy_order=spatial_accuracy_order, spatial_shifted_differences=spatial_shifted_differences, **kwargs) # In 3D there is only compact operator implemented if self.mesh.x.lbc.type == 'pml': if self.mesh.x.lbc.domain_bc.compact: self.compact = self.mesh.x.lbc.domain_bc.compact else: raise NotImplementedError( '3D frequency helmholtz operator with auxilliary fields is not available please use the flag compact=True for setting' ) else: self.compact = False raise NotImplementedError( 'Please set boundary conditions as PML with the flag compact=True' )
def __init__(self, mesh, spatial_accuracy_order=4, **kwargs): self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order ConstantDensityAcousticTimeODEBase.__init__(self, mesh, spatial_accuracy_order=spatial_accuracy_order, **kwargs)
def __init__(self, mesh, spatial_accuracy_order=4, **kwargs): self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order VariableDensityAcousticTimeScalarBase.__init__(self, mesh, spatial_accuracy_order=spatial_accuracy_order, **kwargs)
def __init__(self, mesh, spatial_accuracy_order=4, **kwargs): raise ValidationFunctionError(" This solver is in construction and is not yet complete. For variable density, only 2D time and frequency is currently running.") self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order VariableDensityAcousticTimeODEBase.__init__(self, mesh, spatial_accuracy_order=spatial_accuracy_order, **kwargs)
def __init__(self, mesh, spatial_accuracy_order=4, **kwargs): self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order ConstantDensityAcousticTimeScalarBase.__init__(self, mesh, spatial_accuracy_order=spatial_accuracy_order, **kwargs) if self.mesh.x.lbc.type == 'pml': if self.mesh.x.lbc.domain_bc.compact: raise NotImplementedError('Compact option is not available for time solvers')
def __init__(self, mesh, spatial_accuracy_order=4, **kwargs): self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order ConstantDensityAcousticTimeScalarBase.__init__( self, mesh, spatial_accuracy_order=spatial_accuracy_order, **kwargs) lpmlz_tmp = self.mesh.z.lbc.sigma.copy() self.mesh.z.lbc.sigma = lpmlz_tmp.copy()
def __init__(self, mesh, spatial_accuracy_order=4, spatial_shifted_differences=True, **kwargs): self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order self.spatial_shifted_differences = spatial_shifted_differences VariableDensityAcousticFrequencyScalarBase.__init__(self, mesh, spatial_accuracy_order=spatial_accuracy_order, spatial_shifted_differences=spatial_shifted_differences, **kwargs)
def __init__(self, mesh, spatial_accuracy_order=4, spatial_shifted_differences=True, **kwargs): self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order self.spatial_shifted_differences = spatial_shifted_differences ConstantDensityAcousticFrequencyScalarBase.__init__( self, mesh, spatial_accuracy_order=spatial_accuracy_order, spatial_shifted_differences=spatial_shifted_differences, **kwargs) # if the solver is compact we have to indicate that we do not need auxiliary fields if self.mesh.x.lbc.type == 'pml': self.compact = self.mesh.x.lbc.domain_bc.compact else: self.compact = False
def __init__(self, mesh, spatial_accuracy_order=4, spatial_shifted_differences=True, **kwargs): raise ValidationFunctionError( " This solver is in construction and is not yet complete. For variable density, only 2D time and frequency is currently running." ) self.operator_components = Bunch() self.spatial_accuracy_order = spatial_accuracy_order self.spatial_shifted_differences = spatial_shifted_differences VariableDensityAcousticFrequencyScalarBase.__init__( self, mesh, spatial_accuracy_order=spatial_accuracy_order, spatial_shifted_differences=spatial_shifted_differences, **kwargs) # In 3D there is only compact operator implemented if self.mesh.x.lbc.type == 'pml': if self.mesh.x.lbc.domain_bc.compact: self.compact = self.mesh.x.lbc.domain_bc.compact else: raise NotImplementedError( '3D frequency helmholtz operator with auxilliary fields is not available please use the flag compact=True for setting' ) else: self.compact = False raise NotImplementedError( 'Please set boundary conditions as PML with the flag compact=True' )