History log of /libCEED/examples/fluids/problems/newtonian.c (Results 101 – 121 of 121)
Revision Date Author Comments
# f60cdb1d 21-Jun-2022 Jeremy L Thompson <jeremy@jeremylt.org>

Merge pull request #991 from CEED/jeremy/memcheck-qf-ctx

Memcheck QFContext


# 17ce10fa 15-Jun-2022 Jeremy L Thompson <jeremy@jeremylt.org>

fluids - fix setup context data misuse


# bf2a3812 08-Jun-2022 Jeremy L Thompson <jeremy@jeremylt.org>

Merge pull request #986 from CEED/leila/fluids-fix-memleak

Fluids - Fix memory leak


# 6ef2784e 08-Jun-2022 Leila Ghaffari <Leila.Ghaffari@colorado.edu>

examples/fluids: minor - style


# 502edf57 06-Jun-2022 Jed Brown <jed@jedbrown.org>

Merge pull request #962 from CEED/jed/fluids-jacobian

examples/fluids: add analytic Jacobian


# a1df05f8 05-Jun-2022 Jed Brown <jed@jedbrown.org>

examples/fluids: document developer options


# 3c4b7af6 23-May-2022 Jed Brown <jed@jedbrown.org>

Merge branch 'main' into jed/fluids-jacobian

