|
Peano
|
We can just inherit everything, except we must rewrite the add_to_solve method. More...


Public Member Functions | |
| __init__ (self, name, unknowns_per_vertex, dimensions, min_h, max_h, local_assembly_matrix, local_assembly_matrix_scaling, mass_matrix, mass_matrix_scaling, correction_matrix, correction_matrix_scaling, solver_tolerance, pre_smoothing_steps, post_smoothing_steps, descend_order, restriction_matrix, prolongation_matrix, coarsest_level=0, smoother_relaxation=0.6, plot_predicate="true") | |
| add_to_solve (self, observer) | |
| get_vertex_merge_method (self) | |
Public Member Functions inherited from solvers.api.CollocatedMG.CollocatedMG | |
| add_to_Peano4_datamodel (self, datamodel, verbose) | |
| add_use_statements (self, observer) | |
| This routine should still be called even if overwritten in child class. | |
| add_to_create_grid (self, observer) | |
| add_to_init_solution (self, observer) | |
| Solution initialisation. | |
| add_to_plot (self, observer) | |
| add_implementation_files_to_project (self, namespace, output, subdirectory="") | |
| The solver creates two classes: An abstract base class and its implementations. | |
Public Member Functions inherited from solvers.api.Solver.Solver | |
| typename (self) | |
| instance_name (self) | |
| Return the name of the object that will be created for this solver. | |
| create_readme_descriptor (self) | |
| add_to_abstract_solver (self, header, implementation) | |
| add_to_vertex_data (self, name, size) | |
| Add in extra attributes on the fly. | |
| add_to_cell_data (self, name, size) | |
| Add in extra attributes on the fly. | |
| add_to_face_data (self, name, size) | |
| Add in extra attributes on the fly. | |
| name (self) | |
| __str__ (self) | |
Additional Inherited Members | |
Data Fields inherited from solvers.api.CollocatedMG.CollocatedMG | |
| max_h | |
| min_h | |
Data Fields inherited from solvers.api.Solver.Solver | |
| min_h | |
| max_h | |
Protected Attributes inherited from solvers.api.CollocatedMG.CollocatedMG | |
| _pre_smoothing_steps | |
| _post_smoothing_steps | |
| _restriction_matrix | |
| _prolongation_matrix | |
| _coarsest_level | |
| _unknowns_per_vertex_node | |
| _local_assembly_matrix | |
| _local_assembly_matrix_scaling | |
| _mass_matrix | |
| _mass_matrix_scaling | |
| _correction_matrix | |
| _correction_matrix_scaling | |
| _solver_tolerance | |
| _basic_descend_order | |
| _smoother_relaxation | |
| _plot_predicate | |
Protected Attributes inherited from solvers.api.Solver.Solver | |
| _name | |
| _vertex_data | |
| _face_data | |
| _cell_data | |
| _abstract_solver_header_extras | |
| _abstract_solver_implementation_extras | |
We can just inherit everything, except we must rewrite the add_to_solve method.
The important difference here is that we update the residual and the solution all in the same sweep, meaning that we don't need any complicated logic in the abstract solver class.
See the documentation of solvers.api.CollocatedMG.CollocatedMG
Definition at line 21 of file CollocatedMGSingleThreaded.py.
| solvers.api.CollocatedMGSingleThreaded.CollocatedMGSingleThreaded.__init__ | ( | self, | |
| name, | |||
| unknowns_per_vertex, | |||
| dimensions, | |||
| min_h, | |||
| max_h, | |||
| local_assembly_matrix, | |||
| local_assembly_matrix_scaling, | |||
| mass_matrix, | |||
| mass_matrix_scaling, | |||
| correction_matrix, | |||
| correction_matrix_scaling, | |||
| solver_tolerance, | |||
| pre_smoothing_steps, | |||
| post_smoothing_steps, | |||
| descend_order, | |||
| restriction_matrix, | |||
| prolongation_matrix, | |||
coarsest_level = 0, |
|||
smoother_relaxation = 0.6, |
|||
plot_predicate = "true" |
|||
| ) |
Reimplemented from solvers.api.CollocatedMG.CollocatedMG.
Definition at line 32 of file CollocatedMGSingleThreaded.py.
References solvers.api.CollocatedMGSingleThreaded.CollocatedMGSingleThreaded.__init__().
Referenced by solvers.api.CollocatedMGSingleThreaded.CollocatedMGSingleThreaded.__init__().


| solvers.api.CollocatedMGSingleThreaded.CollocatedMGSingleThreaded.add_to_solve | ( | self, | |
| observer | |||
| ) |
Reimplemented from solvers.api.CollocatedMG.CollocatedMG.
Definition at line 77 of file CollocatedMGSingleThreaded.py.
References solvers.api.CollocatedDLinearDiscretisationWithPointJacobi.CollocatedDLinearDiscretisationWithPointJacobi._basic_descend_order, solvers.api.CollocatedMG.CollocatedMG._basic_descend_order, and solvers.api.ContinuousGalerkinDiscretisationGaussLobattoWithBlockJacobi.ContinuousGalerkinDiscretisationGaussLobattoWithBlockJacobi._basic_descend_order.
| solvers.api.CollocatedMGSingleThreaded.CollocatedMGSingleThreaded.get_vertex_merge_method | ( | self | ) |
Reimplemented from solvers.api.CollocatedMG.CollocatedMG.
Definition at line 84 of file CollocatedMGSingleThreaded.py.
Referenced by solvers.api.CollocatedDLinearDiscretisationWithPointJacobi.CollocatedDLinearDiscretisationWithPointJacobi.__init__().
