| #
6d0190e2
|
| 24-Jun-2022 |
James Wright <james@jameswright.xyz> |
fluids: Implement dirichlet bcs via libCEED
|
| #
68ae065a
|
| 07-Jun-2022 |
James Wright <james@jameswright.xyz> |
examples/fluids: Viscous flux for BoundaryIntegral jacobian
|
| #
b01ba163
|
| 10-Jun-2022 |
James Wright <james@jameswright.xyz> |
examples/fluids: Add viscous flux to POutflow Jacobian
|
| #
7d63e3e6
|
| 05-Jun-2022 |
James Wright <james@jameswright.xyz> |
examples/fluids: Cleanup code
- Code either commented out, or left over from previous debugging
|
| #
dd64951c
|
| 03-Jun-2022 |
James Wright <james@jameswright.xyz> |
examples/fluids: Pass solution gradient to boundary QFs
|
| #
92766122
|
| 08-Jun-2022 |
Jeremy L Thompson <jeremy@jeremylt.org> |
Merge pull request #986 from CEED/leila/fluids-fix-memleak
Fluids - Fix memory leak
|
| #
e22e0f1c
|
| 08-Jun-2022 |
Leila Ghaffari <Leila.Ghaffari@colorado.edu> |
examples/fluids: destroy ceed object
|
| #
26c6b0c3
|
| 06-Jun-2022 |
Jed Brown <jed@jedbrown.org> |
Merge pull request #962 from CEED/jed/fluids-jacobian
examples/fluids: add analytic Jacobian
|
| #
2556a851
|
| 24-May-2022 |
Jed Brown <jed@jedbrown.org> |
examples/fluids: fix zero-size Jacobian data and STG
Use -snes_fd_color for now because STG inflow Jacobian isn't implemented.
|
| #
f0b65372
|
| 13-May-2022 |
Jed Brown <jed@jedbrown.org> |
examples/fluids: add IJacobian for SUPG
I think this is exact for Galerkin on channel.yaml and blasius.yaml. Specifically, SNES converges almost perfectly in this test than when -snes_mf_operator is
examples/fluids: add IJacobian for SUPG
I think this is exact for Galerkin on channel.yaml and blasius.yaml. Specifically, SNES converges almost perfectly in this test than when -snes_mf_operator is added.
-options_file examples/fluids/channel.yaml -snes_monitor -ksp_converged_reason -stab none -ts_max_steps 3 -newtonian_unit_tests -ksp_rtol 1e-10 -order 2 -ts_dt 3e-6 -pc_type lu
I say "think" because something is fishy with the viscous energy term velocity*stress. If I disable that term, then convergence is clearly better with the analytic Jacobian (makes sense because it's accuracy is machine epsilon) than with -snes_mf_operator. This is unexpected, but the difference is near the limit of numerical stability so I'm not confident it's wrong. Also, the term itself is so simple.
The Jacobian is inexact for SUPG in that Tau_d is frozen.
WIP: examples/fluids: support MatShell and Blasius_Inflow_Jacobian
show more ...
|
| #
752f40e3
|
| 12-May-2022 |
Jed Brown <jed@jedbrown.org> |
examples/fluids: record state and tau in preparation for Jacobian
Change notation from dq to Grad_q so that dq can be used consistently as variations.
|
| #
395c96d3
|
| 12-May-2022 |
Jed Brown <jed@jedbrown.org> |
examples/fluids: GetRestrictionForDomain accept NULL arguments
|
| #
4f340167
|
| 10-May-2022 |
Jed Brown <jed@jedbrown.org> |
Merge pull request #958 from CEED/jed/fluids-cleaning
examples/fluids cleaning
|
| #
c848b8b7
|
| 10-May-2022 |
Jed Brown <jed@jedbrown.org> |
examples/fluids: reduce prevalance of top-level setup_ctx
|
| #
15a3537e
|
| 09-May-2022 |
Jed Brown <jed@jedbrown.org> |
examples/fluids: consolidate two-step setup
Contexts are created in one place now and we have removed duplicate struct definitions for physics.
|
| #
9785fe93
|
| 09-May-2022 |
Jed Brown <jed@jedbrown.org> |
examples/fluids: create struct in Problem for each qfunction + related
This is a cosmetic step toward better modularity.
|
| #
bb8a0c61
|
| 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 ...
|
| #
92ada588
|
| 20-Apr-2022 |
James Wright <james@jameswright.xyz> |
examples/fluids: Set ctx->time via context fields
|
| #
727da7e7
|
| 17-Mar-2022 |
Jeremy L Thompson <jeremy@jeremylt.org> |
minor - update copyright headers
|
| #
29a7d9ec
|
| 02-Feb-2022 |
Leila Ghaffari <49916147+LeilaGhaffari@users.noreply.github.com> |
Merge pull request #881 from CEED/leila/fluids-mesh
Fluids - Update mesh creating and remove problem-specific BCs
|
| #
002797a3
|
| 11-Jan-2022 |
Leila Ghaffari <Leila.Ghaffari@colorado.edu> |
Set BCs in CL options
Factor out euler_outflow QFunction to be used in different problem cases
|
| #
05a512bd
|
| 30-Dec-2021 |
Leila Ghaffari <Leila.Ghaffari@colorado.edu> |
Use DMCreate() to create mesh instead of DMPlexCreateBoxMesh()
|
| #
1c2e9307
|
| 20-Jan-2022 |
Jeremy L Thompson <jeremy@jeremylt.org> |
Merge pull request #877 from CEED/jeremy/field-names-for-people
Make qf/op field names human readable
|
| #
3b1e209b
|
| 20-Jan-2022 |
Jeremy L Thompson <jeremy@jeremylt.org> |
style - make qf/op field names human readable
|
| #
6b1ccf21
|
| 04-Jan-2022 |
Jeremy L Thompson <jeremy@jeremylt.org> |
petsc - use DMPlexGetLocalOffsets for building restrictions
|