Skip to content

Commit

Permalink
Merge branch 'main' into fix_typo_cooling
Browse files Browse the repository at this point in the history
  • Loading branch information
Yurlungur authored Dec 13, 2023
2 parents 4a34543 + 0aaac0c commit 025316e
Show file tree
Hide file tree
Showing 63 changed files with 11,421 additions and 1,256 deletions.
10,002 changes: 10,002 additions & 0 deletions Data/converted_ADM_homologouscollapse10000.dat

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion external/parthenon
6 changes: 4 additions & 2 deletions inputs/advection.pin
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,8 @@ Cv = 1.0

<physics>
hydro = true
rad = false
tracers = false

<fluid>
xorder = 2
Expand All @@ -93,8 +95,8 @@ c2p_max_iter = 100
Ye = true

<advection>
rho = 1
u = 1
rho = 1.0
u = 1.0
vx = 0.5
vy = 0.5
vz = 0.5
Expand Down
21 changes: 6 additions & 15 deletions inputs/homologous.pin
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
# publicly and display publicly, and to permit others to do so.



<phoebus>
problem = homologous
ix1_bc = reflect
Expand Down Expand Up @@ -39,13 +40,6 @@ variables = p.density, &
g.c.dg, &
g.c.dalpha, &
flux_divergence, &
monopole_gr::a, &
monopole_gr::Krr, &
monopole_gr::alpha, &
monopole_gr::rho_ADM, &
monopole_gr::j_ADM, &
monopole_gr::TrcS_ADM, &
monopole_gr::Srr_ADM, &
src_terms

file_type = hdf5 # Tabular data dump
Expand All @@ -67,7 +61,7 @@ nghost = 4
#refinement = adaptive
numlevel = 3

nx1 = 500 # Number of zones in X1-direction
nx1 = 10000 # Number of zones in X1-direction
x1min = 0 # minimum value of X1
x1max = 0.10086475522209183 # maximum value of X1
ix1_bc = user # Inner-X1 boundary condition flag
Expand All @@ -88,7 +82,7 @@ ox3_bc = periodic # Outer-X3 boundary condition flfgag
num_threads = 1 # maximum number of OMP threads

<parthenon/meshblock>
nx1 = 500
nx1 = 2500
nx2 = 1
nx3 = 1

Expand All @@ -97,7 +91,6 @@ field = c.c.bulk.rho
method = derivative_order_1
max_level = 3


<eos>
type = IdealGas
Gamma = 1.33334
Expand All @@ -117,23 +110,21 @@ recon = weno5
c2p_max_iter = 1000
Ye = false


<fixup>
enable_floors = true
enable_ceilings = true
enable_flux_fixup = true
enable_c2p_fixup = true
floor_type = ConstantRhoSie
rho0_floor = 1.0e-5
sie0_floor = 3.982563941315319e-05
sie0_floor = 3.982563941315319e-07
ceiling_type = ConstantGamSie
sie0_ceiling = 10.0;
gam0_ceiling = 10.0;

<monopole_gr>
enabled = true
allocate_on_grid = true
npoints = 501
npoints = 10001
rout = 0.10086475522209183
# Disables time derivatives. Runs only at initialization
force_static = false
Expand All @@ -151,4 +142,4 @@ dtwarn_eps = 1e-5

