- Feb 19, 2024
-
-
Florian Atteneder authored
* wip: stash some tov examples * update grhd ref tests to use c2p_freeze_atm_reset = false to restore previous behavior * init c2p_freeze_atm * fixup logic of freezing atm * introduce c2p_freeze_atm flag which allows to define when an atmosphere can propagate * fix time step computation to use maximum of smoothed_mu * rescale smoothed viscosity by the extrema of D * add more example parfiles for tov case * enable c2p_freeze_atm_reset option * add cons2prim_rescaled_spherical1d_freeze_flags * add c2p_freeze_atm_reset option * document perturbation_rho parameter * update examples * experiment with partially frozen c2p flags * don't bernstein in AV computation * add c2p with partially frozen reset flags * use buffers for logarithmic AV indicators * remove isinvalid * remove dead code * avoid splat constructor from CallbackSet * add punctuation to some parameter doc strings
-
- Feb 13, 2024
-
-
Florian Atteneder authored
* add more colors to highlight in which files comparisons failed * IntegrationTests: always use terminal coloring to highlight results * update update_test script * include substep outputting in some reftests * teach IntegrationTests about substep_output.h5 * add unit test * move substep savecallback logic into convert_to_remote_savecallback! only add remote savecallback when requested * enable substep output * introduce AbstractCallbackTrigger and CallbackTrigger * add parameters
-
- Feb 12, 2024
-
-
Florian Atteneder authored
* remove experiments folder * grhd_tov: add more slope limiter examples
-
Florian Atteneder authored
* add fv_tvb_mirrored.toml TOV example * add reftest fv_superbee_grhd_bondi_accretion * implement rhs_slope_limiter! * need init_ variables also for FV because of bdry conditions * no need to compute fluxes when setting up initial data * fixup callbacks * add fv_grhd_bondi_accretion reftest * a separate register! for FV * disambiguate rhs! dispatch * SRHD: remove unused variables from fv method * dispatch on mesh for register! * splice in fv method dispatch * add new parameters
-
Florian Atteneder authored
* SRHD: add reftest srhd_simple_wave_fv_tvb * SRHD: Implement slope limiter methods * SRHD: clean up c2p * SRHD: use Brent's method in c2p because A42 is currently bugged * only init relevant bdry variables * register more vars * wrap existing FV method as rhs_fv_central * thin out internal rhs! usage * organize rhs.jl * a registration for new hrsc method * rename _register_variables! to register! * add new parameters
-
- Feb 11, 2024
-
-
Florian Atteneder authored
* EulerEq: add more ref tests for FV slope limiters * EulerEq: rename hrsc option 'muscl' to 'slope_limiter' and implement more limiters * TCI: implement maxmod * EulerEq: compute max speed for each substep * add ref test fv_muscl_euler_isentropic_flow * fix doc string of LLF * TCI: make minmod non-allocating * log invalid dt * EulerEq: make muscl scheme run * EulerEq: PoC muscl scheme * EulerEq: run callbacks, initialdata only when certain variables are registered * EulerEq: Add LV dependency * evolve: init stages before capturing them * EulerEq: strip down rhs! args * rename _register_variables! to register! in EulerEq * add new parameters to EulerEq project * fix fn name * remove unused file * add reftest fv_muscl_burgers_sine * fixup muscl implementation; also make it work with arbitrary fluxes * fix parameter check * rename prm hrsc_omega to muscl_omega * add ref test for muscl scheme * implement muscl scheme * implement new parameters
-
- Feb 07, 2024
-
-
Florian Atteneder authored
* fix reftest output coloring when non interactive * add TODO branches for bdry conds * fixup check for coordinate signularity on grid * implement different bdry conditions for bondi and tov problem also update bondi reftest * more example parfiles * c2p: fix computation of W * make training wheel ID work independent of method * fix ID interpolation for FV method * cleanup fv_rhs.jl * skip symmetry imposition if signularity is not on grid * mirror TOV initial data for mirrored domains * add bernstein tov example * implement bernsteining * add missing cache wrapper for bdry variables * reconstruct dynamic variables after viscosity computation * add perturbation_rho parameter * add a D dependency to viscosity * allow to only evolve initial data in star's interior * add rho h W^2 variable for analysis * make initial viscosity work * allow slightly negative energies * pull out y0 from vr limiter in cons2prim * add training_wheels options which smooths initial dynamical variables * update example parfiles * update tov examples * wip: tinker with c2p and viscosity computation in atmospheric regions * filter AV from atmosphere cells * enable inflow condition on inner boundary * fix imposition of EoS bounds in cons2prim also disabling lower bracket adjustment, because it seems to be wrong with this the FV method can now run * cleanup cons2prim * wip: tinkering with cons2prim * compute AV for initial data * implement av_drag option * wip: tinker with c2p routine * add c2p analysis vars * stabilize origin of TOV with Neumann bdry conditions * implement entropy_variables_rescaled_spherical1d * use log(D) for MDA viscosity because it is more sensitive * fix maxspeed_rescaled_spherical1d * example parfile that allows to evolve the tov for quite a while * apply velocity limiter from dumbser at the end of cons2prim * fix maxspeed
-
- Jan 25, 2024
-
-
Florian Atteneder authored
* add update_test helper script * add ref test balancedburgers_kink_avmda * fix time step computation for AV method * simplify inf clipping * mda: use local instead of global speed to compute baseline av * favor likely case in if in mda computation * implement av dragging * add av_drag parameter * spice up IntergrationTests logging with colors * fix 0th order AV smoother * implement BalancedBurgers equation * fix fv stepping to also add dt to source term
-
- Jan 24, 2024
-
-
Florian Atteneder authored
* cleanup * rm old ERK evolutions * fixup fv ref tests * rename rk steppers to ode_step! * for FV methods forward dt from evolution via cache fixes mismatch in dt values that were used in the time stepper and the rhs functions the mismatch was caused by the time stepper always applying the CFL (and output callbacks could further shorten the proposed time step) eventually, this lead to wrong propagation speeds, which can be seen by the test results of fv_advection_sine (we expect same profile as initial data after two revolutions, but we actually saw 2.5) only add dt for FV evolutions * fixup kwarg forwarding in register_variables
-
- Jan 15, 2024
-
-
Florian Atteneder authored
* implement a minimal git dirty logging
-
Florian Atteneder authored
* restructure variable registration * implement rhs for av regularization * update callbacks * implement ldg and av regularization * mesh: forward more methods to cache * dispatch TODO error * forward Cache methods to Mesh * nospecialize setup and initialdata
-
- Jan 12, 2024
-
-
Florian Atteneder authored
* update examples once more * remove comments * cleanup: remove codegen for now * IntegartionTests: add grhd_tov_spherical1d ref test * IntegrationTests: remove reltol from grhd_bondi_accretion test * spherical1d: fix missing shift from maxspeed computation * cleanup * make spherical1d formulation work when r=0 is included by removing potential nans in source terms by enforcing symmetry * make impose_symmetry! dispatch on project * add tov example that runs with spherical1d formulation * wip: change maxspeed implementation for tov star initial data * cons2prim: use non-zero values for rho, eps thresholds * fix: set atm density in bondi_accretion initial data * implement tov initial data for spherical1d formulation * add formulation parameter * implement rhs for FVElement and rescaled_spherical1d * implement equations for FVElement and rescaled_spherical1d * mesh: implement differentiate for FVElement * add grhd example par files * update notebooks * fix missing lapse factor in source terms * fix typos * fixup initialdata setup * derivative computation needs jacobi * rename cons2prim routines * add atmosphering to cons2prim * implement rhs! for rescaled_spherical1d formulation * specialize timespeed computation based on equations * add specialized equations for the rescaled GRHD version * implement initialdata setup for tov case * spherical accretion:make sure K, Gamma agree with loaded data * expose spectral differentiation * wrap SphericalAccretion solver into module; recompute bondi_accretion.h5 with less radial points * refactor TOV solver to use OrdinaryDiffEq * initialdata: cleanup dir * add bondi accretion as ref test * fix up loading of id file * fv_rhs: implement fv_update_step! with source term * add ROOTDIR const global so that parfiles can specify paths relative to project root * update SphericalAccretion.jl * update sympy nb * cleanup initialdata setup * equations: fix up Tmunu computation * Revert "fix source term in dg and fv rhs computation" This reverts commit 161cc034. * Replace Interpolations.jl with BasicInterpolators.jl * equation: add missing flux terms to sources; use outflow bdry condition on inner radius * comments in cons2prim * implement momentum constraint for debugging * test SphericalAccretion - copy Bugner's C version of the solver - compare my results with Bugner's -- good agreement - compare against literature results (Papadopoulos 1998,1999) -- discrepancy in sign of vr, ur, otherwise good agreement * SphericalAccretion: fix wrong definition of uc^r and Vc * tweak impl more * fix source term in dg and fv rhs computation * fix equations and implement fv method * equations: combine flux and source computation * math: update spherical_accretion notebook * SRHD: export module * re-implemented GRHD eqs with a non-zero shift * initialdata: add grhd_source.codegen.jl that was generated with TensorComponents.jl * deps: need Interpolations.jl for initial data setup * update math/spherical_accretion.py * update setup * start initialdata setup for bondi problem * rework rhs.jl * update deps and parameters * update type defs * initialdata: add HDF5 dep; write h5 output for SphericalAccretion.jl * rename cons2prim.jl * remove unused files
-
- Jan 06, 2024
-
-
Florian Atteneder authored
@with_signature: only need one LineNumberNode per @accepts, @returns unpacking block (!100) * @with_signature: only need one LineNumberNode per @accepts, @returns unpacking block
-
Florian Atteneder authored
* @with_signature: Insert 'LineNumberNodes' when unpacking vectors
-
- Dec 31, 2023
-
-
Florian Atteneder authored
* remove Base.getproperty overloads for meshes
-
Florian Atteneder authored
* fixup Base.length definition for Mesh * fix unit tests * add the mesh arg (second_arg) as an ordinary argument into with_signature fn signature; also remove unused state_indices interface method * remove mesh kw from with_signature function signature * temporarily disable @timeit around broadcast_computation, because it introduces allocs * inline fn call in broadcast_computation to avoid allocs * use views and maximum(abs, ...) to avoid allocs * make min_grid_spacing dimension agnostic for FVElement * inline mesh helpers * more let arguments, just in case closure bug hits again ... * stop using properties of mesh * don't use absolute_maximum * parameterize Project on equation
-
Florian Atteneder authored
* remove rootfinders.jl and update unit tests * remove my rootfinder types * rework SphericalAccretion to use CairoMakie.jl and Roots.jl
-
Florian Atteneder authored
* remove variablesarray.jl; rename _VariablesDict to Variables
-
- Dec 30, 2023
-
-
Florian Atteneder authored
* fix up readme badges * update line coverage computation * remove unused tests: test_variables.jl * update coverage exclude patterns * rename project dg1dTests to UnitTests * remove BenchmarkTools from dg1dTests deps remove BenchmarkTools
-
Florian Atteneder authored
* rename new_broadcast_... to broadcast_...; also export broadcast_... methods * eliminate legac=false option * remove legacy option form @with_signature fixup default options * disable with_signature functions that used legacy version * evict all occurences of broadcast_(volume|faces|bdry)_2!
-
Florian Atteneder authored
* parameterize structs that contain an abstract Mesh
-
Florian Atteneder authored
* update ref test data srhd_simple_wave_avmda * fix up dispatch of register_variables; fix up smoothing on initial data * mda: use inplace operations * cons2prim: disable simd; disable atmosphering warning * update blastwave1/2 av mda examples * adjust tau when energy density exceeds lower bound * don't recompute max speed for timestep * determine initial viscosity using all dynamic variables as indicators * add blastwave1 example * add blastwave2 examples * fixup blastwave2 test; don't smooth FVElement mesh initial data * commit conservative_fixing experiments (not active) * cons2prim: temporarily error in case speed is too large * disable conservative_fixing again * change fixedprms in setup * fix domain assertion for blastwave1 test * add initial data smoother based on Bernsteining * do not recompute viscosity on initial data * modify examples * implement fd derivative again * implement covariant regularization * add prms to Project type * add example parfiles * update ref test data srhd_simple_wave_fv the difference is quite pronounced * use maximum of max_v instead of v for time step estimation * update ref test data srhd_simple_wave_avmda * compute cellmax_v properly; compute maxspeed in equation callback * implement sod shock tube initial data
-
- Dec 24, 2023
-
-
Florian Atteneder authored
* insert line number nodes for better stack traces
-
- Dec 19, 2023
-
-
Florian Atteneder authored
* add ref test srhd_simple_wave_avmda * undo some code deletion * special case FV method on entropy production computation * init EP for all setups * add entropy tci computation that can work with precomputed entropy production * add entropy viscosity computation that can work with precomputed entropy production * compute entropy production in equation callback * add ref test srhd_simple_wave_fv reset ref data for srhd_simple_wave_fv
-
Florian Atteneder authored
* update ref test increase resolution ref test increase tol for ref test and lower resolution * add ref test srhd_simple_wave_fv * implement FV version for SRHD eqs * simplify timestep computation * initial data setup functions need to take a mesh
-
- Dec 18, 2023
-
-
Florian Atteneder authored
* fixup speed computation burgers eq * fix upload logic for diffoutput uploading * update ref test data * migrate all implementations to use new broadcasting interface * evict broadcast_volume_2!
-
Florian Atteneder authored
* remove cons2prim unit test * add srhd_simple_wave.toml * update ref test burger_sine_aventropy * undo experiments in ev.jl * undo changes to advection_sine ref test * fix up entropy production computation * fix entropy variables computation according to formulae from EFL and EHL papers * WIP * make AV regularization run * disable conservative fixing as it causes wrong results in srhd_smooth test; update ref test data * evict old broadcasting interface * define entropy variables for polytrope * compute fluxes after interpolating bdry data * optimize mda computation * fix ramping function for mda * enable conservative_fixing every to make ref tests pass -- however, ref test restults don't look correct update srhd_smooth ref test data * move cons2prim in rhs down * use only D as HRSC indicator * fix simple wave initial data and disable conservative fixing as it kills the simple wave propagation * make bdry conditions work for shock tube test * document print_idxs for @with_signature * add mda_n_low, mda_n_high parameters that allow to control the truncation interval for the MDA heuristic * fix logic in combining mda indicators from multiple vars * enable TCIs for SRHD * SRHD: allow to compute MDA AV from multiple vars and combine them with a max function * SRHD: make srhd_smooth test run with AV (though not perfect) * SRHD: add ldg_nflux * update ref test srhd_smooth * add more srhd parfiles * split conservative fixing from cons2prim; fixup cons2prim so that symmetric shock tubes are actually symmetric * update 0th order smoother * compute viscosity for initial data * use mix of conserved and primitives for flux computation * cleanup equations * cleanup cons2prim * implement av entropy for 1d eq -- wip * utilize kastaun cons2prim in llf * remove cons2prim_insane and friends * fix type instability in cons2prim caused by infamous closure bug fixup cons2prim * add Kastaun's cons2prim with conservative fixing * rename variables * remove comment * convert llf to use new broadcasting interface * convert cons2prim to new broadcasting * convert entropy_variables, but it is todo * remove unused * convert flux to new broadcast interface * convert speed to new broadcast interface * clean up module file
-
- Dec 14, 2023
-
-
Florian Atteneder authored
* update euler_isentropic_flow ref test to use interpolate_aligned_ts * reorganize testconfig.toml * update advection_sine_glgl ref test to use interpolate_aligned_ts * update advection2d_bump_threshold ref test to use aligned_ts * remove unused toml files * fix testparfiles to not list global options * update heateq_sine ref test to use aligned_ts * update burgers2d_gaussian_entropyav ref test to use aligned_ts * update burgers2d_gaussian ref test to use aligned_ts * update srhd_smooth ref test to use aligned_ts * update euler_isentropic_flow ref test to use aligned_ts * update advection2d_sine ref test to use aligned_ts * update fv_euler_isentropic_flow ref test to use aligned_ts update output.h5
-
Florian Atteneder authored
* fixup success check * add interpolate.h5 output for heateq_gaussian ref test * use aligned_ts for heateq_gaussian ref test * update ref test advection_sine to include interpolate.h5 output * upgrade IntegrationTests to also compare interpolate.h5 outputs (if available)
-
Florian Atteneder authored
* remove whitespaces * use mktempdir instead of custom mockdir gymnastics * trigger a TimeAlignedCB also when t+dt == next_t
-
Florian Atteneder authored
* InterpolationCallback can only interpolate fields that are registered as dynamic, static or rhs * add check for registered variable in get_variable * add a few @inline decorations * add isregistered method to cache and variablesdict types * throw proper error message when unregistered variable is requested * add test for InterpolationCallback * fixup callback interface docs * enable interpolation options of Output parameter section * add parameters for interpolation output * fixup InterpolatioCallback * Invocation of CallbackSet should report the call status I think initially the return value of all callbacks was meant to indicate whether that callback was actually called. I think what we need now is that callbacks return their status, e.g. whether they failed or not. * remove superfluous Base.show overloads * add InterpolationCallback use refactored meshinterpolator * introduce AbstractSaveCallback
-
Florian Atteneder authored
* update tests * evict old plot functionality evict remainders
-
Florian Atteneder authored
* update dg1dTests manifest * refactor MeshInterpolator to accept arrays for interpolation * use ranges to construct the cells' extends, because they ensure that the endpoints are preserved
-
Florian Atteneder authored
* add sod_shock_tube examples * add examples mono and navier-stokes regularization of euler_isentropic_flow problem * remove dead code * update ref test burgers_sine_aventropy * undo deletion * remove dead code * beautify log details when unequal number of output times is encountered * refactor printing of failed test details * im in a rush * fix ref test log info * remove unused var * revert callbacks * add invalid assertion in glgl integration method * remove bernsteining from AV regularization * add 0th order smoother * remove lower threshold on entropy av * wip -- tinker with applying Bernsteining to the LDG variables * also forward project to rhs * remove unnecessary computations from callback * put lower threshold on entropy AV * inline bernsteining workhorse * use inplace ops for entropy TCI * add ref test fv_euler_isentropic_flow * fixup hrsc initialization for EulerEq * fix args for Project constructor * update deps; put compat bound on PrettyTables.jl * add ref test euler_isentropic_flow_regulate-ns -- disabled for now * add dispatch for av regularization in rhs!; wip implementation of new regularizations * add a namedtuple for parameters to Project struct * fix call to broadcast in callbacks.jl * add av_regularization parameter * dispatch TODO on Symbol
-
- Dec 11, 2023
-
-
Florian Atteneder authored
* IntegrationTests: print Inf norm if mismatch is found * update refdata burgers_sine_avmda * update refdata burgers_sine_avdb * update refdata burgers_sine_aventropy * update refdata burgers_sine_avtci * fixup constructor call * more examples * update output times; fixup gitignore * utilize Sandbox to parse expressions from parfiles * fixup ScalarEq bump initial data * add examples folder with parfiles that are not ref tested * specialize timestep for AV scheme * implement 1st order fd approx for derivative of regularization term * enable callbacks * add prms field to ScalarEq's project struct also add av_derivative_scheme parameter to ScalarEq project to be used subsequentely * simplify dispatch of rhs!
-
- Dec 06, 2023
-
-
Florian Atteneder authored
* update some ref tests - euler_isentropic_flow - euler_sod_shock_tube_bernstein needed because previously we employed a timestep that was too large, because it only used the local cell width but not the smallest grid spacing * add ref test for FV euler sod shock tube * update ScalarEq so that FV version can use non-periodic bdry conditions * implement FV method for Euler equation - also refactor timestep to work with DG and FV elements - also refactored fv_update_step! methods to now accept buffers for bdry values
-
Florian Atteneder authored
* remove more Riemann solver stuff * remove non-existent export * evict riemannsolver.jl and broadcast_[volume,faces,bdry]! * evict Riemann solver related stuff from SRHD * evict Riemann solver related stuff from EulerEq * evict Riemann solver related stuff from ScalarEq * convert all in EulerEq remove unrelated file * convert all in ScalarEq * re-enable srhd_smooth test update srhd_smooth reftest * evict old broadcasting methods
-
- Dec 05, 2023
-
-
Florian Atteneder authored
Add a finite volume method for ScalarEq See merge request !75
-
Florian Atteneder authored
* add reftest fv_advection_sine * migrate all of ScalarEq to use broadcast_*_2! methods * add isperiodic method for meshes * fix grid spacing computation for SpectralElement * fixup parametric types to subtype Mesh1d/2d * make TODO error more comprehensive * fixup cfl usage; add abstractions for min grid spacing * enable add mesh kwarg to Evolution setup in order to enable FV evolution * add timestep! and rhs! for FVElement * do away with the State(...) syntax * add docs to dg_rhs methods * add FV stepper * limit dg_rhs.jl methods to Meshes with SpectralElement * add mesh kwarg to Evolution so that we can use a spearate stepper based on mesh type * add a scheme parameter to Mesh * add FVElement type
-
Florian Atteneder authored
Refactor CFL parameter usage See merge request !74
-