| 88626eed | 30-Apr-2022 |
James Wright <james@jameswright.xyz> |
feat: Add blasius boundary layer and channel flow examples to examples/fluids (#942)
* examples/fluids: Upload current case for collaboration
* examples/fluids: Replace developing BL with duct
feat: Add blasius boundary layer and channel flow examples to examples/fluids (#942)
* examples/fluids: Upload current case for collaboration
* examples/fluids: Replace developing BL with duct
* examples/fluids: Allow density to "float" at inflow
* fix: Add u_normal
* examples/fluids: bug fix in density flux
* examples/fluids: implement "floating" pressure; prescribed u, T
* examples/fluids: fixing initialization
We need has_neumann=true to get the weak boundary integrals called. It
is initialized in problem->setup_ctx and used in SetupLibceed(). This is
a hack to always apply.
* examples/fluids: include kinetic energy in Blasius IC
* examples/fluids: Blasius quasi-2D (slip in z planes)
* feat: Add Exact_Channel function
* feat: Use Exact_Channel for IC and Inflow
* examples/fluids: Add channel example
* examples/fluids: Define mu in blasius.c, cleanup
* examples/fluid: Add Blasius solution calculator
* examples/fluids: Add blasius IC and BCs
* Convert to implicit TS
* examples/fluids: Update blasius.yaml
* Move to ChannelContext, refactor DC and newtonian
- Added a dedicated ChannelContext, which allows for user setting of
flow parameters and consistent sharing of parameters between
QFunctions (instead of hardcoding)
- Moved density current (DC) specific settings from newtonian.c
densitycurrent.c
* Make gravity into vector quantity
* Add in body force for channel
* examples/fluids: remove explicitly setting coordinate field
This is created automatically now by DMPlex and DMProjectCoordinates
breaks (localized) periodicity, resulting in a tangled mesh.
* examples/fluids: transpose flux Jacobian in SUPG stabilization
* examples/fluids: update docs commensurate with flux Jacobian transpose fix
* examples/fluids: work on docs for tau
* examples/fluids: Increase blasius Re, implement Xi to SUPG
- Increased the Uinf and mu by 4x for the blasius problem
- Implemented the calculation of Xi for the SUPG term in newtonian.h
* examples/fluids: Remove flux jacobian transpose
- Removed for both eulervortex.h and newtonian.h
* examples/fluids: Reset Newtonian unit scaling to neutral
- Note that this resets the scaling for the densitycurrent problem,
thus the examples (and possibly tests) will probably need to be
changed
* examples/fluids: fix PetscOptionsBegin for new PETSc
* feat: Add slanted domain top surface
* feat: Add graded mesh option for blasius
* fix: Correct inflow boundary condition handling
* feat: Move to blasius_context, add CLI options
* feat: Move Blasius to physical air properties
* fix: Blasius profile and mesh generation
- Add the correct float->int rounding
- Fix eta to a value after exceeding the table's bounds
fix: Add fix eta after exceeding table
* examples/fluids: Move to physical mu default, fix tests
* doc: Add minimum documentation for channel and blasius
* examples/fluids: Add primitive jacobian and tau
- Also add misc comments
* examples/fluids: propose alternative flux Jacobian via prim-to-conservative
* examples/fluids: Add PHASTA diagonal tau
* fix: Add back in timestep obtaining
* examples/fluids: Add analytic tractions to inflow and outflow
- This is a stop-gap until viscous flux can be computed properly on the
boundary from current solution.
- Tau constants in a state of flux still but this produced a decent v at
inflow and outflow, removing the steep dive caused by forcing
dv/dx=-du/dy from a zero traction of omission.
* examples/fluids: CLI options for diagonal c_tau's
* examples/fluids: Update dt via context labels
* feat: Add more blasius table points
* examples/fluids: Cleanup stab and adjust Ctau_E
* examples/fluids: Replace spatial tau with diagonal
* examples/fluids: Fix stab in Euler
- Initialize `stab` to zero, add sum over loop
* examples/fluids: Document diagonal tau formulation
* examples/fluids: Fix compiler warnings
* examples/fluids: check error codes and elide unused header
* examples/fluids: Correct blasius example CLI
- Also add mention of the `blasius.yaml` file
* examples/fluids: Add supg to default blasius.yaml
* examples/fluids: Use yaml for channel and blasius
- Instead of long CLI options
- Also cleaned up the yaml formatting
- Added Cartesian directions to the faceMarker names
* examples/fluids: Show example yamls in README
Co-authored-by: Jed Brown <jed@jedbrown.org>
Co-authored-by: Kenneth E. Jansen <Kenneth.Jansen@colorado.edu>
show more ...
|