SpECTRE  v2026.06.30
Loading...
Searching...
No Matches
Changelog

The complete changelog for released versions of the code is available on GitHub:

Changes since the last release are printed below.

Upgrade instructions

From #7359 (Importer: unify with exporter library to speed up interpolation):

  • In input files that import numeric data, wrap importer options in a VolumeData: block and add the new options ExtrapolateIntoExcisions: False and NumThreads: 1.

From #7347 (Add unopinionated AGENTS.md):

  • If you already have an AGENTS.md, rename it to AGENTS.local.md.

From #7409 (Enable runtime LTS):

For evolutions using global time stepping (for CCE, see below), there are several new input file options:

Evolution:
LocalTimeStepping: Off

This option should be "Off" to retain previous behavior. Most evolution executables now support "Conservative" mode as well.

Evolution:
LtsStepChoosers:
VariableOrderAlgorithm:
GoalOrder: 3

These options are ignored with local time-stepping off, but must have valid values, such as those given here.

EventsAndTriggersAtSteps:

This is similar to the existing EventsAndTriggersAtSlabs. It is recommended that evolutions not using local time-stepping leave this blank.

Evolution:
InitialTimeStep: &initial_time_step 0.001
InitialSlabSize: *initial_time_step

The new InitialSlabSize option must have the same value as the existing InitialTimeStep option. This can be ensured using YAML references as shown here.

For evolutions using local time-stepping, including CCE, there is a single new option:

Evolution:
LocalTimeStepping: Conservative

For non-CCE evolutions, "Off" is now also supported.

From #7314 (Add option for number of shells in distorted frame):

The Sphere and SphericalShell domains now contain a new option under TimeDependentMaps called NumberOfRadialShellsWithShapeMap. Set it to auto to keep the old behavior (only the innermost radial partition gets the shape map`. You can also choose to set this it to a nonnegative integer no greater than one less than the number of partitions (the outermost partition is not allowed to have a shape map in this implementation, becauase in practice we always want the outer boundary to be a sphere, not a deformed sphere...that's the whole reason for the shape map rolling off to the identity).

Merged pull-requests (76)

New features (4):

  • CCE: allow specifying InitializeJ from input file for analytic runs (#7352)
  • CCE: add the first two Newman-Penrose Bianchi identity constraints (#7345)
  • Introduce higher-order FD for ValenciaDivClean (#6801)
  • CCE: make CauchySecondOrder angular-solve threshold an option (#7470)

CLI & Python bindings (1):

  • NumericalAlgorithms: add SpinWeightedSphericalHarmonics python bindings (#7344)

General changes (65):

  • Add Guido Da Re's metadata information (#7343)
  • Use no-avx512 only on not ARM64 (#7348)
  • Add kappa and zeta to 3D EoS (#7257)
  • Add second covariant derivative of scalar field in ScalarTensor. (#7318)
  • Add second covariant derivative of the coupling function in EsGB gravity (#7319)
  • Create cartoon-type BC for ValenciaDivClean (#7269)
  • B3 radial filtering (#7282)
  • Add prefix tag for spatial covariant derivatives and the Lie derivative with respect to the normal vector (#7323)
  • Store buffer in Filters::FilledCylinder (#7356)
  • Add ChangeFixedLtsRatio for adaptivity in equal-rate regions (#7334)
  • Add runtime checks for TimeStepper properties (#7342)
  • Update CartoonCylinder creator to use ZernikeB1 and internal BCs (#7267)
  • Use spherical shells for inner spheres in CBCO (#7346)
  • Remove DarkEnergyFluid EoS (#7350)
  • CCE-fix: compute Dy(H) on demand as an observation compute tag (#7365)
  • Handle -march=native on all supported platforms (#7358)
  • Add B3 support to CardinalInterpolator (#7265)
  • Make CBCO input file h and p refinement format same as BCO (#7360)
  • Add error message for nonmonotonic times in WorldtubeBufferUpdater (#7363)
  • Add hp projections for spherical shells (#7355)
  • Importer: unify with exporter library to speed up interpolation (#7359)
  • Add unopinionated AGENTS.md (#7347)
  • Support LDG infrastructure part two (#7375)
  • StepChooser-related changes for GTS-LTS unification (#7379)
  • Support LDG infrastructure part one (#7374)
  • Make various LTS things runtime no-ops in GTS mode (#7380)
  • Reduce Spectral compile time/memory (#7377)
  • Update connectivity for B3 (#7327)
  • Add waveform extraction to the bbh pipeline (#7271)
  • Add B3 support for IrregularInterpolant (#7370)
  • Enable observing normalized GH constraint energy (#7340)
  • Add B3 definite integral (#7371)
  • Add method to force runtime-LTS off in metavars (#7384)
  • Hypertorus (#7383)
  • Allow any coding agent in PR template co-author checklist (#7395)
  • Remove LTS check from ElementWeight parser (#7391)
  • Use LtsMode for mortar initialization/projecting (#7393)
  • Support LDG infrastructure part three (#7378)
  • Support LDG infrastructure part four (#7385)
  • Add spherical shell filtering to ScalarWave (#7368)
  • Add subcell reconstruction for ZernikeB1 (#7349)
  • Create CartoonGhost BC for GhValenciaDivClean system (#7366)
  • Create CylindricalFlatEndcapInterior map (#7373)
  • Create CylindricalSphericalShell map (#7386)
  • Disable OpenMP when running tests (#7407)
  • Add initial guesses for scalar field in scalar-tensor theories (#7367)
  • Final miscellaneous preparation for runtime LTS (#7399)
  • Enable runtime LTS (#7409)
  • Add option for number of shells in distorted frame (#7314)
  • Add UniformCardinalBSpline (#7388)
  • brigand: Prevent invalid instantiations in erase (#7401)
  • Some AMR topology fixes (#7394)
  • Support filled / hollow sphere mortar equality (#7398)
  • Bump CodingAgents container to NPM 24 for latest claude (#7462)
  • Cache component name hash in ArrayComponentId (#7390)
  • Add gr::Solutions::HighSpinKerrPuncture (#7392)
  • Fix random failures it Worldtube IterateAccelerationTerms (#7465)
  • Update fetched Yaml-Cpp and XSIMD version (#7464)
  • Add SoScalarWave system part one (#7403)
  • Support LDG infrastructure part five (#7402)
  • Fix on_interface basis assumptions (#7466)
  • Remove std::reference_wrapper dependencies in coordinate maps (#7460)
  • Enable CCE for ARM deployment in CI (#7364)
  • Pass parity to ValenciaDivClean subcell volume projections (#7472)
  • Add SoScalarWave system part two (#7405)

Documentation (1):

  • CCE: update base input file initial data (#7351)

Bugfixes (5):

  • Fix bug in ZernikeB2 mortar mesh check (#7357)
  • CCE: raise second-order init-data test iteration cap to 1000 (#7354)
  • CCE: compute Dy<BondiH> for volume output (#7353)
  • Center CBCO OuterSphere at origin (#7406)
  • Return zero vector for zero horizon spin (#7474)

Contributors (15): @gda98re, @nilsdeppe, @EmilyWang0130, @FabrizioCorelli, @michaeldmurphy1, @wthrowe, @macedo22, @kidder, @geoffrey4444, @JosePineda684, @nilsvu, @hen-w, @nikwit, @ncorsobh, @hrueter