From: Vladimir Yushutin Date: Fri, 21 Jun 2024 18:49:58 +0000 (-0400) Subject: testing of Step-40 to Step-49 X-Git-Tag: v9.6.0-rc1~100^2~1 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8f326035ea9743be28f42ba70d3a7c77802370e5;p=dealii.git testing of Step-40 to Step-49 --- diff --git a/tests/examples/step-40.diff b/tests/examples/step-40.diff index eec0cb9c93..db441af4f5 100644 --- a/tests/examples/step-40.diff +++ b/tests/examples/step-40.diff @@ -1,6 +1,6 @@ 20a21 > #include "../example_test.h" -503,509c504,511 +510,516c511,518 < solver.solve(system_matrix, < completely_distributed_solution, < system_rhs, @@ -17,11 +17,15 @@ > solver_control.last_step(), > 8, > 15); -634c636 +643c645 < const unsigned int n_cycles = 8; --- > const unsigned int n_cycles = 3; -662c664 +659c661 +< output_results(cycle); +--- +> // output_results(cycle); +661c663 < computing_timer.print_summary(); --- > // computing_timer.print_summary(); diff --git a/tests/examples/step-41.diff b/tests/examples/step-41.diff new file mode 100644 index 0000000000..474999c523 --- /dev/null +++ b/tests/examples/step-41.diff @@ -0,0 +1,30 @@ +29c29 +< +--- +> #include "../example_test.h" +523c523,527 +< solver.solve(system_matrix, solution, system_rhs, precondition); +--- +> check_solver_within_range(std::cout, +> solver.solve(system_matrix, solution, system_rhs, precondition), +> reduction_control.last_step(), +> 3, 7); +> // solver.solve(system_matrix, solution, system_rhs, precondition); +526,529c530,533 +< std::cout << " Error: " << reduction_control.initial_value() << " -> " +< << reduction_control.last_value() << " in " +< << reduction_control.last_step() << " CG iterations." +< << std::endl; +--- +> // std::cout << " Error: " << reduction_control.initial_value() << " -> " +> // << reduction_control.last_value() << " in " +> // << reduction_control.last_step() << " CG iterations." +> // << std::endl; +588c592 +< for (unsigned int iteration = 0; iteration <= solution.size(); ++iteration) +--- +> for (unsigned int iteration = 0; iteration <= 5; ++iteration) +602c606 +< output_results(iteration); +--- +> // output_results(iteration); diff --git a/tests/examples/step-41.mpirun=1.with_trilinos=true.output b/tests/examples/step-41.mpirun=1.with_trilinos=true.output new file mode 100644 index 0000000000..d2b6af72a6 --- /dev/null +++ b/tests/examples/step-41.mpirun=1.with_trilinos=true.output @@ -0,0 +1,52 @@ +Number of active cells: 16384 +Total number of cells: 21845 +Number of degrees of freedom: 16641 + +Newton iteration 0 + Assembling system... + Solving system... +Solver stopped within 3 - 7 iterations + Updating active set... + Size of active set: 13164 + Residual of the non-contact part of the system: 9.42452e-05 + +Newton iteration 1 + Assembling system... + Solving system... +Solver stopped within 3 - 7 iterations + Updating active set... + Size of active set: 12363 + Residual of the non-contact part of the system: 3.9373 + +Newton iteration 2 + Assembling system... + Solving system... +Solver stopped within 3 - 7 iterations + Updating active set... + Size of active set: 11584 + Residual of the non-contact part of the system: 2.11652 + +Newton iteration 3 + Assembling system... + Solving system... +Solver stopped within 3 - 7 iterations + Updating active set... + Size of active set: 10827 + Residual of the non-contact part of the system: 1.46846 + +Newton iteration 4 + Assembling system... + Solving system... +Solver stopped within 3 - 7 iterations + Updating active set... + Size of active set: 10092 + Residual of the non-contact part of the system: 1.11513 + +Newton iteration 5 + Assembling system... + Solving system... +Solver stopped within 3 - 7 iterations + Updating active set... + Size of active set: 9381 + Residual of the non-contact part of the system: 0.885955 + diff --git a/tests/examples/step-42.diff b/tests/examples/step-42.diff new file mode 100644 index 0000000000..0586e6f798 --- /dev/null +++ b/tests/examples/step-42.diff @@ -0,0 +1,72 @@ +30c30 +< +--- +> #include "../example_test.h" +1654,1662c1654,1668 +< solver.solve(newton_matrix, +< distributed_solution, +< newton_rhs, +< preconditioner); +< +< pcout << " Error: " << solver_control.initial_value() << " -> " +< << solver_control.last_value() << " in " +< << solver_control.last_step() << " Bicgstab iterations." +< << std::endl; +--- +> // solver.solve(newton_matrix, +> // distributed_solution, +> // newton_rhs, +> // preconditioner); +> check_solver_within_range(pcout, +> solver.solve(newton_matrix, +> distributed_solution, +> newton_rhs, +> preconditioner), +> solver_control.last_step(), +> 6, 8); +> // pcout << " Error: " << solver_control.initial_value() << " -> " +> // << solver_control.last_value() << " in " +> // << solver_control.last_step() << " Bicgstab iterations." +> // << std::endl; +2126c2132 +< for (; current_refinement_cycle < n_refinement_cycles; +--- +> for (; current_refinement_cycle < 1; +2149c2155 +< output_results(current_refinement_cycle); +--- +> // output_results(current_refinement_cycle); +2151,2152c2157,2158 +< computing_timer.print_summary(); +< computing_timer.reset(); +--- +> // computing_timer.print_summary(); +> // computing_timer.reset(); +2154,2157c2160,2163 +< Utilities::System::MemoryStats stats; +< Utilities::System::get_memory_stats(stats); +< pcout << "Peak virtual memory used, resident in kB: " << stats.VmSize +< << ' ' << stats.VmRSS << std::endl; +--- +> // Utilities::System::MemoryStats stats; +> // Utilities::System::get_memory_stats(stats); +> // pcout << "Peak virtual memory used, resident in kB: " << stats.VmSize +> // << ' ' << stats.VmRSS << std::endl; +2178,2183c2184,2189 +< if (argc != 2) +< { +< std::cerr << "*** Call this program as <./step-42 input.prm>" +< << std::endl; +< return 1; +< } +--- +> // if (argc != 2) +> // { +> // std::cerr << "*** Call this program as <./step-42 input.prm>" +> // << std::endl; +> // return 1; +> // } +2185c2191 +< prm.parse_input(argv[1]); +--- +> prm.parse_input("../../../source/step-42/p1_adaptive.prm"); diff --git a/tests/examples/step-42.mpirun=2.with_p4est=true.with_trilinos=true.output b/tests/examples/step-42.mpirun=2.with_p4est=true.with_trilinos=true.output new file mode 100644 index 0000000000..5199a4933f --- /dev/null +++ b/tests/examples/step-42.mpirun=2.with_p4est=true.with_trilinos=true.output @@ -0,0 +1,65 @@ + Using output directory 'p1_adaptive/' + FE degree 1 + transfer solution false + +Cycle 0: + Number of active cells: 512 + Number of degrees of freedom: 2187 + + Newton iteration 1 + Updating active set... + Size of active set: 1 + Assembling system... + Solving system... +Solver stopped within 6 - 8 iterations + Accepting Newton solution with residual: 2.77494e-07 + + Newton iteration 2 + Updating active set... + Size of active set: 1 + Assembling system... + Solving system... +Solver stopped within 6 - 8 iterations + Accepting Newton solution with residual: 24.9028 + Active set did not change! + + Newton iteration 3 + Updating active set... + Size of active set: 1 + Assembling system... + Solving system... +Solver stopped within 6 - 8 iterations + Residual of the non-contact part of the system: 1.63333 + with a damping parameter alpha = 1 + Active set did not change! + + Newton iteration 4 + Updating active set... + Size of active set: 1 + Assembling system... + Solving system... +Solver stopped within 6 - 8 iterations + Residual of the non-contact part of the system: 0.00457586 + with a damping parameter alpha = 1 + Active set did not change! + + Newton iteration 5 + Updating active set... + Size of active set: 1 + Assembling system... + Solving system... +Solver stopped within 6 - 8 iterations + Residual of the non-contact part of the system: 1.43188e-07 + with a damping parameter alpha = 1 + Active set did not change! + + Newton iteration 6 + Updating active set... + Size of active set: 1 + Assembling system... + Solving system... +Solver stopped within 6 - 8 iterations + Residual of the non-contact part of the system: 8.20097e-14 + with a damping parameter alpha = 1 + Active set did not change! +Contact force = 37.3058 diff --git a/tests/examples/step-43.diff b/tests/examples/step-43.diff new file mode 100644 index 0000000000..a65d452d40 --- /dev/null +++ b/tests/examples/step-43.diff @@ -0,0 +1,59 @@ +39c39 +< +--- +> #include "../example_test.h" +1497,1498c1497,1501 +< gmres.solve(darcy_matrix, darcy_solution, darcy_rhs, preconditioner); +< +--- +> //gmres.solve(darcy_matrix, darcy_solution, darcy_rhs, preconditioner); +> check_solver_within_range(std::cout, +> gmres.solve(darcy_matrix, darcy_solution, darcy_rhs, preconditioner);, +> solver_control.last_step(), +> 44, 62); +1501,1502c1504,1505 +< std::cout << " ..." << solver_control.last_step() +< << " GMRES iterations." << std::endl; +--- +> // std::cout << " ..." << solver_control.last_step() +> // << " GMRES iterations." << std::endl; +1586,1590c1589,1599 +< cg.solve(saturation_matrix, +< saturation_solution, +< saturation_rhs, +< preconditioner); +< +--- +> // cg.solve(saturation_matrix, +> // saturation_solution, +> // saturation_rhs, +> // preconditioner); +> check_solver_within_range(std::cout, +> cg.solve(saturation_matrix, +> saturation_solution, +> saturation_rhs, +> preconditioner), +> solver_control.last_step(), +> 15, 19); +1594,1595c1603,1604 +< std::cout << " ..." << solver_control.last_step() +< << " CG iterations." << std::endl; +--- +> // std::cout << " ..." << solver_control.last_step() +> // << " CG iterations." << std::endl; +2161,2162c2170,2171 +< if (timestep_number % 200 == 0) +< output_results(); +--- +> // if (timestep_number % 200 == 0) +> // output_results(); +2164c2173,2174 +< if (timestep_number % 25 == 0) +--- +> // if (timestep_number % 25 == 0) +> if (timestep_number % 5 == 0) +2181c2191,2192 +< while (time <= end_time); +--- +> // while (time <= end_time); +> while (timestep_number<10); diff --git a/tests/examples/step-43.mpirun=1.with_trilinos=true.output b/tests/examples/step-43.mpirun=1.with_trilinos=true.output new file mode 100644 index 0000000000..ba69e98c34 --- /dev/null +++ b/tests/examples/step-43.mpirun=1.with_trilinos=true.output @@ -0,0 +1,88 @@ +Number of active cells: 1024 (on 6 levels) +Number of degrees of freedom: 13764 (8450+1089+4225) + +Timestep 0: t=0, dt=0 + Solving Darcy (pressure-velocity) system... + Rebuilding darcy preconditioner... +Solver stopped within 44 - 62 iterations + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Number of active cells: 1036 (on 7 levels) +Number of degrees of freedom: 13960 (8570+1105+4285) + +Timestep 0: t=0, dt=0 + Solving Darcy (pressure-velocity) system... + Rebuilding darcy preconditioner... +Solver stopped within 44 - 62 iterations + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Number of active cells: 1072 (on 8 levels) +Number of degrees of freedom: 14508 (8906+1149+4453) + +Timestep 0: t=0, dt=0 + Solving Darcy (pressure-velocity) system... + Rebuilding darcy preconditioner... +Solver stopped within 44 - 62 iterations + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Number of active cells: 1132 (on 9 levels) +Number of degrees of freedom: 15408 (9458+1221+4729) + +Timestep 0: t=0, dt=0 + Solving Darcy (pressure-velocity) system... + Rebuilding darcy preconditioner... +Solver stopped within 44 - 62 iterations + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Number of active cells: 1180 (on 9 levels) +Number of degrees of freedom: 16112 (9890+1277+4945) + +Timestep 1: t=2.99468e-05, dt=2.99468e-05 + Solving Darcy (pressure-velocity) system... + Rebuilding darcy preconditioner... +Solver stopped within 44 - 62 iterations + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Timestep 2: t=5.98955e-05, dt=2.99487e-05 + Solving Darcy (pressure-velocity) system... + Rebuilding darcy preconditioner... +Solver stopped within 44 - 62 iterations + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Timestep 3: t=8.98429e-05, dt=2.99474e-05 + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Timestep 4: t=0.000119789, dt=2.99462e-05 + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Timestep 5: t=0.000149734, dt=2.99451e-05 + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Number of active cells: 1228 (on 9 levels) +Number of degrees of freedom: 16836 (10334+1335+5167) + +Timestep 6: t=0.000179678, dt=2.9944e-05 + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Timestep 7: t=0.000209621, dt=2.99429e-05 + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Timestep 8: t=0.000239563, dt=2.99419e-05 + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + +Timestep 9: t=0.000269504, dt=2.99409e-05 + Solving saturation transport equation... +Solver stopped within 15 - 19 iterations + diff --git a/tests/examples/step-44.diff b/tests/examples/step-44.diff new file mode 100644 index 0000000000..22a8cb6a25 --- /dev/null +++ b/tests/examples/step-44.diff @@ -0,0 +1,64 @@ +38c38 +< +--- +> #include "../example_test.h" +1032c1032 +< , timer(std::cout, TimerOutput::summary, TimerOutput::wall_times) +--- +> , timer(std::cout, TimerOutput::never, TimerOutput::wall_times) +1105c1105 +< output_results(); +--- +> // output_results(); +1114c1114 +< while (time.current() < time.end()) +--- +> while (time.current() < 0.3) +1126c1126 +< output_results(); +--- +> // output_results(); +1543c1543 +< std::cout << " Setting up quadrature point data..." << std::endl; +--- +> // std::cout << " Setting up quadrature point data..." << std::endl; +1660c1660 +< print_conv_header(); +--- +> // print_conv_header(); +1685,1686c1685,1686 +< std::cout << ' ' << std::setw(2) << newton_iteration << ' ' +< << std::flush; +--- +> // std::cout << ' ' << std::setw(2) << newton_iteration << ' ' +> // << std::flush; +1706c1706 +< print_conv_footer(); +--- +> // print_conv_footer(); +1713c1713 +< const std::pair lin_solver_output = +--- +> //const std::pair lin_solver_output = +1731,1738c1731,1738 +< std::cout << " | " << std::fixed << std::setprecision(3) << std::setw(7) +< << std::scientific << lin_solver_output.first << " " +< << lin_solver_output.second << " " +< << error_residual_norm.norm << " " << error_residual_norm.u +< << " " << error_residual_norm.p << " " +< << error_residual_norm.J << " " << error_update_norm.norm +< << " " << error_update_norm.u << " " << error_update_norm.p +< << " " << error_update_norm.J << " " << std::endl; +--- +> // std::cout << " | " << std::fixed << std::setprecision(3) << std::setw(7) +> // << std::scientific << lin_solver_output.first << " " +> // << lin_solver_output.second << " " +> // << error_residual_norm.norm << " " << error_residual_norm.u +> // << " " << error_residual_norm.p << " " +> // << error_residual_norm.J << " " << error_update_norm.norm +> // << " " << error_update_norm.u << " " << error_update_norm.p +> // << " " << error_update_norm.J << " " << std::endl; +3243c3243 +< Solid solid("parameters.prm"); +--- +> Solid solid("../../../source/step-44/parameters.prm"); diff --git a/tests/examples/step-44.output b/tests/examples/step-44.output new file mode 100644 index 0000000000..0ebcee5784 --- /dev/null +++ b/tests/examples/step-44.output @@ -0,0 +1,11 @@ +Grid: + Reference volume: 1e-09 +Triangulation: + Number of active cells: 64 + Number of degrees of freedom: 2699 + +Timestep 1 @ 0.1s + CST ASM_SYS ------ SLV PP UQPH CST ASM_SYS ------ SLV PP UQPH --- ASM_SYS ------ SLV PP UQPH --- ASM_SYS ------ SLV PP UQPH --- ASM_SYS CONVERGED! + +Timestep 2 @ 0.2s + CST ASM_SYS ------ SLV PP UQPH CST ASM_SYS ------ SLV PP UQPH --- ASM_SYS ------ SLV PP UQPH --- ASM_SYS ------ SLV PP UQPH --- ASM_SYS CONVERGED! diff --git a/tests/examples/step-45.diff b/tests/examples/step-45.diff new file mode 100644 index 0000000000..9be1f406c0 --- /dev/null +++ b/tests/examples/step-45.diff @@ -0,0 +1,4 @@ +768c768 +< output_results(refinement_cycle); +--- +> // output_results(refinement_cycle); diff --git a/tests/examples/step-45.mpirun=2.with_p4est=true.with_trilinos=true.output b/tests/examples/step-45.mpirun=2.with_p4est=true.with_trilinos=true.output new file mode 100644 index 0000000000..24d196a5de --- /dev/null +++ b/tests/examples/step-45.mpirun=2.with_p4est=true.with_trilinos=true.output @@ -0,0 +1,36 @@ +Refinement cycle 0 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 1 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 2 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 3 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 4 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 5 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 6 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 7 + Assembling... + Computing preconditioner... + Solving... +Refinement cycle 8 + Assembling... + Computing preconditioner... + Solving... diff --git a/tests/examples/step-46.diff b/tests/examples/step-46.diff new file mode 100644 index 0000000000..93db6e1068 --- /dev/null +++ b/tests/examples/step-46.diff @@ -0,0 +1,6 @@ +1011,1012c1011,1012 +< std::cout << " Writing output..." << std::endl; +< output_results(refinement_cycle); +--- +> std::cout << " Writing output..." << std::endl; +> // output_results(refinement_cycle); diff --git a/tests/examples/step-46.with_umfpack=true.output b/tests/examples/step-46.with_umfpack=true.output new file mode 100644 index 0000000000..cb1c8de00e --- /dev/null +++ b/tests/examples/step-46.with_umfpack=true.output @@ -0,0 +1,42 @@ +Refinement cycle 0 + Number of active cells: 64 + Number of degrees of freedom: 531 + Assembling... + Solving... + Writing output... + +Refinement cycle 1 + Number of active cells: 136 + Number of degrees of freedom: 1260 + Assembling... + Solving... + Writing output... + +Refinement cycle 2 + Number of active cells: 436 + Number of degrees of freedom: 3723 + Assembling... + Solving... + Writing output... + +Refinement cycle 3 + Number of active cells: 1072 + Number of degrees of freedom: 7493 + Assembling... + Solving... + Writing output... + +Refinement cycle 4 + Number of active cells: 2632 + Number of degrees of freedom: 15005 + Assembling... + Solving... + Writing output... + +Refinement cycle 5 + Number of active cells: 5944 + Number of degrees of freedom: 29437 + Assembling... + Solving... + Writing output... + diff --git a/tests/examples/step-47.diff b/tests/examples/step-47.diff new file mode 100644 index 0000000000..0cf2fc4686 --- /dev/null +++ b/tests/examples/step-47.diff @@ -0,0 +1,4 @@ +905c905 +< output_results(cycle); +--- +> // output_results(cycle); diff --git a/tests/examples/step-47.output b/tests/examples/step-47.output new file mode 100644 index 0000000000..902b289e45 --- /dev/null +++ b/tests/examples/step-47.output @@ -0,0 +1,30 @@ +Number of active cells: 4 +Total number of cells: 5 +Cycle 0 of 4 + Number of degrees of freedom: 81 + Solving system... + Error in the L2 norm : 0.00878095 + Error in the H1 seminorm : 0.0709546 + Error in the broken H2 seminorm: 1.64542 + +Cycle 1 of 4 + Number of degrees of freedom: 289 + Solving system... + Error in the L2 norm : 0.003515 + Error in the H1 seminorm : 0.0217418 + Error in the broken H2 seminorm: 0.81215 + +Cycle 2 of 4 + Number of degrees of freedom: 1089 + Solving system... + Error in the L2 norm : 0.00110394 + Error in the H1 seminorm : 0.00610667 + Error in the broken H2 seminorm: 0.401517 + +Cycle 3 of 4 + Number of degrees of freedom: 4225 + Solving system... + Error in the L2 norm : 0.000308433 + Error in the H1 seminorm : 0.00162277 + Error in the broken H2 seminorm: 0.199356 + diff --git a/tests/examples/step-48.diff b/tests/examples/step-48.diff index 1a8c424fe5..7f4be41eb2 100644 --- a/tests/examples/step-48.diff +++ b/tests/examples/step-48.diff @@ -1,16 +1,20 @@ -59c59 -< // it is passed as a template argument to the implementation of the ---- -> // it is passed as a template argument to the implementation of the -352c352 +351c351 < , n_global_refinements(10 - 2 * dim) --- > , n_global_refinements(9 - 2 * dim) -355c355 +354c354 < , final_time(10.) --- > , final_time(-5.) -522,534d521 +495,497c495,497 +< data_out.write_vtu_with_pvtu_record( +< "./", "solution", timestep_number, MPI_COMM_WORLD, 3); +< +--- +> // data_out.write_vtu_with_pvtu_record( +> // "./", "solution", timestep_number, MPI_COMM_WORLD, 3); +> (void)timestep_number; +521,533d520 < { < pcout << "Number of MPI ranks: " < << Utilities::MPI::n_mpi_processes(MPI_COMM_WORLD) << std::endl; @@ -24,28 +28,26 @@ < << std::endl < << std::endl; < } -596,597d582 +595,596d581 < double wtime = 0; < double output_time = 0; -605d589 +604,606c589 < wtime += timer.wall_time(); -607d590 +< < timer.restart(); -610,611d592 +--- +> // +609,610d591 < < output_time += timer.wall_time(); -613d593 +612d592 < timer.restart(); -615d594 +614d593 < output_time += timer.wall_time(); -619,624d597 +618,623d596 < < pcout << " Average wallclock time per time step: " < << wtime / timestep_number << 's' << std::endl; < < pcout << " Spent " << output_time << "s on output and " << wtime < << "s on computations." << std::endl; -645c618 -< argc, argv, numbers::invalid_unsigned_int); ---- -> argc, argv, 2); diff --git a/tests/examples/step-49.diff b/tests/examples/step-49.diff new file mode 100644 index 0000000000..3de0233bea --- /dev/null +++ b/tests/examples/step-49.diff @@ -0,0 +1,9 @@ +91,91c91,92 +< std::cout << " written to " << filename << std::endl << std::endl; +--- +> // std::cout << " written to " << filename << std::endl << std::endl; +> (void)filename; +131c132 +< std::ifstream f("example.msh"); +--- +> std::ifstream f("../../../source/step-49/example.msh"); diff --git a/tests/examples/step-49.output b/tests/examples/step-49.output new file mode 100644 index 0000000000..a3596f76a8 --- /dev/null +++ b/tests/examples/step-49.output @@ -0,0 +1,28 @@ +Mesh info: + dimension: 2 + no. of cells: 11904 + boundary indicators: 0(624 times) 1(48 times) 2(32 times) 3(32 times) +Mesh info: + dimension: 2 + no. of cells: 14 + boundary indicators: 0(22 times) +Mesh info: + dimension: 2 + no. of cells: 128 + boundary indicators: 0(32 times) 1(32 times) +Mesh info: + dimension: 3 + no. of cells: 16 + boundary indicators: 0(16 times) 1(16 times) 2(8 times) 3(8 times) +Mesh info: + dimension: 2 + no. of cells: 28 + boundary indicators: 0(32 times) +Mesh info: + dimension: 2 + no. of cells: 1600 + boundary indicators: 0(160 times) +Mesh info: + dimension: 2 + no. of cells: 256 + boundary indicators: 0(64 times)