Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve global statistics postprocessor #6246

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 9 additions & 0 deletions doc/modules/changes/20250304_gassmoeller
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Fixed: The statistics file contained an invalid number of iterations
for variables that were not solved (e.g. because compositions were
prescribed, or Stokes was only solved using cheap or only expensive
iterations). This is confusing, because it looks like an error and for the
Stokes solver it caused incorrect iteration number to be reported. It is more
accurate to report 0 iterations if none were made, which is what the
postprocessor does now.
<br>
(Rene Gassmoeller, 2025/03/04)
10 changes: 5 additions & 5 deletions include/aspect/postprocess/global_statistics.h
Original file line number Diff line number Diff line change
Expand Up @@ -128,16 +128,16 @@ namespace aspect
* A container that stores the advection solver history of the current
* timestep, until it is written into the statistics object
* upon the call to execute(). It is cleared after writing
* the content. The vector contains pairs, which consist
* of a column name (for the temperature or one of the
* compositional fields), and a vector of SolverControl
* objects (one per nonlinear iteration for this particular
* the content. The map contains pairs, which consist
* of a unique field index (for the temperature or one of the
* compositional fields), and a vector of number of iterations
* (one number per nonlinear iteration for this particular
* field). This layout allows storing varying numbers of
* nonlinear iterations for temperature and compositional fields
* (if any nonlinear solver scheme would implement that at
* some point).
*/
std::vector<std::pair<std::string, std::vector<unsigned int>>> advection_iterations;
std::map<unsigned int, std::vector<unsigned int>> advection_iterations;

/**
* Whether to put every nonlinear iteration into a separate
Expand Down
79 changes: 55 additions & 24 deletions source/postprocess/global_statistics.cc
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,20 @@ namespace aspect
{
list_of_S_iterations.push_back(number_S_iterations);
list_of_A_iterations.push_back(number_A_iterations);
stokes_iterations_cheap.push_back(solver_control_cheap.last_step());
stokes_iterations_expensive.push_back(solver_control_expensive.last_step());

// If the solver was skipped, then the solver control
// object stores an invalid number of iterations. However, it
// is equally true and more intuitive to say that in this case
// the solver did not need to do any iterations.
if (solver_control_cheap.last_step() == numbers::invalid_unsigned_int)
stokes_iterations_cheap.push_back(0);
else
stokes_iterations_cheap.push_back(solver_control_cheap.last_step());

if (solver_control_expensive.last_step() == numbers::invalid_unsigned_int)
stokes_iterations_expensive.push_back(0);
else
stokes_iterations_expensive.push_back(solver_control_expensive.last_step());
}


Expand All @@ -100,21 +112,19 @@ namespace aspect
const unsigned int compositional_index,
const SolverControl &solver_control)
{
const std::string column_name = (solved_temperature_field) ?
"Iterations for temperature solver"
:
"Iterations for composition solver " + Utilities::int_to_string(compositional_index+1);

unsigned int column_position = numbers::invalid_unsigned_int;

for (unsigned int i=0; i<advection_iterations.size(); ++i)
if (column_name == advection_iterations[i].first)
column_position = i;

if (column_position == numbers::invalid_unsigned_int)
advection_iterations.emplace_back(column_name,std::vector<unsigned int>(1,solver_control.last_step()));
const unsigned int column_position = (solved_temperature_field) ?
0 :
compositional_index+1;

// If the solver was not called (e.g. the field
// was computed by the material model), then the solver control
// object stores an invalid number of iterations. However, it
// is equally true and more intuitive to say that in this case
// the solver did not need to do any iterations.
if (solver_control.last_step() == numbers::invalid_unsigned_int)
advection_iterations[column_position].push_back(0);
else
advection_iterations[column_position].second.push_back(solver_control.last_step());
advection_iterations[column_position].push_back(solver_control.last_step());
}


Expand Down Expand Up @@ -144,8 +154,15 @@ namespace aspect

for (const auto &advection_iteration : advection_iterations)
if (iteration < advection_iteration.second.size())
statistics.add_value(advection_iteration.first,
advection_iteration.second[iteration]);
{
const std::string column_name = (advection_iteration.first == 0) ?
"Iterations for temperature solver"
:
"Iterations for composition solver " + Utilities::int_to_string(advection_iteration.first);

statistics.add_value(column_name,
advection_iteration.second[iteration]);
}

if (iteration < stokes_iterations_cheap.size())
{
Expand All @@ -169,9 +186,14 @@ namespace aspect

for (unsigned int iteration = 0; iteration < nonlinear_iterations; ++iteration)
{
for (unsigned int column=0; column<advection_iterations.size(); ++column)
if (iteration < advection_iterations[column].second.size())
advection_outer_iterations[column] += advection_iterations[column].second[iteration];
unsigned int column = 0;
for (const auto &field_index_and_iterations : advection_iterations)
{
if (iteration < field_index_and_iterations.second.size())
advection_outer_iterations[column] += field_index_and_iterations.second[iteration];

++column;
}

if (iteration < stokes_iterations_cheap.size())
{
Expand All @@ -191,9 +213,18 @@ namespace aspect

// Only output statistics columns if the solver actually signaled at least one
// successful solve. Some solver schemes might need no advection or Stokes solver
for (unsigned int column=0; column<advection_iterations.size(); ++column)
statistics.add_value(advection_iterations[column].first,
advection_outer_iterations[column]);
unsigned int column = 0;
for (const auto &field_index_and_iterations : advection_iterations)
{
const std::string column_name = (field_index_and_iterations.first == 0) ?
"Iterations for temperature solver"
:
"Iterations for composition solver " + Utilities::int_to_string(field_index_and_iterations.first);

statistics.add_value(column_name,
advection_outer_iterations[column]);
++column;
}

// Note that even if no cheap solver iterations were done, the solver control
// object is still stored, so this line works in that case as well.
Expand Down
2 changes: 1 addition & 1 deletion tests/2d_annulus_pyvista_cookbook/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@
# 11: RMS velocity (m/year)
# 12: Max. velocity (m/year)
# 13: Visualization file name
0 0.000000000000e+00 0.000000000000e+00 12 168 72 0 28 30 30 4.21577224e-04 7.65472757e-04 output-2d_annulus_pyvista_cookbook/solution/solution-00000
0 0.000000000000e+00 0.000000000000e+00 12 168 72 0 29 30 30 4.21577224e-04 7.65472757e-04 output-2d_annulus_pyvista_cookbook/solution/solution-00000
2 changes: 1 addition & 1 deletion tests/adiabatic_boundary/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@
# 15: Average temperature (K)
# 16: Maximal temperature (K)
# 17: Average nondimensional temperature (K)
0 0.000000000000e+00 0.000000000000e+00 512 15468 4913 2 0 58 62 62 1.36609081e-06 5.14642441e-06 2.73150000e+02 1.58157463e+03 1.88305500e+03 3.46786278e-01
0 0.000000000000e+00 0.000000000000e+00 512 15468 4913 2 0 60 62 62 1.36609081e-06 5.14642441e-06 2.73150000e+02 1.58157463e+03 1.88305500e+03 3.46786278e-01
2 changes: 1 addition & 1 deletion tests/adiabatic_conditions/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@
# 18: Outward heat flux through boundary with indicator 1 ("top") (W)
# 19: Outward heat flux through boundary with indicator 2 ("left") (W)
# 20: Outward heat flux through boundary with indicator 3 ("right") (W)
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 13 15 15 output-adiabatic_conditions/solution/solution-00000 2.81189741e+04 1.11213904e+05 1.61300000e+03 1.61300000e+03 1.61300000e+03 6.72093540e+03 -9.92725149e+01 0.00000000e+00 0.00000000e+00
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 14 15 15 output-adiabatic_conditions/solution/solution-00000 2.81189741e+04 1.11213904e+05 1.61300000e+03 1.61300000e+03 1.61300000e+03 6.72093540e+03 -9.92725149e+01 0.00000000e+00 0.00000000e+00
2 changes: 1 addition & 1 deletion tests/adiabatic_conditions_composition_function/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,4 @@
# 20: Outward heat flux through boundary with indicator 1 ("top") (W)
# 21: Outward heat flux through boundary with indicator 2 ("left") (W)
# 22: Outward heat flux through boundary with indicator 3 ("right") (W)
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 12545 0 0 14 16 16 output-adiabatic_conditions_composition_function/solution/solution-00000 6.33154633e-16 4.31861289e-15 1.61300000e+03 1.61300000e+03 1.61300000e+03 -6.57879769e-17 1.34081020e-18 0.00000000e+00 0.00000000e+00
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 12545 0 0 15 16 16 output-adiabatic_conditions_composition_function/solution/solution-00000 6.33154686e-16 4.31861270e-15 1.61300000e+03 1.61300000e+03 1.61300000e+03 -6.57878922e-17 1.34080780e-18 0.00000000e+00 0.00000000e+00
2 changes: 1 addition & 1 deletion tests/adiabatic_conditions_function/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@
# 9: Velocity iterations in Stokes preconditioner
# 10: Schur complement iterations in Stokes preconditioner
# 11: Visualization file name
0 0.000000000000e+00 0.000000000000e+00 256 2467 1089 0 30 32 32 output-adiabatic_conditions_function/solution/solution-00000
0 0.000000000000e+00 0.000000000000e+00 256 2467 1089 0 31 32 32 output-adiabatic_conditions_function/solution/solution-00000
4 changes: 2 additions & 2 deletions tests/adiabatic_conditions_time_change/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,5 @@
# 18: Outward heat flux through boundary with indicator 1 ("top") (W)
# 19: Outward heat flux through boundary with indicator 2 ("left") (W)
# 20: Outward heat flux through boundary with indicator 3 ("right") (W)
0 0.000000000000e+00 0.000000000000e+00 192 1891 833 0 13 15 15 output-adiabatic_conditions_time_change/solution/solution-00000 2.16681480e-17 1.24336974e-16 1.61300000e+03 1.61300000e+03 1.61300000e+03 9.37702665e-18 1.46404937e-18 0.00000000e+00 0.00000000e+00
1 1.000000000000e-05 1.000000000000e-05 192 1891 833 0 14 16 16 output-adiabatic_conditions_time_change/solution/solution-00001 1.48478132e-19 3.86311330e-19 1.61300000e+03 1.61300000e+03 1.61300000e+03 1.42007384e-19 -4.94517950e-20 0.00000000e+00 0.00000000e+00
0 0.000000000000e+00 0.000000000000e+00 192 1891 833 0 14 15 15 output-adiabatic_conditions_time_change/solution/solution-00000 2.16681482e-17 1.24336977e-16 1.61300000e+03 1.61300000e+03 1.61300000e+03 9.37702665e-18 1.46404941e-18 0.00000000e+00 0.00000000e+00
1 1.000000000000e-05 1.000000000000e-05 192 1891 833 0 15 16 16 output-adiabatic_conditions_time_change/solution/solution-00001 1.48500526e-19 3.86409232e-19 1.61300000e+03 1.61300000e+03 1.61300000e+03 1.42043571e-19 -4.94511609e-20 0.00000000e+00 0.00000000e+00
12 changes: 6 additions & 6 deletions tests/adiabatic_heating/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@
# 14: Average nondimensional temperature (K)
# 15: Average adiabatic heating rate (W/kg)
# 16: Total adiabatic heating rate (W)
0 0.000000000000e+00 0.000000000000e+00 1280 12363 5457 0 22 24 24 1.72315000e+03 1.75516666e+03 1.78757747e+03 8.48573063e-03 -3.51047096e-11 -1.94518507e+02
1 5.735624783947e+12 5.735624783947e+12 1280 12363 5457 8 4294967295 0 0 1.72317496e+03 1.75516667e+03 1.78757747e+03 8.47911693e-03 -3.51047097e-11 -1.94518508e+02
2 1.147124956789e+13 5.735624783947e+12 1280 12363 5457 13 4294967295 0 0 1.72315867e+03 1.75516664e+03 1.78757747e+03 8.48342635e-03 -3.51047092e-11 -1.94518505e+02
3 1.720687435184e+13 5.735624783947e+12 1280 12363 5457 12 4294967295 0 0 1.72314858e+03 1.75516663e+03 1.78757747e+03 8.48609676e-03 -3.51047089e-11 -1.94518503e+02
4 2.294249913579e+13 5.735624783947e+12 1280 12363 5457 11 4294967295 0 0 1.72314799e+03 1.75516662e+03 1.78757747e+03 8.48625238e-03 -3.51047087e-11 -1.94518502e+02
5 2.500000000000e+13 2.057500864213e+12 1280 12363 5457 7 4294967295 0 0 1.72314900e+03 1.75516661e+03 1.78757747e+03 8.48598410e-03 -3.51047087e-11 -1.94518502e+02
0 0.000000000000e+00 0.000000000000e+00 1280 12363 5457 0 23 24 24 1.72315000e+03 1.75516666e+03 1.78757747e+03 8.48573063e-03 -3.51047096e-11 -1.94518507e+02
1 5.735624783947e+12 5.735624783947e+12 1280 12363 5457 8 0 0 0 1.72317496e+03 1.75516667e+03 1.78757747e+03 8.47911693e-03 -3.51047097e-11 -1.94518508e+02
2 1.147124956789e+13 5.735624783947e+12 1280 12363 5457 13 0 0 0 1.72315867e+03 1.75516664e+03 1.78757747e+03 8.48342635e-03 -3.51047092e-11 -1.94518505e+02
3 1.720687435184e+13 5.735624783947e+12 1280 12363 5457 12 0 0 0 1.72314858e+03 1.75516663e+03 1.78757747e+03 8.48609676e-03 -3.51047089e-11 -1.94518503e+02
4 2.294249913579e+13 5.735624783947e+12 1280 12363 5457 11 0 0 0 1.72314799e+03 1.75516662e+03 1.78757747e+03 8.48625238e-03 -3.51047087e-11 -1.94518502e+02
5 2.500000000000e+13 2.057500864213e+12 1280 12363 5457 7 0 0 0 1.72314900e+03 1.75516661e+03 1.78757747e+03 8.48598410e-03 -3.51047087e-11 -1.94518502e+02
12 changes: 6 additions & 6 deletions tests/adiabatic_heating_simplified/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@
# 14: Average nondimensional temperature (K)
# 15: Average adiabatic heating rate (W/kg)
# 16: Total adiabatic heating rate (W)
0 0.000000000000e+00 0.000000000000e+00 1280 12363 5457 0 22 24 24 1.72315000e+03 1.75516666e+03 1.78757747e+03 8.48573063e-03 -3.51031943e-11 -1.94510111e+02
1 5.735624783947e+12 5.735624783947e+12 1280 12363 5457 7 4294967295 0 0 1.72317503e+03 1.75516667e+03 1.78757747e+03 8.47910054e-03 -3.51031946e-11 -1.94510112e+02
2 1.147124956789e+13 5.735624783947e+12 1280 12363 5457 12 4294967295 0 0 1.72315881e+03 1.75516666e+03 1.78757747e+03 8.48339365e-03 -3.51031942e-11 -1.94510110e+02
3 1.720687435184e+13 5.735624783947e+12 1280 12363 5457 11 4294967295 0 0 1.72314879e+03 1.75516665e+03 1.78757747e+03 8.48604944e-03 -3.51031941e-11 -1.94510110e+02
4 2.294249913579e+13 5.735624783947e+12 1280 12363 5457 11 4294967295 0 0 1.72314825e+03 1.75516665e+03 1.78757747e+03 8.48619254e-03 -3.51031941e-11 -1.94510110e+02
5 2.500000000000e+13 2.057500864213e+12 1280 12363 5457 7 4294967295 0 0 1.72314927e+03 1.75516665e+03 1.78757747e+03 8.48592021e-03 -3.51031941e-11 -1.94510110e+02
0 0.000000000000e+00 0.000000000000e+00 1280 12363 5457 0 23 24 24 1.72315000e+03 1.75516666e+03 1.78757747e+03 8.48573063e-03 -3.51031943e-11 -1.94510111e+02
1 5.735624783947e+12 5.735624783947e+12 1280 12363 5457 7 0 0 0 1.72317503e+03 1.75516667e+03 1.78757747e+03 8.47910054e-03 -3.51031946e-11 -1.94510112e+02
2 1.147124956789e+13 5.735624783947e+12 1280 12363 5457 12 0 0 0 1.72315881e+03 1.75516666e+03 1.78757747e+03 8.48339365e-03 -3.51031942e-11 -1.94510110e+02
3 1.720687435184e+13 5.735624783947e+12 1280 12363 5457 11 0 0 0 1.72314879e+03 1.75516665e+03 1.78757747e+03 8.48604944e-03 -3.51031941e-11 -1.94510110e+02
4 2.294249913579e+13 5.735624783947e+12 1280 12363 5457 11 0 0 0 1.72314825e+03 1.75516665e+03 1.78757747e+03 8.48619254e-03 -3.51031941e-11 -1.94510110e+02
5 2.500000000000e+13 2.057500864213e+12 1280 12363 5457 7 0 0 0 1.72314927e+03 1.75516665e+03 1.78757747e+03 8.48592021e-03 -3.51031941e-11 -1.94510110e+02
8 changes: 4 additions & 4 deletions tests/adiabatic_heating_with_melt/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
# 20: Total adiabatic heating rate (W)
# 21: Average adiabatic heating of melt rate (W/kg)
# 22: Total adiabatic heating of melt rate (W)
0 0.000000000000e+00 0.000000000000e+00 320 3303 1449 810 2 0 0 0 60 64 447 1.72315000e+03 1.75516666e+03 1.78757747e+03 8.48573063e-03 -3.19121211e-11 -1.77378538e+02 -2.44519117e-27 -1.35912129e-14
1 1.147124999998e+13 1.147124999998e+13 320 3303 1449 810 1 7 0 0 18 20 139 1.72320459e+03 1.75516673e+03 1.78757747e+03 8.47128012e-03 -3.19121224e-11 -1.77378545e+02 -7.20874379e-26 -4.00686757e-13
2 2.294249986282e+13 1.147124986284e+13 320 3303 1449 810 1 13 0 0 20 22 153 1.72317019e+03 1.75516666e+03 1.78757747e+03 8.48038014e-03 -3.19121212e-11 -1.77378538e+02 -2.82761483e-26 -1.57168551e-13
3 2.500000000000e+13 2.057500137180e+12 320 3303 1449 810 1 6 0 0 17 19 132 1.72316061e+03 1.75516665e+03 1.78757747e+03 8.48291492e-03 -3.19121209e-11 -1.77378537e+02 -3.39517462e-26 -1.88715475e-13
0 0.000000000000e+00 0.000000000000e+00 320 3303 1449 810 2 0 0 0 62 64 447 1.72315000e+03 1.75516666e+03 1.78757747e+03 8.48573063e-03 -3.19121211e-11 -1.77378538e+02 -2.44519117e-27 -1.35912129e-14
1 1.147124999998e+13 1.147124999998e+13 320 3303 1449 810 1 7 0 0 19 20 139 1.72320459e+03 1.75516673e+03 1.78757747e+03 8.47128012e-03 -3.19121224e-11 -1.77378545e+02 -7.20874379e-26 -4.00686757e-13
2 2.294249986282e+13 1.147124986284e+13 320 3303 1449 810 1 13 0 0 21 22 153 1.72317019e+03 1.75516666e+03 1.78757747e+03 8.48038014e-03 -3.19121212e-11 -1.77378538e+02 -2.82761483e-26 -1.57168551e-13
3 2.500000000000e+13 2.057500137180e+12 320 3303 1449 810 1 6 0 0 18 19 132 1.72316061e+03 1.75516665e+03 1.78757747e+03 8.48291492e-03 -3.19121209e-11 -1.77378537e+02 -3.39517462e-26 -1.88715475e-13
2 changes: 1 addition & 1 deletion tests/adiabatic_initial_conditions/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@
# 9: Velocity iterations in Stokes preconditioner
# 10: Schur complement iterations in Stokes preconditioner
# 11: Visualization file name
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 13 15 15 output-adiabatic_initial_conditions/solution/solution-00000
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 14 15 15 output-adiabatic_initial_conditions/solution/solution-00000
2 changes: 1 addition & 1 deletion tests/adiabatic_initial_conditions_chunk/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@
# 8: Iterations for Stokes solver
# 9: Velocity iterations in Stokes preconditioner
# 10: Schur complement iterations in Stokes preconditioner
0 0.000000000000e+00 0.000000000000e+00 352 3654 1617 0 183 186 186
0 0.000000000000e+00 0.000000000000e+00 352 3654 1617 0 184 186 186
2 changes: 1 addition & 1 deletion tests/adiabatic_initial_conditions_chunk_3d/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@
# 8: Iterations for Stokes solver
# 9: Velocity iterations in Stokes preconditioner
# 10: Schur complement iterations in Stokes preconditioner
0 0.000000000000e+00 0.000000000000e+00 64 2312 729 0 56 58 58
0 0.000000000000e+00 0.000000000000e+00 64 2312 729 0 57 58 58
2 changes: 1 addition & 1 deletion tests/adiabatic_initial_conditions_compressible/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@
# 9: Velocity iterations in Stokes preconditioner
# 10: Schur complement iterations in Stokes preconditioner
# 11: Visualization file name
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 13 15 15 output-adiabatic_initial_conditions_compressible/solution/solution-00000
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 14 15 15 output-adiabatic_initial_conditions_compressible/solution/solution-00000
2 changes: 1 addition & 1 deletion tests/adiabatic_initial_conditions_constant/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@
# 9: Velocity iterations in Stokes preconditioner
# 10: Schur complement iterations in Stokes preconditioner
# 11: Visualization file name
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 14 16 16 output-adiabatic_initial_conditions_constant/solution/solution-00000
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 15 16 16 output-adiabatic_initial_conditions_constant/solution/solution-00000
2 changes: 1 addition & 1 deletion tests/adiabatic_initial_conditions_points/statistics
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@
# 9: Velocity iterations in Stokes preconditioner
# 10: Schur complement iterations in Stokes preconditioner
# 11: Visualization file name
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 14 16 16 output-adiabatic_initial_conditions_points/solution/solution-00000
0 0.000000000000e+00 0.000000000000e+00 3072 28291 12545 0 15 16 16 output-adiabatic_initial_conditions_points/solution/solution-00000
Loading