mirror of
https://github.com/cosmo-sims/MUSIC.git
synced 2024-09-19 17:03:46 +02:00
Some fixes to the ENZO output plug-in
Added a fixed 'RefineBy=2' to ENZO parameter files. Increased field width and precision for grid coordinates.
This commit is contained in:
parent
02a822a92a
commit
83f5fb9f39
1 changed files with 55 additions and 50 deletions
|
@ -149,6 +149,10 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
bool bhave_hydro = cf_.getValue<bool>("setup","baryons");
|
bool bhave_hydro = cf_.getValue<bool>("setup","baryons");
|
||||||
|
bool align_top = cf.getValueSafe<bool>( "setup", "align_top", true );
|
||||||
|
|
||||||
|
if( !align_top )
|
||||||
|
throw std::runtime_error("ENZO output plug-in requires that \'align_top=true\'!");
|
||||||
|
|
||||||
the_sim_header.dimensions.push_back( (int)pow(2,levelmin_) );
|
the_sim_header.dimensions.push_back( (int)pow(2,levelmin_) );
|
||||||
the_sim_header.dimensions.push_back( (int)pow(2,levelmin_) );
|
the_sim_header.dimensions.push_back( (int)pow(2,levelmin_) );
|
||||||
|
@ -159,7 +163,7 @@ public:
|
||||||
the_sim_header.offset.push_back( 0 );
|
the_sim_header.offset.push_back( 0 );
|
||||||
|
|
||||||
the_sim_header.a_start = 1.0/(1.0+cf.getValue<double>("setup","zstart"));
|
the_sim_header.a_start = 1.0/(1.0+cf.getValue<double>("setup","zstart"));
|
||||||
the_sim_header.dx = cf.getValue<double>("setup","boxlength")/the_sim_header.dimensions[0]/(cf.getValue<double>("cosmology","H0")*0.01); // not sure?!?
|
the_sim_header.dx = cf.getValue<double>("setup","boxlength")/the_sim_header.dimensions[0];// /(cf.getValue<double>("cosmology","H0")*0.01); // not sure?!?
|
||||||
the_sim_header.h0 = cf.getValue<double>("cosmology","H0")*0.01;
|
the_sim_header.h0 = cf.getValue<double>("cosmology","H0")*0.01;
|
||||||
|
|
||||||
if( bhave_hydro )
|
if( bhave_hydro )
|
||||||
|
@ -200,6 +204,7 @@ public:
|
||||||
<< "TopGridGravityBoundary = 0 // Periodic BC for gravity\n"
|
<< "TopGridGravityBoundary = 0 // Periodic BC for gravity\n"
|
||||||
<< "LeftFaceBoundaryCondition = 3 3 3 // same for fluid\n"
|
<< "LeftFaceBoundaryCondition = 3 3 3 // same for fluid\n"
|
||||||
<< "RightFaceBoundaryCondition = 3 3 3\n"
|
<< "RightFaceBoundaryCondition = 3 3 3\n"
|
||||||
|
<< "RefineBy = 2\n"
|
||||||
<< "\n"
|
<< "\n"
|
||||||
<< "#\n";
|
<< "#\n";
|
||||||
|
|
||||||
|
@ -250,19 +255,19 @@ public:
|
||||||
ofs
|
ofs
|
||||||
|
|
||||||
<< "CosmologySimulationGridDimension[" << 1+ilevel << "] = "
|
<< "CosmologySimulationGridDimension[" << 1+ilevel << "] = "
|
||||||
<< gh.size( levelmin_+ilevel+1, 0 ) << " "
|
<< std::setw(16) << gh.size( levelmin_+ilevel+1, 0 ) << " "
|
||||||
<< gh.size( levelmin_+ilevel+1, 1 ) << " "
|
<< std::setw(16) << gh.size( levelmin_+ilevel+1, 1 ) << " "
|
||||||
<< gh.size( levelmin_+ilevel+1, 2 ) << "\n"
|
<< std::setw(16) << gh.size( levelmin_+ilevel+1, 2 ) << "\n"
|
||||||
|
|
||||||
<< "CosmologySimulationGridLeftEdge[" << 1+ilevel << "] = "
|
<< "CosmologySimulationGridLeftEdge[" << 1+ilevel << "] = "
|
||||||
<< h*gh.offset_abs(levelmin_+ilevel+1, 0) << " "
|
<< std::setw(16) << std::setprecision(10) << h*gh.offset_abs(levelmin_+ilevel+1, 0) << " "
|
||||||
<< h*gh.offset_abs(levelmin_+ilevel+1, 1) << " "
|
<< std::setw(16) << std::setprecision(10) << h*gh.offset_abs(levelmin_+ilevel+1, 1) << " "
|
||||||
<< h*gh.offset_abs(levelmin_+ilevel+1, 2) << "\n"
|
<< std::setw(16) << std::setprecision(10) << h*gh.offset_abs(levelmin_+ilevel+1, 2) << "\n"
|
||||||
|
|
||||||
<< "CosmologySimulationGridRightEdge[" << 1+ilevel << "] = "
|
<< "CosmologySimulationGridRightEdge[" << 1+ilevel << "] = "
|
||||||
<< h*(gh.offset_abs(levelmin_+ilevel+1, 0)+gh.size( levelmin_+ilevel+1, 0 )) << " "
|
<< std::setw(16) << std::setprecision(10) << h*(gh.offset_abs(levelmin_+ilevel+1, 0)+gh.size( levelmin_+ilevel+1, 0 )) << " "
|
||||||
<< h*(gh.offset_abs(levelmin_+ilevel+1, 1)+gh.size( levelmin_+ilevel+1, 1 )) << " "
|
<< std::setw(16) << std::setprecision(10) << h*(gh.offset_abs(levelmin_+ilevel+1, 1)+gh.size( levelmin_+ilevel+1, 1 )) << " "
|
||||||
<< h*(gh.offset_abs(levelmin_+ilevel+1, 2)+gh.size( levelmin_+ilevel+1, 2 )) << "\n"
|
<< std::setw(16) << std::setprecision(10) << h*(gh.offset_abs(levelmin_+ilevel+1, 2)+gh.size( levelmin_+ilevel+1, 2 )) << "\n"
|
||||||
|
|
||||||
<< "CosmologySimulationGridLevel[" << 1+ilevel << "] = " << 1+ilevel << "\n";
|
<< "CosmologySimulationGridLevel[" << 1+ilevel << "] = " << 1+ilevel << "\n";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue