|
Peano
|
This tutorial runs through the steps that we perform to write a single-level DG solver on a regular grid. We implement the standard "benchmark" for this type of solvers, which is solving the Poisson equation on the unit square. All sources for this can be found in tests/multigrid/matrixfree/poisson/dg.py, as the solver is routinely used to do convergence measurements. While we follow some steps of this script, the test Python script has more technical flavours/details which we omit in the notebook. Therefore, it is reasonable to study the present text in combination with the actual script once you've done the notebook once.
The notebook clarifies how to construct an MGHyPE project with one solver of the type multigrid.matrixfree.solvers.api.DiscontinuousGalerkinDiscretisationPointWiseRiemannSolver (cmp multigrid/matrixfree/solvers/api/DiscontinuousGalerkinDiscretisationPointWiseRiemannSolver.py in src).
Since we solve the Poisson equation, and employ a Discontinuous Galerkin formalism with a point-wise Riemann solver, we start from
\( \mathcal{L}(u) = - \Delta u = f \)
and apply a weak formulation:
\( \begin{eqnarray} \int \left( - \Delta u, v \right) dx & = & \int (f, v) dx \\ \int _c \left( \nabla u, \nabla v \right) dx - \sum _f \int _f \left( \nabla u, n \right) v dS(x) & = & \int (f, v) dx \\ \int _c \left( \nabla u, \nabla v \right) dx - \sum _f \int _f \left( \mathcal{R}(u^-,u^+), n \right) \phi dS(x) & = & \int (f,v) dx. \end{eqnarray} \)
Before we start, we assume that you have either set export PYTHONPATH=../../../../python:../../../../src or you invoke
We create an MGHyPE project (bear in mind that we basically discuss how to write the test case in the repo; we'd likely use a different namespace otherwise):
Peano 4 (C) www.peano-framework.org ParaView is not available, not loading peano4.api.visualisation. Peano 4 - Multigrid extension /home/tobias/git/Peano/src/mghype/api/matrixgenerators/GaussLobatto.py:147: SyntaxWarning: invalid escape sequence '\c' ''' /home/tobias/git/Peano/src/mghype/api/matrixgenerators/GaussLobatto.py:255: SyntaxWarning: invalid escape sequence '\c' """! /home/tobias/git/Peano/src/mghype/matrixfree/solvers/api/actionsets/DGCGCoupling.py:404: SyntaxWarning: invalid escape sequence '\m' """! /home/tobias/git/Peano/src/mghype/matrixfree/solvers/api/CollocatedDLinearDiscretisationWithPointJacobi.py:17: SyntaxWarning: invalid escape sequence '\d' """! /home/tobias/git/Peano/src/mghype/matrixfree/solvers/api/actionsets/PlotVertexDataInPeanoBlockFormat.py:17: SyntaxWarning: invalid escape sequence '\p' """! /home/tobias/git/Peano/src/mghype/matrixfree/solvers/api/DiscontinuousGalerkinDiscretisationPointWiseRiemannSolver.py:17: SyntaxWarning: invalid escape sequence '\p' """! /home/tobias/git/Peano/src/mghype/matrixfree/solvers/api/DiscontinuousGalerkinDiscretisationPointWiseRiemannSolver.py:267: SyntaxWarning: invalid escape sequence '\g' """! /home/tobias/git/Peano/src/mghype/matrixfree/solvers/api/actionsets/DGSolver/UpdateFaceSolution.py:15: SyntaxWarning: invalid escape sequence '\p' templatetouchFaceFirstTime=""" /home/tobias/git/Peano/src/mghype/matrixfree/solvers/api/CollocatedMG.py:19: SyntaxWarning: invalid escape sequence '\p' """!
The solver construction also is a "one-liner" using the following observations:
Warning: penalty parameter gamma_F is set to 2/h and does not depend on the polynomial degree!
This code block employs MGHyPE's matrix generator quite heavily. It makes sense to consult this class' documentation for further info. There's one more difference and that is that we inject the construction of the right-hand side. Previously, we wrote that ourselves within the generated C++ code. This time, we skip this step and directly inject a C++ code snippet into the generation. However, this code snippet doesn't implement anything itself but calls another function which we still have to define. We discuss this below when we lower the code.
We next add this solver to the project and set some global parameters:
In line with the hitchhiker's guide, we now lower this into a Peano project and make the latter dump the C++ code. There's now one more thing that we do differently compared with previous tutorials as we announced above: This time, we outsource the actual scenario (aka right-hand side) into a C++ file of its own, include it into the build and then make the solver link to this predefined scenario. I personally think that it is always a good idea to move as much out of the Python or generated environment as possible. With the separate implementation, we can use this right-hand side in different solver flavours or test it separatedly. Obviously, as it is so simple, this is all quite some over-engineering. But for more complex setups, it absolutely makes sense.
parse configure outcome ../../../config.log to extract configure settings
parse configure outcome ../../../src/Makefile to extract compile settings
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
Cell In[6], line 1
----> 1 peano4_project = project.generate_Peano4_project(False)
2 peano4_project.output.makefile.add_cpp_file( "Scenario.cpp" )
3 peano4_project.generate()
File ~/git/Peano/src/mghype/matrixfree/api/Project.py:176, in Project.generate_Peano4_project(self, verbose)
173 self._project.solversteps.add_step(self.algorithm_step_plot)
175 self.__configure_makefile()
--> 176 self.__generate_solver_repository()
178 self._project.output.readme.add_package_description( """
179
180
181 """ )
183 return self._project
File ~/git/Peano/src/mghype/matrixfree/api/Project.py:204, in Project.__generate_solver_repository(self)
196 templatefile_prefix = os.path.realpath(__file__).replace( ".pyc", "" ).replace( ".py", "" )
197 template_name = templatefile_prefix + ".SolverRepository.template"
198 generated_repository_files = peano4.output.Jinja2TemplatedHeaderImplementationFilePair(
199 template_name + ".h",
200 template_name + ".cpp",
201 "SolverRepository",
202 self._project.namespace, # + ["repositories"],
203 self._project.subdirectory + "repositories",
--> 204 self.dictionary,
205 True,
206 True)
208 self._project.output.add( generated_repository_files )
209 self._project.output.makefile.add_h_file( self._project.subdirectory + "repositories/SolverRepository.h", generated=True )
AttributeError: 'Project' object has no attribute 'dictionary'
The only "new" thing here's the line add_cpp_file() which we discuss next.
Nothing new here compared to previous exercises:
icpx Scenario.o AbstractDGHigherOrderPoisson.o DGHigherOrderPoisson.o repositories/SolverRepository.o celldata/DGHigherOrderPoisson.o facedata/DGHigherOrderPoisson.o vertexdata/DGHigherOrderPoisson.o repositories/DataRepository.o observers/CreateGrid2peano4_toolbox_CreateRegularGrid0.o observers/CreateGrid.o observers/InitSolution2mghype_matrixfree_solvers_api_actionsets_DGSolver_InitDofs0.o observers/InitSolution.o observers/Solve2mghype_matrixfree_solvers_api_actionsets_DGSolver_UpdateFaceSolution_UpdateFaceSolution0.o observers/Solve2mghype_matrixfree_solvers_api_actionsets_DGSolver_ProjectIntoCellAndUpdateCellSolution_ProjectIntoCellAndUpdateCellSolution1.o observers/Solve2mghype_matrixfree_solvers_api_actionsets_DGSolver_ProjectOntoFaces_ProjectOntoFaces2.o observers/Solve2mghype_matrixfree_solvers_api_actionsets_DGSolver_UpdateResidual_UpdateResidual3.o observers/Solve.o observers/Plot2mghype_matrixfree_solvers_api_actionsets_PlotDGDataInPeanoBlockFormat0.o observers/Plot2mghype_matrixfree_solvers_api_actionsets_PlotDGDataInPeanoBlockFormat1.o observers/Plot.o repositories/StepRepository.o Tutorial03-main.o -L/home/tobias/git/Peano/src -L/home/tobias/git/Peano/src/toolbox/finiteelements -L/home/tobias/git/Peano/src/toolbox/loadbalancing -L/home/tobias/git/Peano/src/toolbox/blockstructured -L/home/tobias/git/Peano/src/toolbox/particles -L/home/tobias/git/Peano/src/exahype2 -L/home/tobias/git/Peano/src/mghype -L/home/tobias/git/Peano/src/exaparty -g3 -fiopenmp -fsycl -L../../../src -lExaPartyCore2d -lMultigrid2d -lExaHyPE2Core2d -lToolboxBlockstructured2d -lToolboxLoadBalancing2d -lToolboxFiniteElements2d -lPeano4Core2d -lTarch -lToolboxParticles2d -lToolboxBlockstructured2d -lToolboxLoadBalancing2d -lToolboxFiniteElements2d -lPeano4Core2d -lTarch -lhdf5 -lhdf5_cpp -o tutorial03 icpx: ␛[0;1;34mremark: ␛[0m␛[1mNote that use of '-g3' without any optimization-level option will turn off most compiler optimizations similar to use of '-O0'; use '-Rno-debug-disables-optimization' to disable this remark [-Rdebug-disables-optimization]␛[0m
If you study this compile call carefull, you will recognise that Peano now has added Solution.cpp to the compile and the linker. Therefore, this project builds with an "external" object file.
rm: cannot remove '*.peano-patch-file': No such file or directory 15131861276 00:00:15 rank:0 core:5 warning tarch::logging::Statistics::writeToCSV(string) no statistics available. Recompile with -DTrackStatistics for runtime sampling (file:tarch/logging/Statistics.cpp,line:265) Peano 4 (C) www.peano-framework.org build: 2d, no mpi, omp (8 threads), no gpu support 10771 00:00:00 rank:0 core:2 info ::step() run CreateGrid 7748001 00:00:00 rank:0 core:2 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 1935325 00:00:00 rank:0 core:2 info ::step() run CreateGrid 9192293 00:00:00 rank:0 core:1 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 3496203 00:00:00 rank:0 core:2 info ::step() run CreateGrid 13795591 00:00:00 rank:0 core:3 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 14634826 00:00:00 rank:0 core:2 info ::step() run CreateGrid 21876610 00:00:00 rank:0 core:7 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 22083854 00:00:00 rank:0 core:2 info ::step() run CreateGrid 29281482 00:00:00 rank:0 core:7 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 80075322 00:00:00 rank:0 core:5 info ::step() run CreateGrid 87333611 00:00:00 rank:0 core:7 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 139727260 00:00:00 rank:0 core:5 info ::step() run CreateGrid 146988981 00:00:00 rank:0 core:7 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 193098407 00:00:00 rank:0 core:5 info ::step() run CreateGrid 200317435 00:00:00 rank:0 core:3 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 246554182 00:00:00 rank:0 core:5 info ::step() run CreateGrid 253751845 00:00:00 rank:0 core:5 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 300057514 00:00:00 rank:0 core:5 info ::step() run CreateGrid 307273757 00:00:00 rank:0 core:7 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 353421839 00:00:00 rank:0 core:5 info ::step() run CreateGrid 360784636 00:00:00 rank:0 core:1 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 416913799 00:00:00 rank:0 core:5 info ::::selectNextAlgorithmicStep() mesh has been stationary for more than 5 grid sweeps. Stop grid construction 409823605 00:00:00 rank:0 core:5 info ::step() run CreateGrid 417027868 00:00:00 rank:0 core:3 info peano4::grid::Spacetree::traverse(...) got 1 grid control events: (refinementControl=Refine,offset=[-2.99616e+307,-2.99616e+307],width=[8.98847e+307,8.98847e+307],h=[0.1,0.1]) 463435935 00:00:00 rank:0 core:5 info ::step() run InitSolution 522484371 00:00:00 rank:0 core:5 info ::step() run Plot 529774613 00:00:00 rank:0 core:4 info tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter::PeanoTextPatchFileWriter(...) no index file DGHigherOrderPoisson.solution.peano-patch-file found. Create new one 529816667 00:00:00 rank:0 core:4 info tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter::createEmptyIndexFile() create empty index file DGHigherOrderPoisson.solution.peano-patch-file 531401347 00:00:00 rank:0 core:4 info tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter::PeanoTextPatchFileWriter(...) no index file DGHigherOrderPoisson.rhs.peano-patch-file found. Create new one 531432186 00:00:00 rank:0 core:4 info tarch::plotter::griddata::blockstructured::PeanoTextPatchFileWriter::createEmptyIndexFile() create empty index file DGHigherOrderPoisson.rhs.peano-patch-file 860570355 00:00:00 rank:0 core:5 info ::step() run Solve 963287132 00:00:00 rank:0 core:5 info ::step() run Solve 1116524038 00:00:01 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=2.08269, |r|_2=90.5185, |r|_h=3.35254, |du|_max=1.04135, |du|_2=45.2592, |du|_h=1.67627, h_min=0.037037, h_max=0.037037 1106426551 00:00:01 rank:0 core:5 info ::step() run Solve 1274532239 00:00:01 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.699385, |r|_2=32.9415, |r|_h=1.22006, |du|_max=0.349693, |du|_2=16.4708, |du|_h=0.610028, h_min=0.037037, h_max=0.037037 1264430814 00:00:01 rank:0 core:5 info ::step() run Solve 1428582180 00:00:01 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.443959, |r|_2=15.5772, |r|_h=0.576932, |du|_max=0.221979, |du|_2=7.78858, |du|_h=0.288466, h_min=0.037037, h_max=0.037037 1418460663 00:00:01 rank:0 core:5 info ::step() run Solve 1578823281 00:00:01 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.321421, |r|_2=9.12026, |r|_h=0.337787, |du|_max=0.16071, |du|_2=4.56013, |du|_h=0.168894, h_min=0.037037, h_max=0.037037 1568719389 00:00:01 rank:0 core:5 info ::step() run Solve 1724439734 00:00:01 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.192563, |r|_2=5.69817, |r|_h=0.211044, |du|_max=0.0962814, |du|_2=2.84909, |du|_h=0.105522, h_min=0.037037, h_max=0.037037 1714429403 00:00:01 rank:0 core:5 info ::step() run Solve 1859286002 00:00:01 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.116964, |r|_2=3.84847, |r|_h=0.142536, |du|_max=0.058482, |du|_2=1.92423, |du|_h=0.0712679, h_min=0.037037, h_max=0.037037 1849169660 00:00:01 rank:0 core:5 info ::step() run Solve 2013871916 00:00:02 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0917601, |r|_2=2.93709, |r|_h=0.108781, |du|_max=0.0458801, |du|_2=1.46854, |du|_h=0.0543905, h_min=0.037037, h_max=0.037037 2003747031 00:00:02 rank:0 core:5 info ::step() run Solve 2148164685 00:00:02 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0768187, |r|_2=2.55379, |r|_h=0.0945848, |du|_max=0.0384093, |du|_2=1.27689, |du|_h=0.0472924, h_min=0.037037, h_max=0.037037 2138049188 00:00:02 rank:0 core:5 info ::step() run Solve 2281955208 00:00:02 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0696258, |r|_2=2.40186, |r|_h=0.0889579, |du|_max=0.0348129, |du|_2=1.20093, |du|_h=0.044479, h_min=0.037037, h_max=0.037037 2271832471 00:00:02 rank:0 core:5 info ::step() run Solve 2412933296 00:00:02 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0652287, |r|_2=2.3224, |r|_h=0.0860146, |du|_max=0.0326143, |du|_2=1.1612, |du|_h=0.0430073, h_min=0.037037, h_max=0.037037 2402813042 00:00:02 rank:0 core:5 info ::step() run Solve 2584636730 00:00:02 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0624106, |r|_2=2.25608, |r|_h=0.0835587, |du|_max=0.0312053, |du|_2=1.12804, |du|_h=0.0417793, h_min=0.037037, h_max=0.037037 2574534239 00:00:02 rank:0 core:5 info ::step() run Solve 2750628075 00:00:02 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0580083, |r|_2=2.18721, |r|_h=0.0810079, |du|_max=0.0290042, |du|_2=1.09361, |du|_h=0.0405039, h_min=0.037037, h_max=0.037037 2740502154 00:00:02 rank:0 core:5 info ::step() run Solve 2892574478 00:00:02 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0553158, |r|_2=2.11437, |r|_h=0.07831, |du|_max=0.0276579, |du|_2=1.05718, |du|_h=0.039155, h_min=0.037037, h_max=0.037037 2882460051 00:00:02 rank:0 core:5 info ::step() run Solve 3039719378 00:00:03 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0515484, |r|_2=2.0397, |r|_h=0.0755444, |du|_max=0.0257742, |du|_2=1.01985, |du|_h=0.0377722, h_min=0.037037, h_max=0.037037 3029711201 00:00:03 rank:0 core:5 info ::step() run Solve 3178120012 00:00:03 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0472249, |r|_2=1.9656, |r|_h=0.0728001, |du|_max=0.0236124, |du|_2=0.982801, |du|_h=0.0364, h_min=0.037037, h_max=0.037037 3168005578 00:00:03 rank:0 core:5 info ::step() run Solve 3311794670 00:00:03 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0426612, |r|_2=1.89395, |r|_h=0.0701463, |du|_max=0.0213306, |du|_2=0.946976, |du|_h=0.0350732, h_min=0.037037, h_max=0.037037 3301659755 00:00:03 rank:0 core:5 info ::step() run Solve 3444043694 00:00:03 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0380504, |r|_2=1.82604, |r|_h=0.0676311, |du|_max=0.0190252, |du|_2=0.91302, |du|_h=0.0338156, h_min=0.037037, h_max=0.037037 3433903135 00:00:03 rank:0 core:5 info ::step() run Solve 3586013676 00:00:03 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.033527, |r|_2=1.76267, |r|_h=0.0652842, |du|_max=0.0167635, |du|_2=0.881336, |du|_h=0.0326421, h_min=0.037037, h_max=0.037037 3575917629 00:00:03 rank:0 core:5 info ::step() run Solve 3743580398 00:00:03 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0304972, |r|_2=1.70423, |r|_h=0.0631197, |du|_max=0.0152486, |du|_2=0.852116, |du|_h=0.0315598, h_min=0.037037, h_max=0.037037 3733487392 00:00:03 rank:0 core:5 info ::step() run Solve 3885694348 00:00:03 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0287192, |r|_2=1.65076, |r|_h=0.0611392, |du|_max=0.0143596, |du|_2=0.82538, |du|_h=0.0305696, h_min=0.037037, h_max=0.037037 3875594033 00:00:03 rank:0 core:5 info ::step() run Solve 4025677559 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0280787, |r|_2=1.60204, |r|_h=0.0593349, |du|_max=0.0140394, |du|_2=0.801021, |du|_h=0.0296675, h_min=0.037037, h_max=0.037037 4015563685 00:00:04 rank:0 core:5 info ::step() run Solve 4157865549 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0279687, |r|_2=1.5577, |r|_h=0.0576924, |du|_max=0.0139843, |du|_2=0.778848, |du|_h=0.0288462, h_min=0.037037, h_max=0.037037 4147744280 00:00:04 rank:0 core:5 info ::step() run Solve 4290486475 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0277578, |r|_2=1.51725, |r|_h=0.0561945, |du|_max=0.0138789, |du|_2=0.758626, |du|_h=0.0280973, h_min=0.037037, h_max=0.037037 4280381857 00:00:04 rank:0 core:5 info ::step() run Solve 4434553452 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0273295, |r|_2=1.48023, |r|_h=0.0548232, |du|_max=0.0136647, |du|_2=0.740114, |du|_h=0.0274116, h_min=0.037037, h_max=0.037037 4424586531 00:00:04 rank:0 core:5 info ::step() run Solve 4570501006 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0267128, |r|_2=1.44616, |r|_h=0.0535616, |du|_max=0.0133564, |du|_2=0.723081, |du|_h=0.0267808, h_min=0.037037, h_max=0.037037 4560405756 00:00:04 rank:0 core:5 info ::step() run Solve 4708055122 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0259379, |r|_2=1.41465, |r|_h=0.0523945, |du|_max=0.012969, |du|_2=0.707326, |du|_h=0.0261973, h_min=0.037037, h_max=0.037037 4697937271 00:00:04 rank:0 core:5 info ::step() run Solve 4845851483 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0250351, |r|_2=1.38535, |r|_h=0.0513093, |du|_max=0.0125176, |du|_2=0.692676, |du|_h=0.0256547, h_min=0.037037, h_max=0.037037 4835732338 00:00:04 rank:0 core:5 info ::step() run Solve 4990943317 00:00:04 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0240339, |r|_2=1.35797, |r|_h=0.0502953, |du|_max=0.0120169, |du|_2=0.678987, |du|_h=0.0251477, h_min=0.037037, h_max=0.037037 4980835996 00:00:04 rank:0 core:5 info ::step() run Solve 5154244384 00:00:05 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.022962, |r|_2=1.33229, |r|_h=0.049344, |du|_max=0.011481, |du|_2=0.666144, |du|_h=0.024672, h_min=0.037037, h_max=0.037037 5144130249 00:00:05 rank:0 core:5 info ::step() run Solve 5283309872 00:00:05 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0218453, |r|_2=1.30811, |r|_h=0.0484484, |du|_max=0.0109227, |du|_2=0.654053, |du|_h=0.0242242, h_min=0.037037, h_max=0.037037 5273206529 00:00:05 rank:0 core:5 info ::step() run Solve 5424925466 00:00:05 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.020707, |r|_2=1.28528, |r|_h=0.0476029, |du|_max=0.0103535, |du|_2=0.642638, |du|_h=0.0238014, h_min=0.037037, h_max=0.037037 5414830020 00:00:05 rank:0 core:5 info ::step() run Solve 5627954213 00:00:05 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0195674, |r|_2=1.26368, |r|_h=0.0468028, |du|_max=0.00978372, |du|_2=0.631838, |du|_h=0.0234014, h_min=0.037037, h_max=0.037037 5617852926 00:00:05 rank:0 core:5 info ::step() run Solve 5788067416 00:00:05 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0189929, |r|_2=1.2432, |r|_h=0.0460443, |du|_max=0.00949647, |du|_2=0.621598, |du|_h=0.0230221, h_min=0.037037, h_max=0.037037 5778122042 00:00:05 rank:0 core:5 info ::step() run Solve 5936045950 00:00:05 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0184136, |r|_2=1.22375, |r|_h=0.045324, |du|_max=0.00920682, |du|_2=0.611874, |du|_h=0.022662, h_min=0.037037, h_max=0.037037 5925933941 00:00:05 rank:0 core:5 info ::step() run Solve 6073320522 00:00:06 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.018357, |r|_2=1.20525, |r|_h=0.044639, |du|_max=0.00917848, |du|_2=0.602627, |du|_h=0.0223195, h_min=0.037037, h_max=0.037037 6063208512 00:00:06 rank:0 core:5 info ::step() run Solve 6207245093 00:00:06 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.018262, |r|_2=1.18764, |r|_h=0.0439867, |du|_max=0.00913102, |du|_2=0.59382, |du|_h=0.0219933, h_min=0.037037, h_max=0.037037 6197127740 00:00:06 rank:0 core:5 info ::step() run Solve 6343347177 00:00:06 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0181102, |r|_2=1.17084, |r|_h=0.0433645, |du|_max=0.00905512, |du|_2=0.58542, |du|_h=0.0216822, h_min=0.037037, h_max=0.037037 6333274251 00:00:06 rank:0 core:5 info ::step() run Solve 6483197509 00:00:06 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0179077, |r|_2=1.15479, |r|_h=0.0427702, |du|_max=0.00895383, |du|_2=0.577397, |du|_h=0.0213851, h_min=0.037037, h_max=0.037037 6473087161 00:00:06 rank:0 core:5 info ::step() run Solve 6617767587 00:00:06 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0176606, |r|_2=1.13944, |r|_h=0.0422016, |du|_max=0.00883032, |du|_2=0.569722, |du|_h=0.0211008, h_min=0.037037, h_max=0.037037 6607651401 00:00:06 rank:0 core:5 info ::step() run Solve 6751519811 00:00:06 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0173756, |r|_2=1.12474, |r|_h=0.0416569, |du|_max=0.00868779, |du|_2=0.562368, |du|_h=0.0208285, h_min=0.037037, h_max=0.037037 6741404030 00:00:06 rank:0 core:5 info ::step() run Solve 6882920993 00:00:06 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0170588, |r|_2=1.11062, |r|_h=0.0411342, |du|_max=0.00852939, |du|_2=0.555312, |du|_h=0.0205671, h_min=0.037037, h_max=0.037037 6872805173 00:00:06 rank:0 core:5 info ::step() run Solve 7017797465 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0167164, |r|_2=1.09706, |r|_h=0.0406318, |du|_max=0.00835818, |du|_2=0.54853, |du|_h=0.0203159, h_min=0.037037, h_max=0.037037 7007681276 00:00:07 rank:0 core:5 info ::step() run Solve 7157091337 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0163541, |r|_2=1.084, |r|_h=0.0401482, |du|_max=0.00817707, |du|_2=0.542001, |du|_h=0.0200741, h_min=0.037037, h_max=0.037037 7146971224 00:00:07 rank:0 core:5 info ::step() run Solve 7288102254 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0159776, |r|_2=1.07141, |r|_h=0.039682, |du|_max=0.00798879, |du|_2=0.535707, |du|_h=0.019841, h_min=0.037037, h_max=0.037037 7277969201 00:00:07 rank:0 core:5 info ::step() run Solve 7426256832 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0155917, |r|_2=1.05926, |r|_h=0.0392319, |du|_max=0.00779584, |du|_2=0.52963, |du|_h=0.0196159, h_min=0.037037, h_max=0.037037 7416130178 00:00:07 rank:0 core:5 info ::step() run Solve 7556665267 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.015201, |r|_2=1.04751, |r|_h=0.0387966, |du|_max=0.00760049, |du|_2=0.523755, |du|_h=0.0193983, h_min=0.037037, h_max=0.037037 7546543771 00:00:07 rank:0 core:5 info ::step() run Solve 7691602125 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0149252, |r|_2=1.03613, |r|_h=0.0383753, |du|_max=0.00746262, |du|_2=0.518066, |du|_h=0.0191876, h_min=0.037037, h_max=0.037037 7681485289 00:00:07 rank:0 core:5 info ::step() run Solve 7827508020 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0147164, |r|_2=1.0251, |r|_h=0.0379668, |du|_max=0.00735821, |du|_2=0.512552, |du|_h=0.0189834, h_min=0.037037, h_max=0.037037 7817385706 00:00:07 rank:0 core:5 info ::step() run Solve 7958803892 00:00:07 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0146735, |r|_2=1.0144, |r|_h=0.0375703, |du|_max=0.00733675, |du|_2=0.5072, |du|_h=0.0187852, h_min=0.037037, h_max=0.037037 7948666189 00:00:07 rank:0 core:5 info ::step() run Solve 8097431666 00:00:08 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0146175, |r|_2=1.004, |r|_h=0.0371851, |du|_max=0.00730874, |du|_2=0.501999, |du|_h=0.0185926, h_min=0.037037, h_max=0.037037 8087307469 00:00:08 rank:0 core:5 info ::step() run Solve 8230154915 00:00:08 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0145438, |r|_2=0.993881, |r|_h=0.0368104, |du|_max=0.00727189, |du|_2=0.49694, |du|_h=0.0184052, h_min=0.037037, h_max=0.037037 8220020831 00:00:08 rank:0 core:5 info ::step() run Solve 8362399345 00:00:08 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0144541, |r|_2=0.98403, |r|_h=0.0364455, |du|_max=0.00722704, |du|_2=0.492015, |du|_h=0.0182228, h_min=0.037037, h_max=0.037037 8352380836 00:00:08 rank:0 core:5 info ::step() run Solve 8496799596 00:00:08 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0143501, |r|_2=0.974428, |r|_h=0.0360899, |du|_max=0.00717506, |du|_2=0.487214, |du|_h=0.018045, h_min=0.037037, h_max=0.037037 8486682755 00:00:08 rank:0 core:5 info ::step() run Solve 8627409075 00:00:08 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0142336, |r|_2=0.965062, |r|_h=0.035743, |du|_max=0.00711679, |du|_2=0.482531, |du|_h=0.0178715, h_min=0.037037, h_max=0.037037 8617278516 00:00:08 rank:0 core:5 info ::step() run Solve 8764216128 00:00:08 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0141062, |r|_2=0.955917, |r|_h=0.0354043, |du|_max=0.00705309, |du|_2=0.477958, |du|_h=0.0177022, h_min=0.037037, h_max=0.037037 8754103019 00:00:08 rank:0 core:5 info ::step() run Solve 8908082327 00:00:08 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0139695, |r|_2=0.946981, |r|_h=0.0350734, |du|_max=0.00698476, |du|_2=0.473491, |du|_h=0.0175367, h_min=0.037037, h_max=0.037037 8897968837 00:00:08 rank:0 core:5 info ::step() run Solve 9053762825 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0138252, |r|_2=0.938243, |r|_h=0.0347497, |du|_max=0.00691259, |du|_2=0.469122, |du|_h=0.0173749, h_min=0.037037, h_max=0.037037 9043652410 00:00:09 rank:0 core:5 info ::step() run Solve 9185255261 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0136746, |r|_2=0.929692, |r|_h=0.034433, |du|_max=0.00683729, |du|_2=0.464846, |du|_h=0.0172165, h_min=0.037037, h_max=0.037037 9175123577 00:00:09 rank:0 core:5 info ::step() run Solve 9316888558 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0135191, |r|_2=0.921318, |r|_h=0.0341229, |du|_max=0.00675956, |du|_2=0.460659, |du|_h=0.0170615, h_min=0.037037, h_max=0.037037 9306762903 00:00:09 rank:0 core:5 info ::step() run Solve 9448530760 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.01336, |r|_2=0.913113, |r|_h=0.033819, |du|_max=0.00668002, |du|_2=0.456557, |du|_h=0.0169095, h_min=0.037037, h_max=0.037037 9438406236 00:00:09 rank:0 core:5 info ::step() run Solve 9579236834 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0131985, |r|_2=0.905068, |r|_h=0.033521, |du|_max=0.00659924, |du|_2=0.452534, |du|_h=0.0167605, h_min=0.037037, h_max=0.037037 9569101788 00:00:09 rank:0 core:5 info ::step() run Solve 9713730045 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0130536, |r|_2=0.897176, |r|_h=0.0332287, |du|_max=0.0065268, |du|_2=0.448588, |du|_h=0.0166144, h_min=0.037037, h_max=0.037037 9703614489 00:00:09 rank:0 core:5 info ::step() run Solve 9845052897 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0129553, |r|_2=0.889428, |r|_h=0.0329418, |du|_max=0.00647763, |du|_2=0.444714, |du|_h=0.0164709, h_min=0.037037, h_max=0.037037 9834926182 00:00:09 rank:0 core:5 info ::step() run Solve 9979967057 00:00:09 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0128952, |r|_2=0.88182, |r|_h=0.03266, |du|_max=0.00644761, |du|_2=0.44091, |du|_h=0.01633, h_min=0.037037, h_max=0.037037 9969853048 00:00:09 rank:0 core:5 info ::step() run Solve 10112527397 00:00:10 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0128495, |r|_2=0.874344, |r|_h=0.0323831, |du|_max=0.00642475, |du|_2=0.437172, |du|_h=0.0161915, h_min=0.037037, h_max=0.037037 10102415772 00:00:10 rank:0 core:5 info ::step() run Solve 10246885413 00:00:10 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0127979, |r|_2=0.866994, |r|_h=0.0321109, |du|_max=0.00639894, |du|_2=0.433497, |du|_h=0.0160555, h_min=0.037037, h_max=0.037037 10236769205 00:00:10 rank:0 core:5 info ::step() run Solve 10379079236 00:00:10 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0127409, |r|_2=0.859767, |r|_h=0.0318432, |du|_max=0.00637043, |du|_2=0.429883, |du|_h=0.0159216, h_min=0.037037, h_max=0.037037 10368956080 00:00:10 rank:0 core:5 info ::step() run Solve 10512955132 00:00:10 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.012679, |r|_2=0.852656, |r|_h=0.0315799, |du|_max=0.00633948, |du|_2=0.426328, |du|_h=0.0157899, h_min=0.037037, h_max=0.037037 10502829347 00:00:10 rank:0 core:5 info ::step() run Solve 10649050895 00:00:10 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0126127, |r|_2=0.845657, |r|_h=0.0313206, |du|_max=0.00630633, |du|_2=0.422829, |du|_h=0.0156603, h_min=0.037037, h_max=0.037037 10638933619 00:00:10 rank:0 core:5 info ::step() run Solve 10779778339 00:00:10 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0125424, |r|_2=0.838766, |r|_h=0.0310654, |du|_max=0.00627122, |du|_2=0.419383, |du|_h=0.0155327, h_min=0.037037, h_max=0.037037 10769664193 00:00:10 rank:0 core:5 info ::step() run Solve 10911409058 00:00:10 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0124688, |r|_2=0.831979, |r|_h=0.030814, |du|_max=0.00623439, |du|_2=0.415989, |du|_h=0.015407, h_min=0.037037, h_max=0.037037 10901399404 00:00:10 rank:0 core:5 info ::step() run Solve 11044672272 00:00:11 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0123921, |r|_2=0.825291, |r|_h=0.0305663, |du|_max=0.00619607, |du|_2=0.412646, |du|_h=0.0152832, h_min=0.037037, h_max=0.037037 11034571795 00:00:11 rank:0 core:5 info ::step() run Solve 11177079679 00:00:11 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0123129, |r|_2=0.8187, |r|_h=0.0303222, |du|_max=0.00615644, |du|_2=0.40935, |du|_h=0.0151611, h_min=0.037037, h_max=0.037037 11166967153 00:00:11 rank:0 core:5 info ::step() run Solve 11308097803 00:00:11 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0122315, |r|_2=0.812202, |r|_h=0.0300816, |du|_max=0.00611573, |du|_2=0.406101, |du|_h=0.0150408, h_min=0.037037, h_max=0.037037 11297968395 00:00:11 rank:0 core:5 info ::step() run Solve 11439164179 00:00:11 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0121482, |r|_2=0.805794, |r|_h=0.0298442, |du|_max=0.00607409, |du|_2=0.402897, |du|_h=0.0149221, h_min=0.037037, h_max=0.037037 11429026429 00:00:11 rank:0 core:5 info ::step() run Solve 11571150240 00:00:11 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0120634, |r|_2=0.799473, |r|_h=0.0296101, |du|_max=0.00603171, |du|_2=0.399736, |du|_h=0.0148051, h_min=0.037037, h_max=0.037037 11561017870 00:00:11 rank:0 core:5 info ::step() run Solve 11724215178 00:00:11 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0119775, |r|_2=0.793236, |r|_h=0.0293791, |du|_max=0.00598873, |du|_2=0.396618, |du|_h=0.0146896, h_min=0.037037, h_max=0.037037 11714100772 00:00:11 rank:0 core:5 info ::step() run Solve 11855163171 00:00:11 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0118906, |r|_2=0.787081, |r|_h=0.0291511, |du|_max=0.00594529, |du|_2=0.39354, |du|_h=0.0145756, h_min=0.037037, h_max=0.037037 11845056858 00:00:11 rank:0 core:5 info ::step() run Solve 12002692224 00:00:12 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.011803, |r|_2=0.781005, |r|_h=0.0289261, |du|_max=0.00590152, |du|_2=0.390502, |du|_h=0.0144631, h_min=0.037037, h_max=0.037037 11992580720 00:00:11 rank:0 core:5 info ::step() run Solve 12155286643 00:00:12 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0117151, |r|_2=0.775006, |r|_h=0.0287039, |du|_max=0.00585753, |du|_2=0.387503, |du|_h=0.014352, h_min=0.037037, h_max=0.037037 12145312118 00:00:12 rank:0 core:5 info ::step() run Solve 12299457334 00:00:12 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0116268, |r|_2=0.769081, |r|_h=0.0284845, |du|_max=0.00581341, |du|_2=0.384541, |du|_h=0.0142422, h_min=0.037037, h_max=0.037037 12289352938 00:00:12 rank:0 core:5 info ::step() run Solve 12440748914 00:00:12 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0115385, |r|_2=0.763229, |r|_h=0.0282677, |du|_max=0.00576925, |du|_2=0.381615, |du|_h=0.0141339, h_min=0.037037, h_max=0.037037 12430634252 00:00:12 rank:0 core:5 info ::step() run Solve 12602709838 00:00:12 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0114503, |r|_2=0.757448, |r|_h=0.0280536, |du|_max=0.00572513, |du|_2=0.378724, |du|_h=0.0140268, h_min=0.037037, h_max=0.037037 12592596715 00:00:12 rank:0 core:5 info ::step() run Solve 12747058979 00:00:12 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0113622, |r|_2=0.751735, |r|_h=0.0278421, |du|_max=0.0056811, |du|_2=0.375868, |du|_h=0.013921, h_min=0.037037, h_max=0.037037 12736926464 00:00:12 rank:0 core:5 info ::step() run Solve 12881437188 00:00:12 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0112745, |r|_2=0.74609, |r|_h=0.027633, |du|_max=0.00563724, |du|_2=0.373045, |du|_h=0.0138165, h_min=0.037037, h_max=0.037037 12871329123 00:00:12 rank:0 core:5 info ::step() run Solve 13017441445 00:00:13 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.011198, |r|_2=0.740509, |r|_h=0.0274263, |du|_max=0.00559902, |du|_2=0.370255, |du|_h=0.0137131, h_min=0.037037, h_max=0.037037 13007338711 00:00:13 rank:0 core:5 info ::step() run Solve 13154232983 00:00:13 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0111281, |r|_2=0.734993, |r|_h=0.0272219, |du|_max=0.00556405, |du|_2=0.367496, |du|_h=0.013611, h_min=0.037037, h_max=0.037037 13144119718 00:00:13 rank:0 core:5 info ::step() run Solve 13340894439 00:00:13 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0110578, |r|_2=0.729538, |r|_h=0.0270199, |du|_max=0.00552889, |du|_2=0.364769, |du|_h=0.01351, h_min=0.037037, h_max=0.037037 13330778119 00:00:13 rank:0 core:5 info ::step() run Solve 13484550455 00:00:13 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0109872, |r|_2=0.724144, |r|_h=0.0268201, |du|_max=0.00549359, |du|_2=0.362072, |du|_h=0.0134101, h_min=0.037037, h_max=0.037037 13474438483 00:00:13 rank:0 core:5 info ::step() run Solve 13616745797 00:00:13 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0109294, |r|_2=0.718809, |r|_h=0.0266226, |du|_max=0.0054647, |du|_2=0.359405, |du|_h=0.0133113, h_min=0.037037, h_max=0.037037 13606726260 00:00:13 rank:0 core:5 info ::step() run Solve 13747363226 00:00:13 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0108731, |r|_2=0.713532, |r|_h=0.0264271, |du|_max=0.00543654, |du|_2=0.356766, |du|_h=0.0132136, h_min=0.037037, h_max=0.037037 13737233380 00:00:13 rank:0 core:5 info ::step() run Solve 13883340284 00:00:13 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.010816, |r|_2=0.708312, |r|_h=0.0262338, |du|_max=0.00540801, |du|_2=0.354156, |du|_h=0.0131169, h_min=0.037037, h_max=0.037037 13873223939 00:00:13 rank:0 core:5 info ::step() run Solve 14013873711 00:00:14 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0107583, |r|_2=0.703147, |r|_h=0.0260425, |du|_max=0.00537917, |du|_2=0.351574, |du|_h=0.0130212, h_min=0.037037, h_max=0.037037 14003758246 00:00:14 rank:0 core:5 info ::step() run Solve 14154689984 00:00:14 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0107001, |r|_2=0.698037, |r|_h=0.0258532, |du|_max=0.00535005, |du|_2=0.349018, |du|_h=0.0129266, h_min=0.037037, h_max=0.037037 14144570074 00:00:14 rank:0 core:5 info ::step() run Solve 14292266126 00:00:14 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0106414, |r|_2=0.69298, |r|_h=0.0256659, |du|_max=0.0053207, |du|_2=0.34649, |du|_h=0.012833, h_min=0.037037, h_max=0.037037 14282179602 00:00:14 rank:0 core:5 info ::step() run Solve 14443125918 00:00:14 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0105823, |r|_2=0.687974, |r|_h=0.0254805, |du|_max=0.00529114, |du|_2=0.343987, |du|_h=0.0127403, h_min=0.037037, h_max=0.037037 14433016568 00:00:14 rank:0 core:5 info ::step() run Solve 14614740928 00:00:14 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0105228, |r|_2=0.68302, |r|_h=0.025297, |du|_max=0.00526142, |du|_2=0.34151, |du|_h=0.0126485, h_min=0.037037, h_max=0.037037 14604635514 00:00:14 rank:0 core:5 info ::step() run Solve 14750983124 00:00:14 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0104631, |r|_2=0.678116, |r|_h=0.0251154, |du|_max=0.00523157, |du|_2=0.339058, |du|_h=0.0125577, h_min=0.037037, h_max=0.037037 14740865191 00:00:14 rank:0 core:5 info ::step() run Solve 14883577184 00:00:14 rank:0 core:5 info tutorials::mghype::examples::AbstractDGHigherOrderPoisson::endMeshSweep() DGHigherOrderPoisson: |r|_max=0.0104032, |r|_2=0.673261, |r|_h=0.0249356, |du|_max=0.0052016, |du|_2=0.33663, |du|_h=0.0124678, h_min=0.037037, h_max=0.037037 14873583513 00:00:14 rank:0 core:5 info ::step() run Plot 15129955760 00:00:15 rank:0 core:5 info ::::selectNextAlgorithmicStep() terminating after 100 sweeps 15129993030 00:00:15 rank:0 core:5 info ::::main() terminated successfully 15130006848 00:00:15 rank:0 core:5 info ::::main() grid construction: 0.459695s (avg=0.0383079,#measurements=12,max=0.0595993(value #5),min=0.00153132(value #1),+55.5796%,-96.0026%,std-deviation=0.0239082) 15130056878 00:00:15 rank:0 core:5 info ::::main() init: 0.0589864s (avg=0.0589864,#measurements=1,max=0.0589864(value #0),min=0.0589864(value #0),+0%,-0%,std-deviation=0) 15130086218 00:00:15 rank:0 core:5 info ::::main() solve: 14.0105s (avg=0.140105,#measurements=100,max=0.202994(value #32),min=0.102672(value #0),+44.8866%,-26.7182%,std-deviation=0.0128524) 15130119791 00:00:15 rank:0 core:5 info ::::main() plotting: 0.587246s (avg=0.293623,#measurements=2,max=0.338024(value #0),min=0.249222(value #1),+15.1217%,-15.1217%,std-deviation=0.0444007)
In this notebook, we convert the outcome in-situ and display it. Obviously, you can do all of this on the command line as well:
Peano 4 (C) www.peano-framework.org add fine grid filter add shrink patches filter ================================== Process snapshot 0 ================================== Reading DGHigherOrderPoisson.rhs-0.peano-patch-file as subdomain 0 Error: was not able to read DGHigherOrderPoisson.rhs-0.peano-patch-file: operands could not be broadcast together with shapes (72,) (0,) in line apply filter Filter: ShrinkPatches, run on individual pieces of data=True, run on concatenated data=False, verbose=False to snapshot Total number of patches: 729 Parsing complete. Convert set of 729 patches with 1 unknowns per 6^2 patch/cell into VTK data structures apply filter Filter: ExtractFineGrid, run on individual pieces of data=False, run on concatenated data=True, verbose=False ... 10% ... 20% ... 30% ... 40% ... 50% ... 60% ... 70% ... 80% ... 90% Timestamp for current snapshot: 0.0 Wrote file ./DGHigherOrderPoisson.rhs.peano-patch-file-0.vtu ================================== Process snapshot 1 ================================== Reading DGHigherOrderPoisson.rhs-1.peano-patch-file as subdomain 0 Error: was not able to read DGHigherOrderPoisson.rhs-1.peano-patch-file: operands could not be broadcast together with shapes (72,) (0,) in line apply filter Filter: ShrinkPatches, run on individual pieces of data=True, run on concatenated data=False, verbose=False to snapshot Total number of patches: 729 Parsing complete. Convert set of 729 patches with 1 unknowns per 6^2 patch/cell into VTK data structures apply filter Filter: ExtractFineGrid, run on individual pieces of data=False, run on concatenated data=True, verbose=False ... 10% ... 20% ... 30% ... 40% ... 50% ... 60% ... 70% ... 80% ... 90% Timestamp for current snapshot: 1.0 Wrote file ./DGHigherOrderPoisson.rhs.peano-patch-file-1.vtu ================================== Process snapshot 2 ================================== Timestamp for current snapshot: 1.0 dumped 2 datasets Peano 4 (C) www.peano-framework.org add fine grid filter add shrink patches filter ================================== Process snapshot 0 ================================== Reading DGHigherOrderPoisson.solution-0.peano-patch-file as subdomain 0 Error: was not able to read DGHigherOrderPoisson.solution-0.peano-patch-file: operands could not be broadcast together with shapes (72,) (0,) in line apply filter Filter: ShrinkPatches, run on individual pieces of data=True, run on concatenated data=False, verbose=False to snapshot Total number of patches: 729 Parsing complete. Convert set of 729 patches with 1 unknowns per 6^2 patch/cell into VTK data structures apply filter Filter: ExtractFineGrid, run on individual pieces of data=False, run on concatenated data=True, verbose=False ... 10% ... 20% ... 30% ... 40% ... 50% ... 60% ... 70% ... 80% ... 90% Timestamp for current snapshot: 0.0 Wrote file ./DGHigherOrderPoisson.solution.peano-patch-file-0.vtu ================================== Process snapshot 1 ================================== Reading DGHigherOrderPoisson.solution-1.peano-patch-file as subdomain 0 Error: was not able to read DGHigherOrderPoisson.solution-1.peano-patch-file: operands could not be broadcast together with shapes (72,) (0,) in line apply filter Filter: ShrinkPatches, run on individual pieces of data=True, run on concatenated data=False, verbose=False to snapshot Total number of patches: 729 Parsing complete. Convert set of 729 patches with 1 unknowns per 6^2 patch/cell into VTK data structures apply filter Filter: ExtractFineGrid, run on individual pieces of data=False, run on concatenated data=True, verbose=False ... 10% ... 20% ... 30% ... 40% ... 50% ... 60% ... 70% ... 80% ... 90% Timestamp for current snapshot: 1.0 Wrote file ./DGHigherOrderPoisson.solution.peano-patch-file-1.vtu ================================== Process snapshot 2 ================================== Timestamp for current snapshot: 1.0 dumped 2 datasets 0
The outcome is not surprising compared to the previous detail. Just one thing to note: We have used the shrink option for the conversion above. This option slightly downscales each individual patch, and it allows us to illustrate more clearly that we are indeed working with a DG scheme as opposed to a continuous approach as we have used it before:
Defaulting to user installation because normal site-packages is not writeable Requirement already satisfied: pyvista[all] in /home/tobias/.local/lib/python3.12/site-packages (0.44.1) Requirement already satisfied: matplotlib>=3.0.1 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (3.9.2) Requirement already satisfied: numpy>=1.21.0 in /usr/lib64/python3.12/site-packages (from pyvista[all]) (2.1.1) Requirement already satisfied: pillow in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (10.4.0) Requirement already satisfied: pooch in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (1.8.2) Requirement already satisfied: scooby>=0.5.1 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (0.10.0) Requirement already satisfied: vtk in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (9.3.1) Requirement already satisfied: typing-extensions in /usr/lib/python3.12/site-packages (from pyvista[all]) (4.12.2) Requirement already satisfied: contourpy>=1.0.1 in /home/tobias/.local/lib/python3.12/site-packages (from matplotlib>=3.0.1->pyvista[all]) (1.3.0) Requirement already satisfied: cycler>=0.10 in /home/tobias/.local/lib/python3.12/site-packages (from matplotlib>=3.0.1->pyvista[all]) (0.12.1) Requirement already satisfied: fonttools>=4.22.0 in /home/tobias/.local/lib/python3.12/site-packages (from matplotlib>=3.0.1->pyvista[all]) (4.54.1) Requirement already satisfied: kiwisolver>=1.3.1 in /home/tobias/.local/lib/python3.12/site-packages (from matplotlib>=3.0.1->pyvista[all]) (1.4.7) Requirement already satisfied: packaging>=20.0 in /usr/lib/python3.12/site-packages (from matplotlib>=3.0.1->pyvista[all]) (24.1) Requirement already satisfied: pyparsing>=2.3.1 in /home/tobias/.local/lib/python3.12/site-packages (from matplotlib>=3.0.1->pyvista[all]) (3.1.4) Requirement already satisfied: python-dateutil>=2.7 in /usr/lib/python3.12/site-packages (from matplotlib>=3.0.1->pyvista[all]) (2.9.0.post0) Requirement already satisfied: platformdirs>=2.5.0 in /usr/lib/python3.12/site-packages (from pooch->pyvista[all]) (4.2.2) Requirement already satisfied: requests>=2.19.0 in /usr/lib/python3.12/site-packages (from pooch->pyvista[all]) (2.32.3) Requirement already satisfied: cmocean in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (4.0.3) Requirement already satisfied: colorcet in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (3.1.0) Requirement already satisfied: imageio in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (2.35.1) Requirement already satisfied: meshio>=5.2 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (5.3.5) Requirement already satisfied: ipywidgets in /usr/lib/python3.12/site-packages (from pyvista[all]) (8.1.5) Requirement already satisfied: jupyter-server-proxy in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (4.4.0) Requirement already satisfied: nest-asyncio in /usr/lib/python3.12/site-packages (from pyvista[all]) (1.6.0) Requirement already satisfied: trame>=2.5.2 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (3.6.5) Requirement already satisfied: trame-client>=2.12.7 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (3.3.2) Requirement already satisfied: trame-server>=2.11.7 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (3.2.3) Requirement already satisfied: trame-vtk>=2.5.8 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (2.8.10) Requirement already satisfied: trame-vuetify>=2.3.1 in /home/tobias/.local/lib/python3.12/site-packages (from pyvista[all]) (2.7.1) Requirement already satisfied: rich in /usr/lib/python3.12/site-packages (from meshio>=5.2->pyvista[all]) (13.7.1) Requirement already satisfied: six>=1.5 in /usr/lib/python3.12/site-packages (from python-dateutil>=2.7->matplotlib>=3.0.1->pyvista[all]) (1.16.0) Requirement already satisfied: charset_normalizer<4,>=2 in /usr/lib/python3.12/site-packages (from requests>=2.19.0->pooch->pyvista[all]) (3.3.2) Requirement already satisfied: idna<4,>=2.5 in /usr/lib/python3.12/site-packages (from requests>=2.19.0->pooch->pyvista[all]) (3.8) Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/lib/python3.12/site-packages (from requests>=2.19.0->pooch->pyvista[all]) (2.2.3) Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3.12/site-packages (from requests>=2.19.0->pooch->pyvista[all]) (2024.7.4) Requirement already satisfied: wslink>=2.1.3 in /home/tobias/.local/lib/python3.12/site-packages (from trame>=2.5.2->pyvista[all]) (2.2.1) Requirement already satisfied: more-itertools in /home/tobias/.local/lib/python3.12/site-packages (from trame-server>=2.11.7->pyvista[all]) (10.5.0) Requirement already satisfied: comm>=0.1.3 in /usr/lib/python3.12/site-packages (from ipywidgets->pyvista[all]) (0.2.2) Requirement already satisfied: ipython>=6.1.0 in /usr/lib/python3.12/site-packages (from ipywidgets->pyvista[all]) (8.27.0) Requirement already satisfied: traitlets>=4.3.1 in /usr/lib/python3.12/site-packages (from ipywidgets->pyvista[all]) (5.14.3) Requirement already satisfied: widgetsnbextension~=4.0.12 in /usr/lib/python3.12/site-packages (from ipywidgets->pyvista[all]) (4.0.13) Requirement already satisfied: jupyterlab-widgets~=3.0.12 in /usr/lib/python3.12/site-packages (from ipywidgets->pyvista[all]) (3.0.13) Requirement already satisfied: aiohttp in /home/tobias/.local/lib/python3.12/site-packages (from jupyter-server-proxy->pyvista[all]) (3.10.10) Requirement already satisfied: jupyter-server>=1.24.0 in /usr/lib/python3.12/site-packages (from jupyter-server-proxy->pyvista[all]) (2.14.2) Requirement already satisfied: simpervisor>=1.0.0 in /home/tobias/.local/lib/python3.12/site-packages (from jupyter-server-proxy->pyvista[all]) (1.0.0) Requirement already satisfied: tornado>=6.1.0 in /usr/lib64/python3.12/site-packages (from jupyter-server-proxy->pyvista[all]) (6.4.1) Requirement already satisfied: decorator in /usr/lib/python3.12/site-packages (from ipython>=6.1.0->ipywidgets->pyvista[all]) (5.1.1) Requirement already satisfied: jedi>=0.16 in /usr/lib/python3.12/site-packages (from ipython>=6.1.0->ipywidgets->pyvista[all]) (0.19.1) Requirement already satisfied: matplotlib-inline in /usr/lib/python3.12/site-packages (from ipython>=6.1.0->ipywidgets->pyvista[all]) (0.1.7) Requirement already satisfied: prompt-toolkit<3.1.0,>=3.0.41 in /usr/lib/python3.12/site-packages (from ipython>=6.1.0->ipywidgets->pyvista[all]) (3.0.47) Requirement already satisfied: pygments>=2.4.0 in /usr/lib/python3.12/site-packages (from ipython>=6.1.0->ipywidgets->pyvista[all]) (2.18.0) Requirement already satisfied: stack-data in /usr/lib/python3.12/site-packages (from ipython>=6.1.0->ipywidgets->pyvista[all]) (0.6.3) Requirement already satisfied: pexpect>4.3 in /usr/lib/python3.12/site-packages (from ipython>=6.1.0->ipywidgets->pyvista[all]) (4.9.0) Requirement already satisfied: anyio>=3.1.0 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (4.6.0) Requirement already satisfied: argon2-cffi>=21.1 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (23.1.0) Requirement already satisfied: jinja2>=3.0.3 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (3.1.4) Requirement already satisfied: jupyter-client>=7.4.4 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (8.6.2) Requirement already satisfied: jupyter-core!=5.0.*,>=4.12 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (5.7.2) Requirement already satisfied: jupyter-events>=0.9.0 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.10.0) Requirement already satisfied: jupyter-server-terminals>=0.4.4 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.5.3) Requirement already satisfied: nbconvert>=6.4.4 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (7.16.4) Requirement already satisfied: nbformat>=5.3.0 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (5.10.4) Requirement already satisfied: overrides>=5.0 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (7.7.0) Requirement already satisfied: prometheus-client>=0.9 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.20.0) Requirement already satisfied: pyzmq>=24 in /usr/lib64/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (25.1.2) Requirement already satisfied: send2trash>=1.8.2 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.8.2) Requirement already satisfied: terminado>=0.8.3 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.18.1) Requirement already satisfied: websocket-client>=1.7 in /usr/lib/python3.12/site-packages (from jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.7.0) Requirement already satisfied: msgpack<2,>=1 in /home/tobias/.local/lib/python3.12/site-packages (from wslink>=2.1.3->trame>=2.5.2->pyvista[all]) (1.1.0) Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /home/tobias/.local/lib/python3.12/site-packages (from aiohttp->jupyter-server-proxy->pyvista[all]) (2.4.3) Requirement already satisfied: aiosignal>=1.1.2 in /home/tobias/.local/lib/python3.12/site-packages (from aiohttp->jupyter-server-proxy->pyvista[all]) (1.3.1) Requirement already satisfied: attrs>=17.3.0 in /usr/lib/python3.12/site-packages (from aiohttp->jupyter-server-proxy->pyvista[all]) (23.2.0) Requirement already satisfied: frozenlist>=1.1.1 in /home/tobias/.local/lib/python3.12/site-packages (from aiohttp->jupyter-server-proxy->pyvista[all]) (1.4.1) Requirement already satisfied: multidict<7.0,>=4.5 in /home/tobias/.local/lib/python3.12/site-packages (from aiohttp->jupyter-server-proxy->pyvista[all]) (6.1.0) Requirement already satisfied: yarl<2.0,>=1.12.0 in /home/tobias/.local/lib/python3.12/site-packages (from aiohttp->jupyter-server-proxy->pyvista[all]) (1.15.1) Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/lib/python3.12/site-packages (from rich->meshio>=5.2->pyvista[all]) (3.0.0) Requirement already satisfied: sniffio>=1.1 in /usr/lib/python3.12/site-packages (from anyio>=3.1.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.3.1) Requirement already satisfied: argon2-cffi-bindings in /usr/lib64/python3.12/site-packages (from argon2-cffi>=21.1->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (21.2.0) Requirement already satisfied: parso<0.9.0,>=0.8.4 in /usr/lib/python3.12/site-packages (from jedi>=0.16->ipython>=6.1.0->ipywidgets->pyvista[all]) (0.8.4) Requirement already satisfied: MarkupSafe>=2.0 in /usr/lib64/python3.12/site-packages (from jinja2>=3.0.3->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (2.1.5) Requirement already satisfied: jsonschema>=4.18.0 in /usr/lib/python3.12/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (4.23.0) Requirement already satisfied: python-json-logger>=2.0.4 in /usr/lib/python3.12/site-packages (from jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (2.0.7) Requirement already satisfied: pyyaml>=5.3 in /usr/lib64/python3.12/site-packages (from jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (6.0.2) Requirement already satisfied: referencing in /usr/lib/python3.12/site-packages (from jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.35.1) Requirement already satisfied: rfc3339-validator in /usr/lib/python3.12/site-packages (from jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.1.4) Requirement already satisfied: rfc3986-validator>=0.1.1 in /usr/lib/python3.12/site-packages (from jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.1.1) Requirement already satisfied: mdurl~=0.1 in /usr/lib/python3.12/site-packages (from markdown-it-py>=2.2.0->rich->meshio>=5.2->pyvista[all]) (0.1.2) Requirement already satisfied: beautifulsoup4 in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (4.12.3) Requirement already satisfied: bleach!=5.0.0 in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (6.1.0) Requirement already satisfied: defusedxml in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.7.1) Requirement already satisfied: jupyterlab-pygments in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.3.0) Requirement already satisfied: mistune<4,>=2.0.3 in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (3.0.2) Requirement already satisfied: nbclient>=0.5.0 in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.10.0) Requirement already satisfied: pandocfilters>=1.4.1 in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.5.1) Requirement already satisfied: tinycss2 in /usr/lib/python3.12/site-packages (from nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.3.0) Requirement already satisfied: fastjsonschema>=2.15 in /usr/lib/python3.12/site-packages (from nbformat>=5.3.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (2.19.1) Requirement already satisfied: ptyprocess>=0.5 in /usr/lib/python3.12/site-packages (from pexpect>4.3->ipython>=6.1.0->ipywidgets->pyvista[all]) (0.7.0) Requirement already satisfied: wcwidth in /usr/lib/python3.12/site-packages (from prompt-toolkit<3.1.0,>=3.0.41->ipython>=6.1.0->ipywidgets->pyvista[all]) (0.2.13) Requirement already satisfied: propcache>=0.2.0 in /home/tobias/.local/lib/python3.12/site-packages (from yarl<2.0,>=1.12.0->aiohttp->jupyter-server-proxy->pyvista[all]) (0.2.0) Requirement already satisfied: executing>=1.2.0 in /usr/lib/python3.12/site-packages (from stack-data->ipython>=6.1.0->ipywidgets->pyvista[all]) (2.1.0) Requirement already satisfied: asttokens>=2.1.0 in /usr/lib/python3.12/site-packages (from stack-data->ipython>=6.1.0->ipywidgets->pyvista[all]) (2.4.1) Requirement already satisfied: pure_eval in /usr/lib/python3.12/site-packages (from stack-data->ipython>=6.1.0->ipywidgets->pyvista[all]) (0.2.3) Requirement already satisfied: webencodings in /usr/lib/python3.12/site-packages (from bleach!=5.0.0->nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.5.1) Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/lib/python3.12/site-packages (from jsonschema>=4.18.0->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (2023.12.1) Requirement already satisfied: rpds-py>=0.7.1 in /usr/lib64/python3.12/site-packages (from jsonschema>=4.18.0->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (0.7.1) Requirement already satisfied: fqdn in /usr/lib/python3.12/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.5.1) Requirement already satisfied: isoduration in /usr/lib/python3.12/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (20.11.0) Requirement already satisfied: jsonpointer>1.13 in /usr/lib/python3.12/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (2.4) Requirement already satisfied: uri-template in /usr/lib/python3.12/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.3.0) Requirement already satisfied: webcolors>=24.6.0 in /usr/lib/python3.12/site-packages (from jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (24.8.0) Requirement already satisfied: cffi>=1.0.1 in /usr/lib64/python3.12/site-packages (from argon2-cffi-bindings->argon2-cffi>=21.1->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.17.1) Requirement already satisfied: soupsieve>1.2 in /usr/lib/python3.12/site-packages (from beautifulsoup4->nbconvert>=6.4.4->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (2.5) Requirement already satisfied: pycparser in /usr/lib/python3.12/site-packages (from cffi>=1.0.1->argon2-cffi-bindings->argon2-cffi>=21.1->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (2.22) Requirement already satisfied: arrow>=0.15.0 in /usr/lib/python3.12/site-packages (from isoduration->jsonschema[format-nongpl]>=4.18.0->jupyter-events>=0.9.0->jupyter-server>=1.24.0->jupyter-server-proxy->pyvista[all]) (1.3.0) ␛[1m[␛[0m␛[34;49mnotice␛[0m␛[1;39;49m]␛[0m␛[39;49m A new release of pip is available: ␛[0m␛[31;49m24.2␛[0m␛[39;49m -> ␛[0m␛[32;49m24.3.1␛[0m ␛[1m[␛[0m␛[34;49mnotice␛[0m␛[1;39;49m]␛[0m␛[39;49m To update, run: ␛[0m␛[32;49mpip install --upgrade pip␛[0m
Widget(value='<iframe src="http://localhost:34845/index.html?ui=P_0x7f1efe051550_0&reconnect=auto" class="pyvi…
Widget(value='<iframe src="http://localhost:34845/index.html?ui=P_0x7f1ef200fe00_1&reconnect=auto" class="pyvi…
And once again the convergence behaviour:
<>:3: SyntaxWarning: invalid escape sequence '\d' <>:3: SyntaxWarning: invalid escape sequence '\d' /tmp/ipykernel_73242/420960741.py:3: SyntaxWarning: invalid escape sequence '\d' plt.plot(du_2, label='$|\delta u|_2$', marker='>')