Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow calculation of CFL frequency in surface kernels #175

Merged
merged 5 commits into from
Jul 26, 2023

Commits on Jul 19, 2023

  1. Some of the equation objects, such as gyrokinetics, benefit from a CF…

    …L computation which is done based on *surface* values of the phase space flux. However, the evaluation of the phase space flux inside the surfaces is an extremely costly endeavor, measured at upwards of 25% of the total update for gyrokinetics in 3x2v.
    
    Since the phase space flux has to be evaluated at surfaces anyway, we will implement a modification to hyper_dg which returns the CFL from the surface updates. This will be highly disruptive, as it will involve modification to a large percentage of our kernels (but mostly a search and replace). Basic idea implemented in hyper_dg (does not currently build)
    JunoRavin committed Jul 19, 2023
    Configuration menu
    Copy the full SHA
    d748edc View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2023

  1. Modify all surface kernels to support returning the CFL frequency fro…

    …m the surface kernels. Return CFL frequency from GK surface kernels instead of volume. Code compiles on my mac, but haven't yet checked unit/reg tests (gkylcas d44142f304d7b0e8e9e263741250d763e537d076).
    manauref committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    9bbc20f View commit details
    Browse the repository at this point in the history
  2. Rename a unit test. Relevant unit tests pass after surface kernel cha…

    …nge (but they probably don't all check for recorrectness of kernels. Will check some g2 reg tests before PRing.
    manauref committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    da2eca7 View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2023

  1. Fix euler_pkpm kernels/signatures and use. There'd been conflicts in …

    …previous commit (or maybe there hadn't been because I forgot to add new kernels) and I hadn't seen them. They are mostly related to inconsistent signatures. I made the following hack for now to get it working: L12 of zero/gkyl_dg_euler_pkpm.h I added moms, and L149-151 of zero/gkyl_dg_euler_pkpm_priv.h I added getching of moms. This may be incorrect, it's just a hack to get the system working. @JunoRavin will resolve conflicts later.
    manauref committed Jul 26, 2023
    Configuration menu
    Copy the full SHA
    767d5f6 View commit details
    Browse the repository at this point in the history
  2. Change the way the CFL frequency in the gyrokinetic surface kernels i…

    …s defined, eliminating the previous formula in favor of just taking the maximum absolute value over all quad points and left/right sides of a cell. Unfortunately it seems the time step has overall dropped by a factor of 1.5 (33%) still. Will explore a little more but wanna commit kernels for now.
    manauref committed Jul 26, 2023
    Configuration menu
    Copy the full SHA
    9910895 View commit details
    Browse the repository at this point in the history