<progenitor>
enabled=true
tablepath=converted_ADM_homologouscollapse10000.dat ### NEED TO CHANGE ONCE WE WILL ADD DATA DIRECTORY
tablepath=../Data/converted_ADM_homologouscollapse10000.dat
58 changes: 30 additions & 28 deletions src/analysis/history.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,19 +24,19 @@ Real ReduceMassAccretionRate(MeshData<Real> *md) {
const auto jb = md->GetBoundsJ(IndexDomain::interior);
const auto kb = md->GetBoundsK(IndexDomain::interior);

auto pmb = md->GetParentPointer();
auto &pars = pmb->packages.Get("geometry")->AllParams();
Mesh *pmesh = md->GetMeshPointer();
auto &pars = pmesh->packages.Get("geometry")->AllParams();
const Real xh = pars.Get<Real>("xh");

namespace p = fluid_prim;
const std::vector<std::string> vars({p::density, p::velocity});
const std::vector<std::string> vars({p::density::name(), p::velocity::name()});

PackIndexMap imap;
auto pack = md->PackVariables(vars, imap);

const int prho = imap[p::density].first;
const int pvel_lo = imap[p::velocity].first;
const int pvel_hi = imap[p::velocity].second;
const int prho = imap[p::density::name()].first;
const int pvel_lo = imap[p::velocity::name()].first;
const int pvel_hi = imap[p::velocity::name()].second;

auto geom = Geometry::GetCoordinateSystem(md);

Expand Down Expand Up @@ -73,25 +73,26 @@ Real ReduceJetEnergyFlux(MeshData<Real> *md) {
const auto jb = md->GetBoundsJ(IndexDomain::interior);
const auto kb = md->GetBoundsK(IndexDomain::interior);

auto pmb = md->GetParentPointer();
auto &pars = pmb->packages.Get("geometry")->AllParams();
Mesh *pmesh = md->GetMeshPointer();
auto &pars = pmesh->packages.Get("geometry")->AllParams();
const Real xh = pars.Get<Real>("xh");

namespace p = fluid_prim;
const std::vector<std::string> vars({p::density, p::bfield, p::velocity});
const std::vector<std::string> vars(
{p::density::name(), p::bfield::name(), p::velocity::name()});

PackIndexMap imap;
auto pack = md->PackVariables(vars, imap);

const int prho = imap[p::density].first;
const int pvel_lo = imap[p::velocity].first;
const int pvel_hi = imap[p::velocity].second;
const int pb_lo = imap[p::bfield].first;
const int pb_hi = imap[p::bfield].second;
const int prho = imap[p::density::name()].first;
const int pvel_lo = imap[p::velocity::name()].first;
const int pvel_hi = imap[p::velocity::name()].second;
const int pb_lo = imap[p::bfield::name()].first;
const int pb_hi = imap[p::bfield::name()].second;

auto geom = Geometry::GetCoordinateSystem(md);

const Real sigma_cutoff = pmb->packages.Get("fluid")->Param<Real>("sigma_cutoff");
const Real sigma_cutoff = pmesh->packages.Get("fluid")->Param<Real>("sigma_cutoff");

Real result = 0.0;
parthenon::par_reduce(
Expand Down Expand Up @@ -132,25 +133,26 @@ Real ReduceJetMomentumFlux(MeshData<Real> *md) {
const auto jb = md->GetBoundsJ(IndexDomain::interior);
const auto kb = md->GetBoundsK(IndexDomain::interior);

auto pmb = md->GetParentPointer();
auto &pars = pmb->packages.Get("geometry")->AllParams();
Mesh *pmesh = md->GetMeshPointer();
auto &pars = pmesh->packages.Get("geometry")->AllParams();
const Real xh = pars.Get<Real>("xh");

namespace p = fluid_prim;
const std::vector<std::string> vars({p::density, p::bfield, p::velocity});
const std::vector<std::string> vars(
{p::density::name(), p::bfield::name(), p::velocity::name()});

PackIndexMap imap;
auto pack = md->PackVariables(vars, imap);

const int prho = imap[p::density].first;
const int pvel_lo = imap[p::velocity].first;
const int pvel_hi = imap[p::velocity].second;
const int pb_lo = imap[p::bfield].first;
const int pb_hi = imap[p::bfield].second;
const int prho = imap[p::density::name()].first;
const int pvel_lo = imap[p::velocity::name()].first;
const int pvel_hi = imap[p::velocity::name()].second;
const int pb_lo = imap[p::bfield::name()].first;
const int pb_hi = imap[p::bfield::name()].second;

auto geom = Geometry::GetCoordinateSystem(md);

const Real sigma_cutoff = pmb->packages.Get("fluid")->Param<Real>("sigma_cutoff");
const Real sigma_cutoff = pmesh->packages.Get("fluid")->Param<Real>("sigma_cutoff");

Real result = 0.0;
parthenon::par_reduce(
Expand Down Expand Up @@ -191,17 +193,17 @@ Real ReduceMagneticFluxPhi(MeshData<Real> *md) {
const auto jb = md->GetBoundsJ(IndexDomain::interior);
const auto kb = md->GetBoundsK(IndexDomain::interior);

auto pmb = md->GetParentPointer();
auto &pars = pmb->packages.Get("geometry")->AllParams();
Mesh *pmesh = md->GetMeshPointer();
auto &pars = pmesh->packages.Get("geometry")->AllParams();
const Real xh = pars.Get<Real>("xh");

namespace c = fluid_cons;
const std::vector<std::string> vars({c::bfield});
const std::vector<std::string> vars({c::bfield::name()});

PackIndexMap imap;
auto pack = md->PackVariables(vars, imap);

const int cb_lo = imap[c::bfield].first;
const int cb_lo = imap[c::bfield::name()].first;

auto geom = Geometry::GetCoordinateSystem(md);

Expand Down
Loading

0 comments on commit 025316e

Please sign in to comment.