* main:
Fluids - Add STG inflow (#868)
ci - fix Nek5000 testing


# ba6664ae 22-May-2022 James Wright <james@jameswright.xyz>

Fluids - Add STG inflow (#868)

* doc(fluids): Add STG equations

* doc(fluids): Add basic data flow for STG

* doc(fluids): Add Shur et al. 2014 STG paper to bib

* doc(fluids): Specify STG in

Fluids - Add STG inflow (#868)

* doc(fluids): Add STG equations

* doc(fluids): Add basic data flow for STG

* doc(fluids): Add Shur et al. 2014 STG paper to bib

* doc(fluids): Specify STG inputs files, misc additions

* doc(fluids): Add intro for STG section

* fix(fluids): Add #include ceed.h for qfunctions

- In the spirit of "include what you use"

* feat(fluids): Start work on stg_shur14.h

* doc-fix: Correct kappa_min definition

* Move STG setup functions to problems/stg_shur14

* feat: Add cholesky decomposition function

* fix: Correct stg_ctx malloc, reorganize creation

Co-authored-by: Jed Brown <jed@jedbrown.org>

* fix(fluids): Correct return values of functions

* style: Fix up style

* feat(fluids): Get file paths from PetscOptions

- Also convert SetupSTGContext to return PetscErrorCode

* fix(fluids): Correct stg_ctx dereferencing

- Also move to size_t for type of the offsets

* feat(fluids): Add funcs for processing STG*.dat files

* feat(fluids): Move to PetscOptions* for STG flags

* feat: Use `PetscMax` instead of macro

* fix(fluids): Correct/Refactor file reading functions

- Move to `PetscSynchronizedFGets`
- Remove `inline`
- Pass `comm` between functions
- Add `OpenPHASTADatFile` to DRY

* docs(fluids): Fix equation typo

* fix(fluids): Correct calculation of kappa

* feat(fluids): Complete STGShur14_Calc

* feat(fluids): Add InterpolateProfile helper func

* feat(fluids): Add CalcSpectrum helper func

* feat(fluids): Add to STGShur14_Calc qfunction

* fix: Add M_PI, Update SETERRQ functions

- Also update style

* fix: Correct interpolation outside of datarange

* fix: Add missing definition for ke in CalcSpectrum

* feat: Migrate context and func signatures, Misc

- Create SetupSTGContext to be run in another Setup_____Context
function
- Migrate STGShur14Context, CreateSTGContext, and SetupSTGContext
signatures to navierstokes.h
- Add STG contexts to Physics and CeedData
- Add missing CHKERRQ to PetscFClose
- Move to SPDX license headers

* examples/fluids: Pass solution time via context label

* feat: Implement STG boundary integral

- Add theta0 and implicit members to STGShur14Context
- Tested via implementation to the blasius BL problem (though this will
probably go against the code history)

* feat: Fix STG Stuff

* feat: Implement STG inflow for blasius BL

- Note that fluctuations are turned off in this case

* examples/fluids: Add stg_mean_only flag

* examples/fluids: Check cholesky decomp for nans

- Also correct locaiton of cholesky decomposition in ReadSTGInflow()

* examples/fluids: Correct STG documentation

- Missing a 2 sqrt(3/2) factor and didn't take square root of q

* examples/fluids: Fix STGShur14_Calc

- Given the calculated spectrum, calculation of v' and u' verified
against python implementation (which was validated previously against
PHASTA)

* examples/fluids: Calc dXdx for boundary QFunctions

- Also calculate h from the dXdx in STGShur14_Inflow
- Replace h[0] result with constant dx spacing

* examples/fluids: Fix STG Spectra calcualtion

* examples/fluids: Fix build errors

- Ran into an include cycle collision that resulted in over-defining
SetupContext in advection.c
- newtonian_types.h (which has SetupContext defined) ->
stg_shur14_type.h -> navierstokes.h -> advection.c

* examples/fluids: Update and fix documentation

* examples/fluids: Correct dXdx comment, leave TODO

Co-authored-by: Jed Brown <jed@jedbrown.org>

* examples/fluids: Minor bib citation edits

Co-authored-by: Jed Brown <jed@jedbrown.org>

* examples/fluids: Add STGInflow.dat, fix blasius.yaml

* examples/fluids: int -> PetscInt | CeedInt

* examples/fluids: Style

* examples/fluids: Make Boolean names verb_noun format

- Also changes the stg flag to `-stg_use`

* examples/fluids: Add STG test

* examples/fluids: Style fix up

* examples/fluids: Update docs

* examples/fluids: Implement weakT option for STG

* examples/fluids: Fix casting for ROCm

* examples/fluids: avoid PETSc dependency in qfunctions

* examples/fluids: header cleanup

* backends/hip: avoid redundant inline

* examples/fluids: avoid VLA in qfunctions

GPUs don't like VLA and some compilers reject it when targeting GPUs.

* examples/fluids: Create STG_NMODES_MAX

* examples/fluids: Refactor stg setup out of blasius.c

* examples/fluids: Fix misc GPU bugs

Co-authored-by: Jed Brown <jed@jedbrown.org>

show more ...


# e334ad8f 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 ...


# 5c677226 11-May-2022 Jed Brown <jed@jedbrown.org>

examples/fluids: factor Newtonian with better helpers


# 0228c988 10-May-2022 Jed Brown <jed@jedbrown.org>

Merge pull request #958 from CEED/jed/fluids-cleaning

examples/fluids cleaning


# a0add3c9 10-May-2022 Jed Brown <jed@jedbrown.org>

examples/fluids: make setup contexts independent

These are now private to each example and can be developed independently.


# b1289648 10-May-2022 Jed Brown <jed@jedbrown.org>

examples/fluids: remove setup_ctx from printing


# 841e4c73 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.


# 91e5af17 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.


# 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 ...


# 11dfcfe2 13-Apr-2022 Jed Brown <jed@jedbrown.org>

Merge pull request #940 from CEED/jeremy/petsc-options

petsc - update for PetscOptionsBegin/End


# 67490bc6 13-Apr-2022 Jeremy L Thompson <jeremy@jeremylt.org>

petsc - update for PetscOptionsBegin/End


# ce18bed9 17-Mar-2022 Jeremy L Thompson <jeremy@jeremylt.org>

Merge pull request #858 from CEED/jeremy/dump-copy-stuff

Strip redundant/outdated license info duplication


# 3d8e8822 17-Mar-2022 Jeremy L Thompson <jeremy@jeremylt.org>

minor - update copyright headers


# 88b783a1 05-Mar-2022 James Wright <james@jameswright.xyz>

Extract generic Navier-Stokes code into 'newtonian.h' (#903)

* feat(fluids): Extract newtownian.h from DC problem

- Also trade out `int` for `StabilizationType` enum

* style: Fix parameter sp

Extract generic Navier-Stokes code into 'newtonian.h' (#903)

* feat(fluids): Extract newtownian.h from DC problem

- Also trade out `int` for `StabilizationType` enum

* style: Fix parameter spacing

* feat: Move generic setup from DC -> newtonian

- Includes moving from `DCContext` to `NewtonianIdealGasContext` at
appropriate locations

* feat: Add "still" IC for generic Newtonian IG problems

* feat: Move SetupContext from DC -> newtonian.c

* fix: Remove unused variables, general cleanup

* examples/fluids: remove unnecessary includes

* examples/fluids: copy declarations to make newtonian.h self-contained

* examples/fluids: full name for context

Co-authored-by: Jed Brown <jed@jedbrown.org>

show more ...


12345