![]() |
Peano
|
Here we recreate a multigrid project, without using PETSc. More...
Public Member Functions | |
__init__ (self, namespace, project_name, directory=".", executable="peano4matrixfree", subdirectory="", abstract_overwrite=True) | |
Create a matrix project. | |
set_load_balancing (self, load_balancer_name, load_balancer_arguments) | |
Set the load balancing scheme. | |
set_Peano4_installation (self, src_path, mode=peano4.output.CompileMode.Release) | |
Tell the project where to find Peano. | |
set_global_simulation_parameters (self, dimensions, offset, domain_size, plot_after_each_mesh_sweep, max_iterations=100, plotter_precision=5) | |
Configure global simulation settings. | |
set_output_path (self, path) | |
generate_Peano4_project (self, verbose=False) | |
Build project. | |
add_solver (self, solver, auxiliary=False) | |
Add a new solver. | |
subdirectory (self) | |
__init__ (self, namespace, project_name, directory=".", executable="peano4petsc", preconditioner_type="None", solver_type="GMRES", subdirectory="") | |
set_load_balancing (self, load_balancer_name, load_balancer_arguments) | |
load_balancer_name: string Should be full-qualified name of the load balancer. | |
set_Peano4_installation (self, src_path, mode=peano4.output.CompileMode.Release) | |
src_path: string Path (relative or absolute) to the src directory of Peano. | |
set_global_simulation_parameters (self, dimensions, offset, domain_size, plotter_precision=5) | |
offset and size should be lists with dimensions double entries. | |
set_output_path (self, path) | |
generate_Peano4_project (self, verbose=False) | |
Build project. | |
add_solver (self, solver) | |
Takes the solver and runs through the individual steps of the algorithm. | |
subdirectory (self) | |
Static Public Attributes | |
str | LibraryDebug = "_debug" |
str | LibraryRelease = "" |
str | LibraryTrace = "_trace" |
str | LibraryAsserts = "_asserts" |
str | LibraryStats = "_stats" |
Private Member Functions | |
__configure_makefile (self) | |
Parse makefile of Peano to extract the configuration settings. | |
__set_solver_repository_dict (self) | |
__generate_solver_repository (self) | |
__export_constants (self) | |
Export all the constrants of the project into a Configure.h file. | |
__configure_makefile (self) | |
Configure the makefile of the PETSc project. | |
__set_solver_repository_dict (self) | |
__generate_solver_repository (self) | |
type_name_of_solvers: [String] Name of the solvers that we should instantiate and use in the main. | |
__export_constants (self) | |
We export ExaHyPE's constants. | |
Here we recreate a multigrid project, without using PETSc.
Multigrid solver project.
We keep some of the basic steps:
The rest is yet to be fleshed out.
Now that we have multiple solvers in a project, we may not want to use all of them for stopping criteria. Hence, we have a second array for solvers which participate, but are not asked if their stopping criteria have been reached.
The standard extensions that are used for Peano and ExaHyPE.
A project hosts a set of multigrid solvers for different PDEs (which you might eventually want to couple). Other than that, each project generates exactly one main file and a solver repository. The main file is represented by petsc.PETScMain, while the repository is generated directly by the project.
Consult generate_Peano4_project() for the latter.
Every PETSc project runs through the following steps:
Each of these steps is mapped onto one observer. It is clear that not all steps actually lead to mesh traversals and, therefore, are not to be modified by users. They are simply there to allow the main function to pick a step and to tell all MPI ranks to run the same step on all local trees. I therefore mark these steps as private via a leading underscore.
_solvers | [Solver] List of tuples of typename and names of solvers that this project should use simultaneously. |
preconditioner_type | String Preconditioner type to be used. This part of the string should match the final part of the enum class in src/petsc/LinearEquationSystem.h. The namespaceing is taken care of downstream. |
solver_type | String Solver type to be used. This part of the string should match the final part of the enum class in src/petsc/LinearEquationSystem.h. The namespaceing is taken care of downstream. |
Definition at line 10 of file Project.py.
api.Project.Project.__init__ | ( | self, | |
namespace, | |||
project_name, | |||
directory = ".", | |||
executable = "peano4matrixfree", | |||
subdirectory = "", | |||
abstract_overwrite = True ) |
Create a matrix project.
Definition at line 39 of file Project.py.
api.Project.Project.__init__ | ( | self, | |
namespace, | |||
project_name, | |||
directory = ".", | |||
executable = "peano4petsc", | |||
preconditioner_type = "None", | |||
solver_type = "GMRES", | |||
subdirectory = "" ) |
Definition at line 62 of file Project.py.
References exahype2.Project.Project._build_mode, swift2.Project.Project._build_mode, api.Project.Project._build_mode, exahype2.Project.Project._dimensions, peano4.visualisation.output.Visualiser.PatchFileData._dimensions, peano4.visualisation.output.Visualiser.Visualiser._dimensions, swift2.Project.Project._dimensions, convert::input::PeanoTextPatchFileReader._dimensions, api.Project.Project._dimensions, tarch::plotter::griddata::blockstructured::PeanoHDF5PatchFileWriter._dimensions, tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter._dimensions, scenarios.acoustic_planar_waves.AcousticPlanarWaves._dimensions, scenarios.advection_linear.AdvectionLinear._dimensions, scenarios.elastic_planar_waves.ElasticPlanarWaves._dimensions, scenarios.euler_gaussian_bell.EulerGaussianBell._dimensions, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._dimensions, scenarios.scenario.Scenario._dimensions, scenarios.swe_radial_dam_break.SWERadialDamBreak._dimensions, scenarios.swe_resting_lake.SWERestingLake._dimensions, exahype2.Project.Project._domain_offset, swift2.Project.Project._domain_offset, api.Project.Project._domain_offset, exahype2.Project.Project._domain_size, swift2.Project.Project._domain_size, api.Project.Project._domain_size, scenarios.acoustic_planar_waves.AcousticPlanarWaves._domain_size, scenarios.elastic_planar_waves.ElasticPlanarWaves._domain_size, scenarios.euler_gaussian_bell.EulerGaussianBell._domain_size, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._domain_size, scenarios.scenario.Scenario._domain_size, scenarios.swe_radial_dam_break.SWERadialDamBreak._domain_size, scenarios.swe_resting_lake.SWERestingLake._domain_size, exahype2.Project.Project._executable_name, swift2.Project.Project._executable_name, api.Project.Project._executable_name, exahype2.Project.Project._load_balancer_arguments, swift2.Project.Project._load_balancer_arguments, api.Project.Project._load_balancer_arguments, exahype2.Project.Project._load_balancer_name, swift2.Project.Project._load_balancer_name, api.Project.Project._load_balancer_name, exahype2.Project.Project._output_path, swift2.Project.Project._output_path, api.Project.Project._output_path, exahype2.Project.Project._Peano_src_directory, swift2.Project.Project._Peano_src_directory, api.Project.Project._Peano_src_directory, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, exahype2.Project.Project._solvers, api.Project.Project._solvers, exahype2.Project.Project._subdirectory, peano4.datamodel.Model.Model._subdirectory, peano4.Project.Project._subdirectory, api.Project.Project._subdirectory, swift2.Project.Project.algorithm_step_create_grid, and api.Project.Project.algorithm_step_create_grid.
|
private |
Parse makefile of Peano to extract the configuration settings.
We parse the configure script's/CMAKE outcome first via parse_configure_script_outcome(). After that, we set the dimension manually as well as the executable name and the build mode. The values for these parameters step from set_Peano4_installation().
Definition at line 131 of file Project.py.
References exahype2.Project.Project.__export_constants(), swift2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), exahype2.Project.Project._build_mode, swift2.Project.Project._build_mode, api.Project.Project._build_mode, exahype2.Project.Project._dimensions, peano4.visualisation.output.Visualiser.PatchFileData._dimensions, peano4.visualisation.output.Visualiser.Visualiser._dimensions, swift2.Project.Project._dimensions, convert::input::PeanoTextPatchFileReader._dimensions, api.Project.Project._dimensions, tarch::plotter::griddata::blockstructured::PeanoHDF5PatchFileWriter._dimensions, tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter._dimensions, scenarios.acoustic_planar_waves.AcousticPlanarWaves._dimensions, scenarios.advection_linear.AdvectionLinear._dimensions, scenarios.elastic_planar_waves.ElasticPlanarWaves._dimensions, scenarios.euler_gaussian_bell.EulerGaussianBell._dimensions, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._dimensions, scenarios.scenario.Scenario._dimensions, scenarios.swe_radial_dam_break.SWERadialDamBreak._dimensions, scenarios.swe_resting_lake.SWERestingLake._dimensions, exahype2.Project.Project._executable_name, swift2.Project.Project._executable_name, api.Project.Project._executable_name, exahype2.Project.Project._Peano_src_directory, swift2.Project.Project._Peano_src_directory, api.Project.Project._Peano_src_directory, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, and api.Project.Project._project.
Referenced by exahype2.Project.Project.generate_Peano4_project(), swift2.Project.Project.generate_Peano4_project(), and api.Project.Project.generate_Peano4_project().
|
private |
Configure the makefile of the PETSc project.
We parse the configure script's/CMAKE outcome first via parse_configure_script_outcome(). After that, we set the dimension manually as well as the executable name and the build mode. The values for these parameters step from set_Peano4_installation().
Definition at line 142 of file Project.py.
References exahype2.Project.Project.__export_constants(), swift2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), exahype2.Project.Project._build_mode, swift2.Project.Project._build_mode, api.Project.Project._build_mode, exahype2.Project.Project._dimensions, peano4.visualisation.output.Visualiser.PatchFileData._dimensions, peano4.visualisation.output.Visualiser.Visualiser._dimensions, swift2.Project.Project._dimensions, convert::input::PeanoTextPatchFileReader._dimensions, api.Project.Project._dimensions, tarch::plotter::griddata::blockstructured::PeanoHDF5PatchFileWriter._dimensions, tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter._dimensions, scenarios.acoustic_planar_waves.AcousticPlanarWaves._dimensions, scenarios.advection_linear.AdvectionLinear._dimensions, scenarios.elastic_planar_waves.ElasticPlanarWaves._dimensions, scenarios.euler_gaussian_bell.EulerGaussianBell._dimensions, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._dimensions, scenarios.scenario.Scenario._dimensions, scenarios.swe_radial_dam_break.SWERadialDamBreak._dimensions, scenarios.swe_resting_lake.SWERestingLake._dimensions, exahype2.Project.Project._executable_name, swift2.Project.Project._executable_name, api.Project.Project._executable_name, exahype2.Project.Project._Peano_src_directory, swift2.Project.Project._Peano_src_directory, api.Project.Project._Peano_src_directory, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, and api.Project.Project._project.
Referenced by exahype2.Project.Project.generate_Peano4_project(), swift2.Project.Project.generate_Peano4_project(), and api.Project.Project.generate_Peano4_project().
|
private |
Export all the constrants of the project into a Configure.h file.
We export ExaHyPE's constants. Besides the constants from ExaHyPE, I also export some parameters from Peano onto the ExaHyPE constants file. Therefore, it is important that you parse the configure output before we export the constants.
Definition at line 284 of file Project.py.
References exahype2.Project.Project._dimensions, peano4.visualisation.output.Visualiser.PatchFileData._dimensions, peano4.visualisation.output.Visualiser.Visualiser._dimensions, swift2.Project.Project._dimensions, convert::input::PeanoTextPatchFileReader._dimensions, api.Project.Project._dimensions, tarch::plotter::griddata::blockstructured::PeanoHDF5PatchFileWriter._dimensions, tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter._dimensions, scenarios.acoustic_planar_waves.AcousticPlanarWaves._dimensions, scenarios.advection_linear.AdvectionLinear._dimensions, scenarios.elastic_planar_waves.ElasticPlanarWaves._dimensions, scenarios.euler_gaussian_bell.EulerGaussianBell._dimensions, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._dimensions, scenarios.scenario.Scenario._dimensions, scenarios.swe_radial_dam_break.SWERadialDamBreak._dimensions, scenarios.swe_resting_lake.SWERestingLake._dimensions, exahype2.Project.Project._domain_offset, swift2.Project.Project._domain_offset, api.Project.Project._domain_offset, exahype2.Project.Project._domain_size, swift2.Project.Project._domain_size, api.Project.Project._domain_size, scenarios.acoustic_planar_waves.AcousticPlanarWaves._domain_size, scenarios.elastic_planar_waves.ElasticPlanarWaves._domain_size, scenarios.euler_gaussian_bell.EulerGaussianBell._domain_size, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._domain_size, scenarios.scenario.Scenario._domain_size, scenarios.swe_radial_dam_break.SWERadialDamBreak._domain_size, scenarios.swe_resting_lake.SWERestingLake._domain_size, exahype2.Project.Project._plotter_precision, swift2.Project.Project._plotter_precision, api.Project.Project._plotter_precision, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, exahype2.Project.Project._solvers, and api.Project.Project._solvers.
Referenced by api.Project.Project.__configure_makefile(), exahype2.Project.Project.generate_Peano4_project(), and swift2.Project.Project.generate_Peano4_project().
|
private |
We export ExaHyPE's constants.
Besides the constants from ExaHyPE, I also export some parameters from Peano onto the ExaHyPE constants file. Therefore, it is important that you parse the configure output before we export the constants.
Definition at line 312 of file Project.py.
References exahype2.Project.Project._dimensions, peano4.visualisation.output.Visualiser.PatchFileData._dimensions, peano4.visualisation.output.Visualiser.Visualiser._dimensions, swift2.Project.Project._dimensions, convert::input::PeanoTextPatchFileReader._dimensions, api.Project.Project._dimensions, tarch::plotter::griddata::blockstructured::PeanoHDF5PatchFileWriter._dimensions, tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter._dimensions, scenarios.acoustic_planar_waves.AcousticPlanarWaves._dimensions, scenarios.advection_linear.AdvectionLinear._dimensions, scenarios.elastic_planar_waves.ElasticPlanarWaves._dimensions, scenarios.euler_gaussian_bell.EulerGaussianBell._dimensions, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._dimensions, scenarios.scenario.Scenario._dimensions, scenarios.swe_radial_dam_break.SWERadialDamBreak._dimensions, scenarios.swe_resting_lake.SWERestingLake._dimensions, exahype2.Project.Project._domain_offset, swift2.Project.Project._domain_offset, api.Project.Project._domain_offset, exahype2.Project.Project._domain_size, swift2.Project.Project._domain_size, api.Project.Project._domain_size, scenarios.acoustic_planar_waves.AcousticPlanarWaves._domain_size, scenarios.elastic_planar_waves.ElasticPlanarWaves._domain_size, scenarios.euler_gaussian_bell.EulerGaussianBell._domain_size, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._domain_size, scenarios.scenario.Scenario._domain_size, scenarios.swe_radial_dam_break.SWERadialDamBreak._domain_size, scenarios.swe_resting_lake.SWERestingLake._domain_size, exahype2.Project.Project._plotter_precision, swift2.Project.Project._plotter_precision, api.Project.Project._plotter_precision, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, exahype2.Project.Project._solvers, and api.Project.Project._solvers.
Referenced by api.Project.Project.__configure_makefile(), exahype2.Project.Project.generate_Peano4_project(), and swift2.Project.Project.generate_Peano4_project().
|
private |
Definition at line 218 of file Project.py.
References exahype2.Project.Project.__set_solver_repository_dict(), api.Project.Project.__set_solver_repository_dict(), exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, and api.Project.Project.dictionary.
Referenced by exahype2.Project.Project.generate_Peano4_project(), and api.Project.Project.generate_Peano4_project().
|
private |
type_name_of_solvers: [String] Name of the solvers that we should instantiate and use in the main.
Definition at line 249 of file Project.py.
References exahype2.Project.Project.__set_solver_repository_dict(), api.Project.Project.__set_solver_repository_dict(), exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, and api.Project.Project.dictionary.
Referenced by exahype2.Project.Project.generate_Peano4_project(), and api.Project.Project.generate_Peano4_project().
|
private |
Definition at line 213 of file Project.py.
Referenced by exahype2.Project.Project.__generate_solver_repository(), and api.Project.Project.__generate_solver_repository().
|
private |
Definition at line 242 of file Project.py.
References exahype2.Project.Project._solvers, api.Project.Project._solvers, api.Project.Project.dictionary, api.Project.Project.preconditioner_type, and api.Project.Project.solver_type.
Referenced by exahype2.Project.Project.__generate_solver_repository(), and api.Project.Project.__generate_solver_repository().
api.Project.Project.add_solver | ( | self, | |
solver ) |
Takes the solver and runs through the individual steps of the algorithm.
Per step, it tells the solver to inject its particular stuff to the underlying observers.
Definition at line 276 of file Project.py.
References api.Project.Project._algorithm_step_init_petsc, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, exahype2.Project.Project._solvers, api.Project.Project._solvers, exahype2.Project.Project._subdirectory, peano4.datamodel.Model.Model._subdirectory, peano4.Project.Project._subdirectory, api.Project.Project._subdirectory, api.Project.Project.algorithm_step_assemble, swift2.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_enumerate_and_init_solution, api.Project.Project.algorithm_step_map_solution_onto_mesh, swift2.Project.Project.algorithm_step_plot, and api.Project.Project.algorithm_step_plot.
api.Project.Project.add_solver | ( | self, | |
solver, | |||
auxiliary = False ) |
Add a new solver.
Takes the solver and runs through the individual steps of the algorithm. Per step, it tells the solver to inject its particular stuff to the underlying observers.
The auxiliary flag allows us to distinguish the "main" solver from the helpers. The rationale for this is that we only want to measure the termination conditions for a subset of the solvers.
Definition at line 238 of file Project.py.
References exahype2.Project.Project._abstract_overwrite, api.Project.Project._abstract_overwrite, api.Project.Project._aux_solvers, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, exahype2.Project.Project._solvers, api.Project.Project._solvers, exahype2.Project.Project._subdirectory, peano4.datamodel.Model.Model._subdirectory, peano4.Project.Project._subdirectory, api.Project.Project._subdirectory, swift2.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_init_solution, swift2.Project.Project.algorithm_step_plot, api.Project.Project.algorithm_step_plot, and api.Project.Project.algorithm_step_solve.
api.Project.Project.generate_Peano4_project | ( | self, | |
verbose = False ) |
Build project.
Construct and return the Peano4 project, i.e. all the action sets et al that you require to run this Peano4 application with PETSc.
Definition at line 181 of file Project.py.
References exahype2.Project.Project.__configure_makefile(), swift2.Project.Project.__configure_makefile(), api.Project.Project.__configure_makefile(), exahype2.Project.Project.__generate_solver_repository(), api.Project.Project.__generate_solver_repository(), exahype2.Project.Project._domain_offset, swift2.Project.Project._domain_offset, api.Project.Project._domain_offset, exahype2.Project.Project._domain_size, swift2.Project.Project._domain_size, api.Project.Project._domain_size, scenarios.acoustic_planar_waves.AcousticPlanarWaves._domain_size, scenarios.elastic_planar_waves.ElasticPlanarWaves._domain_size, scenarios.euler_gaussian_bell.EulerGaussianBell._domain_size, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._domain_size, scenarios.scenario.Scenario._domain_size, scenarios.swe_radial_dam_break.SWERadialDamBreak._domain_size, scenarios.swe_resting_lake.SWERestingLake._domain_size, api.Project.Project._max_iterations, api.Project.Project._plot_after_each_mesh_sweep, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, swift2.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_init_solution, swift2.Project.Project.algorithm_step_plot, api.Project.Project.algorithm_step_plot, and api.Project.Project.algorithm_step_solve.
api.Project.Project.generate_Peano4_project | ( | self, | |
verbose = False ) |
Build project.
Construct and return the Peano4 project, i.e. all the action sets et al that you require to run this Peano4 application with PETSc.
This routine generates a Peano project, i.e. the domain-specific view is translated into a Peano model. Once you have called this routine, any changes to the PETSc project configuration do not propagate into the Peano setup anymore. If you alter the project setup, you have to call generate_Peano4_project() again to get a new snapshot/version of the Peano setup.
The function runs through various steps:
Definition at line 185 of file Project.py.
References exahype2.Project.Project.__configure_makefile(), swift2.Project.Project.__configure_makefile(), api.Project.Project.__configure_makefile(), exahype2.Project.Project.__generate_solver_repository(), api.Project.Project.__generate_solver_repository(), api.Project.Project._algorithm_step_init_petsc, api.Project.Project._algorithm_step_solve, exahype2.Project.Project._domain_offset, swift2.Project.Project._domain_offset, api.Project.Project._domain_offset, exahype2.Project.Project._domain_size, swift2.Project.Project._domain_size, api.Project.Project._domain_size, scenarios.acoustic_planar_waves.AcousticPlanarWaves._domain_size, scenarios.elastic_planar_waves.ElasticPlanarWaves._domain_size, scenarios.euler_gaussian_bell.EulerGaussianBell._domain_size, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._domain_size, scenarios.scenario.Scenario._domain_size, scenarios.swe_radial_dam_break.SWERadialDamBreak._domain_size, scenarios.swe_resting_lake.SWERestingLake._domain_size, exahype2.Project.Project._project, peano4.solversteps.Steps.Steps._project, swift2.Project.Project._project, api.Project.Project._project, api.Project.Project.algorithm_step_assemble, swift2.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_create_grid, api.Project.Project.algorithm_step_enumerate_and_init_solution, api.Project.Project.algorithm_step_map_solution_onto_mesh, swift2.Project.Project.algorithm_step_plot, and api.Project.Project.algorithm_step_plot.
api.Project.Project.set_global_simulation_parameters | ( | self, | |
dimensions, | |||
offset, | |||
domain_size, | |||
plot_after_each_mesh_sweep, | |||
max_iterations = 100, | |||
plotter_precision = 5 ) |
Configure global simulation settings.
offset | [Float] |
size | [Float] should be lists with dimensions double entries. |
Definition at line 148 of file Project.py.
References exahype2.Project.Project._dimensions, peano4.visualisation.output.Visualiser.PatchFileData._dimensions, peano4.visualisation.output.Visualiser.Visualiser._dimensions, swift2.Project.Project._dimensions, convert::input::PeanoTextPatchFileReader._dimensions, api.Project.Project._dimensions, tarch::plotter::griddata::blockstructured::PeanoHDF5PatchFileWriter._dimensions, tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter._dimensions, scenarios.acoustic_planar_waves.AcousticPlanarWaves._dimensions, scenarios.advection_linear.AdvectionLinear._dimensions, scenarios.elastic_planar_waves.ElasticPlanarWaves._dimensions, scenarios.euler_gaussian_bell.EulerGaussianBell._dimensions, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._dimensions, scenarios.scenario.Scenario._dimensions, scenarios.swe_radial_dam_break.SWERadialDamBreak._dimensions, scenarios.swe_resting_lake.SWERestingLake._dimensions, exahype2.Project.Project._domain_offset, swift2.Project.Project._domain_offset, api.Project.Project._domain_offset, exahype2.Project.Project._domain_size, swift2.Project.Project._domain_size, api.Project.Project._domain_size, scenarios.acoustic_planar_waves.AcousticPlanarWaves._domain_size, scenarios.elastic_planar_waves.ElasticPlanarWaves._domain_size, scenarios.euler_gaussian_bell.EulerGaussianBell._domain_size, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._domain_size, scenarios.scenario.Scenario._domain_size, scenarios.swe_radial_dam_break.SWERadialDamBreak._domain_size, and scenarios.swe_resting_lake.SWERestingLake._domain_size.
api.Project.Project.set_global_simulation_parameters | ( | self, | |
dimensions, | |||
offset, | |||
domain_size, | |||
plotter_precision = 5 ) |
offset and size should be lists with dimensions double entries.
Definition at line 160 of file Project.py.
References exahype2.Project.Project._dimensions, peano4.visualisation.output.Visualiser.PatchFileData._dimensions, peano4.visualisation.output.Visualiser.Visualiser._dimensions, swift2.Project.Project._dimensions, convert::input::PeanoTextPatchFileReader._dimensions, api.Project.Project._dimensions, tarch::plotter::griddata::blockstructured::PeanoHDF5PatchFileWriter._dimensions, tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter._dimensions, scenarios.acoustic_planar_waves.AcousticPlanarWaves._dimensions, scenarios.advection_linear.AdvectionLinear._dimensions, scenarios.elastic_planar_waves.ElasticPlanarWaves._dimensions, scenarios.euler_gaussian_bell.EulerGaussianBell._dimensions, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._dimensions, scenarios.scenario.Scenario._dimensions, scenarios.swe_radial_dam_break.SWERadialDamBreak._dimensions, scenarios.swe_resting_lake.SWERestingLake._dimensions, exahype2.Project.Project._domain_offset, swift2.Project.Project._domain_offset, api.Project.Project._domain_offset, exahype2.Project.Project._domain_size, swift2.Project.Project._domain_size, api.Project.Project._domain_size, scenarios.acoustic_planar_waves.AcousticPlanarWaves._domain_size, scenarios.elastic_planar_waves.ElasticPlanarWaves._domain_size, scenarios.euler_gaussian_bell.EulerGaussianBell._domain_size, scenarios.euler_isotropic_vortex.EulerIsotropicVortex._domain_size, scenarios.scenario.Scenario._domain_size, scenarios.swe_radial_dam_break.SWERadialDamBreak._domain_size, scenarios.swe_resting_lake.SWERestingLake._domain_size, exahype2.Project.Project._plotter_precision, swift2.Project.Project._plotter_precision, and api.Project.Project._plotter_precision.
api.Project.Project.set_load_balancing | ( | self, | |
load_balancer_name, | |||
load_balancer_arguments ) |
Set the load balancing scheme.
load_balancer_name | string Should be full-qualified name of the load balancer. By default, I recommend to pass "toolbox::loadbalancing::RecursiveSubdivision" |
load_balancer_arguments | string If your load balancing requires parameters, add them here. It is a string that will be copied into the C++ class instantiation. Please add the brackets yourself, i.e. "(3,4,5)" is fine, but "3,4,5" is not. The only exception is the empty parameter list. Here, you can/should simply add the empty string. |
Definition at line 90 of file Project.py.
References exahype2.Project.Project._load_balancer_arguments, swift2.Project.Project._load_balancer_arguments, api.Project.Project._load_balancer_arguments, exahype2.Project.Project._load_balancer_name, swift2.Project.Project._load_balancer_name, and api.Project.Project._load_balancer_name.
api.Project.Project.set_load_balancing | ( | self, | |
load_balancer_name, | |||
load_balancer_arguments ) |
load_balancer_name: string Should be full-qualified name of the load balancer.
By default, I recommend to pass "toolbox::loadbalancing::RecursiveSubdivision"
load_balancer_arguments: string If your load balancing requires parameters, add them here. It is a string that will be copied into the C++ class instantiation. Please add the brackets yourself, i.e. "(3,4,5)" is fine, but "3,4,5" is not. The only exception is the empty parameter list. Here, you can/should simply add the empty string.
Definition at line 98 of file Project.py.
References exahype2.Project.Project._load_balancer_arguments, swift2.Project.Project._load_balancer_arguments, api.Project.Project._load_balancer_arguments, exahype2.Project.Project._load_balancer_name, swift2.Project.Project._load_balancer_name, and api.Project.Project._load_balancer_name.
api.Project.Project.set_output_path | ( | self, | |
path ) |
Definition at line 175 of file Project.py.
References exahype2.Project.Project._output_path, swift2.Project.Project._output_path, and api.Project.Project._output_path.
api.Project.Project.set_output_path | ( | self, | |
path ) |
Definition at line 179 of file Project.py.
References exahype2.Project.Project._output_path, swift2.Project.Project._output_path, and api.Project.Project._output_path.
api.Project.Project.set_Peano4_installation | ( | self, | |
src_path, | |||
mode = peano4.output.CompileMode.Release ) |
Tell the project where to find Peano.
Once we know where to find Peano, we can parse the configuration/makefile there and know which compile parameters to use. We also know then where to search for the static libraries.
src_path | string Path (relative or absolute) to the src directory of Peano. This path should hold both the headers (in subdirectories) and all the static libraries. |
mode | peano4.output.CompileMode |
Definition at line 110 of file Project.py.
References exahype2.Project.Project._build_mode, swift2.Project.Project._build_mode, api.Project.Project._build_mode, exahype2.Project.Project._Peano_src_directory, swift2.Project.Project._Peano_src_directory, and api.Project.Project._Peano_src_directory.
api.Project.Project.set_Peano4_installation | ( | self, | |
src_path, | |||
mode = peano4.output.CompileMode.Release ) |
src_path: string Path (relative or absolute) to the src directory of Peano.
This path should hold both the headers (in subdirectories) and all the static libraries.
mode: peano4.output.CompileMode
Definition at line 127 of file Project.py.
References exahype2.Project.Project._build_mode, swift2.Project.Project._build_mode, api.Project.Project._build_mode, exahype2.Project.Project._Peano_src_directory, swift2.Project.Project._Peano_src_directory, and api.Project.Project._Peano_src_directory.
api.Project.Project.subdirectory | ( | self | ) |
Definition at line 357 of file Project.py.
References exahype2.Project.Project._subdirectory, peano4.datamodel.Model.Model._subdirectory, peano4.Project.Project._subdirectory, and api.Project.Project._subdirectory.
Referenced by peano4.output.ActionSet.ActionSet.__generate_header(), peano4.output.Observer.Observer.__generate_header(), peano4.datamodel.Model.Model.add_cell(), peano4.datamodel.Model.Model.add_face(), peano4.datamodel.Model.Model.add_global_object(), peano4.datamodel.Model.Model.add_vertex(), peano4.output.ActionSet.ActionSet.generate(), peano4.output.InvokeExternalTool.InvokeExternalTool.generate(), peano4.output.Jinja2TemplatedHeaderFile.Jinja2TemplatedHeaderFile.generate(), peano4.output.Jinja2TemplatedHeaderImplementationFilePair.Jinja2TemplatedHeaderImplementationFilePair.generate(), peano4.output.Observer.Observer.generate(), peano4.output.TemplatedHeaderFile.TemplatedHeaderFile.generate(), peano4.output.TemplatedHeaderImplementationFilePair.TemplatedHeaderImplementationFilePair.generate(), peano4.output.ActionSet.ActionSet.get_cpp_file_name(), peano4.output.Observer.Observer.get_cpp_file_name(), and peano4.datamodel.DoF.DoF.subnamespace().
api.Project.Project.subdirectory | ( | self | ) |
Definition at line 382 of file Project.py.
References exahype2.Project.Project._subdirectory, peano4.datamodel.Model.Model._subdirectory, peano4.Project.Project._subdirectory, and api.Project.Project._subdirectory.
Referenced by peano4.output.ActionSet.ActionSet.__generate_header(), peano4.output.Observer.Observer.__generate_header(), peano4.datamodel.Model.Model.add_cell(), peano4.datamodel.Model.Model.add_face(), peano4.datamodel.Model.Model.add_global_object(), peano4.datamodel.Model.Model.add_vertex(), peano4.output.ActionSet.ActionSet.generate(), peano4.output.InvokeExternalTool.InvokeExternalTool.generate(), peano4.output.Jinja2TemplatedHeaderFile.Jinja2TemplatedHeaderFile.generate(), peano4.output.Jinja2TemplatedHeaderImplementationFilePair.Jinja2TemplatedHeaderImplementationFilePair.generate(), peano4.output.Observer.Observer.generate(), peano4.output.TemplatedHeaderFile.TemplatedHeaderFile.generate(), peano4.output.TemplatedHeaderImplementationFilePair.TemplatedHeaderImplementationFilePair.generate(), peano4.output.ActionSet.ActionSet.get_cpp_file_name(), peano4.output.Observer.Observer.get_cpp_file_name(), and peano4.datamodel.DoF.DoF.subnamespace().
|
protected |
Definition at line 57 of file Project.py.
Referenced by api.Project.Project.add_solver(), and exahype2.Project.Project.generate_Peano4_project().
|
protected |
Definition at line 89 of file Project.py.
Referenced by api.Project.Project.add_solver(), and api.Project.Project.generate_Peano4_project().
|
protected |
Definition at line 91 of file Project.py.
Referenced by api.Project.Project.generate_Peano4_project().
|
protected |
Definition at line 75 of file Project.py.
Referenced by api.Project.Project.add_solver().
|
protected |
Definition at line 69 of file Project.py.
Referenced by api.Project.Project.__configure_makefile(), api.Project.Project.__init__(), exahype2.Project.Project.generate_Peano4_project(), swift2.Project.Project.generate_Peano4_project(), exahype2.Project.Project.set_Peano4_installation(), swift2.Project.Project.set_Peano4_installation(), and api.Project.Project.set_Peano4_installation().
|
protected |
Definition at line 62 of file Project.py.
Referenced by exahype2.Project.Project.__configure_makefile(), swift2.Project.Project.__configure_makefile(), api.Project.Project.__configure_makefile(), exahype2.Project.Project.__export_constants(), swift2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), api.Project.Project.__init__(), scenarios.elastic_planar_waves.ElasticPlanarWaves.analytical_solution(), peano4.visualisation.output.Visualiser.PatchFileData.apply_renderer_to_data(), exahype2.Project.Project.generate_Peano4_project(), scenarios.elastic_planar_waves.ElasticPlanarWaves.initial_conditions(), swift2.Project.Project.set_global_simulation_parameters(), api.Project.Project.set_global_simulation_parameters(), api.Project.Project.set_global_simulation_parameters(), exahype2.Project.Project.set_global_simulation_parameters(), and scenarios.scenario.Scenario.set_global_simulation_parameters().
|
protected |
Definition at line 60 of file Project.py.
Referenced by exahype2.Project.Project.__export_constants(), swift2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), api.Project.Project.__init__(), api.Project.Project.generate_Peano4_project(), swift2.Project.Project.set_global_simulation_parameters(), api.Project.Project.set_global_simulation_parameters(), api.Project.Project.set_global_simulation_parameters(), and exahype2.Project.Project.set_global_simulation_parameters().
|
protected |
Definition at line 61 of file Project.py.
Referenced by exahype2.Project.Project.__export_constants(), swift2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), api.Project.Project.__init__(), api.Project.Project.generate_Peano4_project(), swift2.Project.Project.real_mesh_size(), swift2.Project.Project.set_global_simulation_parameters(), api.Project.Project.set_global_simulation_parameters(), api.Project.Project.set_global_simulation_parameters(), exahype2.Project.Project.set_global_simulation_parameters(), and scenarios.scenario.Scenario.set_global_simulation_parameters().
|
protected |
Definition at line 70 of file Project.py.
Referenced by exahype2.Project.Project.__configure_makefile(), swift2.Project.Project.__configure_makefile(), api.Project.Project.__configure_makefile(), and api.Project.Project.__init__().
|
protected |
Definition at line 65 of file Project.py.
Referenced by swift2.Project.Project.__generate_global_state_files(), api.Project.Project.__init__(), swift2.Project.Project.set_load_balancing(), api.Project.Project.set_load_balancing(), and exahype2.Project.Project.set_load_balancing().
|
protected |
Definition at line 64 of file Project.py.
Referenced by swift2.Project.Project.__generate_global_state_files(), api.Project.Project.__init__(), swift2.Project.Project.set_load_balancing(), api.Project.Project.set_load_balancing(), and exahype2.Project.Project.set_load_balancing().
|
protected |
Definition at line 170 of file Project.py.
Referenced by api.Project.Project.generate_Peano4_project().
|
protected |
Definition at line 71 of file Project.py.
Referenced by api.Project.Project.__init__(), exahype2.Project.Project.generate_Peano4_project(), exahype2.Project.Project.set_output_path(), swift2.Project.Project.set_output_path(), and api.Project.Project.set_output_path().
|
protected |
Definition at line 66 of file Project.py.
Referenced by api.Project.Project.__configure_makefile(), api.Project.Project.__init__(), exahype2.Project.Project.generate_Peano4_project(), swift2.Project.Project.generate_Peano4_project(), exahype2.Project.Project.set_Peano4_installation(), swift2.Project.Project.set_Peano4_installation(), and api.Project.Project.set_Peano4_installation().
|
protected |
Definition at line 169 of file Project.py.
Referenced by api.Project.Project.generate_Peano4_project().
|
protected |
Definition at line 171 of file Project.py.
Referenced by exahype2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), swift2.Project.Project.set_global_simulation_parameters(), api.Project.Project.set_global_simulation_parameters(), and exahype2.Project.Project.set_global_simulation_parameters().
|
protected |
Definition at line 52 of file Project.py.
Referenced by exahype2.Project.Project.__configure_makefile(), swift2.Project.Project.__configure_makefile(), api.Project.Project.__configure_makefile(), exahype2.Project.Project.__export_constants(), swift2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), swift2.Project.Project.__generate_global_state_files(), exahype2.Project.Project.__generate_solver_repository(), api.Project.Project.__generate_solver_repository(), api.Project.Project.__init__(), api.Project.Project.add_solver(), api.Project.Project.add_solver(), peano4.solversteps.Steps.Steps.add_step(), exahype2.Project.Project.add_tracer(), exahype2.Project.Project.generate_Peano4_project(), swift2.Project.Project.generate_Peano4_project(), api.Project.Project.generate_Peano4_project(), exahype2.Project.Project.remove_all_solvers(), and exahype2.Project.Project.set_global_simulation_parameters().
|
protected |
Definition at line 73 of file Project.py.
Referenced by exahype2.Project.Project.__export_constants(), api.Project.Project.__export_constants(), exahype2.Project.Project.__generate_solver_repository(), api.Project.Project.__init__(), api.Project.Project.__set_solver_repository_dict(), exahype2.Project.Project.add_solver(), api.Project.Project.add_solver(), api.Project.Project.add_solver(), exahype2.Project.Project.generate_Peano4_project(), exahype2.Project.Project.init_new_user_defined_algorithmic_step(), exahype2.Project.Project.remove_all_solvers(), and exahype2.Project.Project.set_restart_from_checkpoint().
|
protected |
Definition at line 56 of file Project.py.
Referenced by api.Project.Project.__init__(), api.Project.Project.add_solver(), api.Project.Project.add_solver(), peano4.Project.Project.add_subproject(), exahype2.Project.Project.generate_Peano4_project(), exahype2.Project.Project.subdirectory(), peano4.datamodel.Model.Model.subdirectory(), peano4.Project.Project.subdirectory(), and api.Project.Project.subdirectory().
api.Project.Project.algorithm_step_assemble |
Definition at line 90 of file Project.py.
Referenced by api.Project.Project.add_solver(), and api.Project.Project.generate_Peano4_project().
api.Project.Project.algorithm_step_create_grid |
Definition at line 77 of file Project.py.
Referenced by api.Project.Project.__init__(), api.Project.Project.add_solver(), api.Project.Project.add_solver(), swift2.Project.Project.generate_Peano4_project(), and api.Project.Project.generate_Peano4_project().
api.Project.Project.algorithm_step_enumerate_and_init_solution |
Definition at line 88 of file Project.py.
Referenced by api.Project.Project.add_solver(), and api.Project.Project.generate_Peano4_project().
api.Project.Project.algorithm_step_init_solution |
Definition at line 78 of file Project.py.
Referenced by api.Project.Project.add_solver(), and api.Project.Project.generate_Peano4_project().
api.Project.Project.algorithm_step_map_solution_onto_mesh |
Definition at line 92 of file Project.py.
Referenced by api.Project.Project.add_solver(), and api.Project.Project.generate_Peano4_project().
api.Project.Project.algorithm_step_plot |
Definition at line 81 of file Project.py.
Referenced by api.Project.Project.add_solver(), api.Project.Project.add_solver(), swift2.Project.Project.generate_Peano4_project(), and api.Project.Project.generate_Peano4_project().
api.Project.Project.algorithm_step_solve |
Definition at line 79 of file Project.py.
Referenced by api.Project.Project.add_solver(), and api.Project.Project.generate_Peano4_project().
api.Project.Project.dictionary |
Definition at line 214 of file Project.py.
Referenced by api.Project.Project.__generate_solver_repository(), and api.Project.Project.__set_solver_repository_dict().
|
static |
Definition at line 36 of file Project.py.
|
static |
Definition at line 33 of file Project.py.
|
static |
Definition at line 34 of file Project.py.
|
static |
Definition at line 37 of file Project.py.
|
static |
Definition at line 35 of file Project.py.
api.Project.Project.preconditioner_type |
Definition at line 95 of file Project.py.
Referenced by api.Project.Project.__set_solver_repository_dict().
api.Project.Project.solver_type |
Definition at line 96 of file Project.py.
Referenced by api.Project.Project.__set_solver_repository_dict().