Skip to content

Commit

Permalink
Merge branch 'AMReX-Fluids:development' into vof
Browse files Browse the repository at this point in the history
  • Loading branch information
IFDL-WSU authored Oct 2, 2024
2 parents c8e1cd3 + e8f071a commit 3971e64
Show file tree
Hide file tree
Showing 6 changed files with 49 additions and 23 deletions.
3 changes: 1 addition & 2 deletions .github/workflows/codespell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ concurrency:

jobs:
codespell:
runs-on: ubuntu-latest

runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ concurrency:

jobs:
build-and-deploy:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down
3 changes: 3 additions & 0 deletions Docs/sphinx_documentation/source/InputsAlgorithm.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ The following inputs must be preceded by "incflo."
+----------------------+-----------------------------------------------------------------------+-------------+--------------+
| mu_s | scalar diffusivity | Real(s) | 0.0 |
+----------------------+-----------------------------------------------------------------------+-------------+--------------+
| use_cc_proj | Use cell-centered rather than nodal pressure; this changes the | bool | false |
| | which approximate projection we use | | |
+----------------------+-----------------------------------------------------------------------+-------------+--------------+
| use_tensor_solve | In velocity solve, use multicomponent :math:`\nabla \cdot \tau` | bool | true |
| | otherwise use separate solves for each velocity component | | |
+----------------------+-----------------------------------------------------------------------+-------------+--------------+
Expand Down
42 changes: 25 additions & 17 deletions src/incflo.H
Original file line number Diff line number Diff line change
Expand Up @@ -281,23 +281,31 @@ public:
//
///////////////////////////////////////////////////////////////////////////

void ApplyProjection( amrex::Vector<amrex::MultiFab const*> const& density,
AMREX_D_DECL(amrex::Vector<amrex::MultiFab*> const& u_mac,
amrex::Vector<amrex::MultiFab*> const& v_mac,
amrex::Vector<amrex::MultiFab*> const& w_mac),
amrex::Real time, amrex::Real scaling_factor, bool incremental);
void ApplyNodalProjection(amrex::Vector<amrex::MultiFab const*> density,
amrex::Real time, amrex::Real scaling_factor, bool incremental);
void ApplyNodalProjection(amrex::Vector<amrex::MultiFab const*> const& density,
amrex::Vector<amrex::MultiFab *> vel,
amrex::Vector<amrex::MultiFab *> const& divu_Source,
amrex::Real time, amrex::Real scaling_factor, bool incremental,
bool set_inflow_bc);
void ApplyCCProjection(amrex::Vector<amrex::MultiFab const*> density,
AMREX_D_DECL(amrex::Vector<amrex::MultiFab*> const& u_mac,
amrex::Vector<amrex::MultiFab*> const& v_mac,
amrex::Vector<amrex::MultiFab*> const& w_mac),
amrex::Real time, amrex::Real scaling_factor, bool incremental);
void ApplyProjection ( amrex::Vector<amrex::MultiFab const*> const& density,
AMREX_D_DECL(amrex::Vector<amrex::MultiFab*> const& u_mac,
amrex::Vector<amrex::MultiFab*> const& v_mac,
amrex::Vector<amrex::MultiFab*> const& w_mac),
amrex::Real time, amrex::Real scaling_factor, bool incremental);

void ApplyProjection (amrex::Vector<amrex::MultiFab const*> const& density,
amrex::Vector<amrex::MultiFab *> const& vel,
amrex::Vector<amrex::MultiFab *> const& divu_Source,
amrex::Real time, amrex::Real scaling_factor, bool incremental,
bool set_inflow_bc);

void ApplyNodalProjection (amrex::Vector<amrex::MultiFab const*> density,
amrex::Real time, amrex::Real scaling_factor, bool incremental);
void ApplyNodalProjection (amrex::Vector<amrex::MultiFab const*> const& density,
amrex::Vector<amrex::MultiFab *> vel,
amrex::Vector<amrex::MultiFab *> const& divu_Source,
amrex::Real time, amrex::Real scaling_factor, bool incremental,
bool set_inflow_bc);

void ApplyCCProjection (amrex::Vector<amrex::MultiFab const*> density,
AMREX_D_DECL(amrex::Vector<amrex::MultiFab*> const& u_mac,
amrex::Vector<amrex::MultiFab*> const& v_mac,
amrex::Vector<amrex::MultiFab*> const& w_mac),
amrex::Real time, amrex::Real scaling_factor, bool incremental);

///////////////////////////////////////////////////////////////////////////
//
Expand Down
15 changes: 15 additions & 0 deletions src/incflo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,22 @@ incflo::ApplyProjection (Vector<MultiFab const*> const& density,
time,scaling_factor,incremental);
}
else
{
ApplyNodalProjection(density,time,scaling_factor,incremental);
}
}

void
incflo::ApplyProjection (Vector<MultiFab const*> const& density,
Vector<MultiFab *> const& vel,
Vector<MultiFab *> const& divu_Source,
Real time, Real scaling_factor, bool incremental,
bool set_inflow_bc)
{
AMREX_ALWAYS_ASSERT("This is not yet coded for ccproj!");

ApplyNodalProjection(density, vel, divu_Source, time, scaling_factor,
incremental, set_inflow_bc);
}

// Make a new level from scratch using provided BoxArray and DistributionMapping.
Expand Down
7 changes: 4 additions & 3 deletions src/setup/init.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -476,9 +476,10 @@ void incflo::InitialPressureProjection()
// Always zero this here
Vector<MultiFab*> Source(finest_level+1, nullptr);

ApplyProjection(get_density_new_const(),
AMREX_D_DECL(GetVecOfPtrs(u_mac_tmp), GetVecOfPtrs(v_mac_tmp),
GetVecOfPtrs(w_mac_tmp)),m_cur_time,dummy_dt,false);
// FIXME FIXME FIXME - THIS ONLY WORKS RIGHT FOR NODAL PROJ
ApplyProjection(get_density_new_const(), GetVecOfPtrs(vel), Source,
m_cur_time, dummy_dt, false /*incremental*/,
true /*set_inflow_bc*/);
}

#ifdef AMREX_USE_EB
Expand Down

0 comments on commit 3971e64

Please sign in to comment.