Skip to content

Release 2021.02.08

Compare
Choose a tag to compare
@sxs-bot sxs-bot released this 08 Feb 23:04
· 0 commits to a819ebbcca607d8af9683db3683bea14bf4ac23c since this release

Upgrade instructions

From #2687 (Observe analytic solutions if available):

  • If you retrieved analytic solutions from the DataBox as ::Tags::Analytic<Tag>, update your code to retrieve ::Tags::AnalyticSolutionsBase instead. It currently always holds a Variables from which you can retrieve the analytic solution fields as ::Tags::Analytic<Tag> the same way you did before. In the future it may hold a std::optional<Variables> in cases where it is not clear at compile-time that analytic solutions are available.

From #2574 (Use Blaze 3.8 (exclusively) (again), and test architectures):

Upgrade the Blaze library to version 3.8.

From #2792 (Add mocked cores and nodes to ActionTesting):

  • In ActionTesting, if you are mocking a Group, Nodegroup, or Singleton component, these should now have chare_type set to MockGroupChare, MockNodeGroupChare, or MockSingletonChare instead of MockArrayChare. Note that MockArrayChare will sometimes work for these components for some tests, but not if ckLocal or ckLocalBranch is ever called on those components.
  • In ActionTesting, the new functions emplace_singleton_component, emplace_group_component, emplace_array_component, and emplace_nodegroup_component should be used instead of emplace_component. Note that emplace_component still works but will be removed in the future.
  • The functions in Utilities/System/ParallelInfo now have two versions: the low-level charm++ version (in the sys namespace) and a new version templated on the DistributedObject. The sys version should be used only for low-level things like AbortWithErrorMessage or the ParallelInfo executable where you know they will never be mocked; the templated version should be used everywhere else.

Merged pull-requests

General changes:

  • Add evolution boundary condition type and domain boundary condition base class (#2750)
  • Check that det(Jacobian) is positive in coordinate maps using discrete rotations (#2751)
  • Add quadrature to Mortars & DgDomain init, support Gauss pts and weak form in ComputeTimeDerivative (#2721)
  • Add elliptic utility to work with tags containing maps (#2733)
  • Fix slow vector tests gcc10 (#2730)
  • Re-arrange Blaze template expressions (#2728)
  • Add ApplyBoundaryCorrections action to go with ComputeTimeDerivative (#2722)
  • Print back trace from ERROR and ASSERT macros, add ERROR_NO_TRACE macro (#2766)
  • Finish removing uses of boost::optional (#2753)
  • Make TensorExpression abstract (#2771)
  • Add support for GR/non-flat metrics to ComputeTimeDerivative (#2772)
  • Add ChristodoulouMass compute tag (#2752)
  • Add test helper for elliptic first-order systems (#2675)
  • Observe analytic solutions if available (#2687)
  • Implement TensorExpression Product (#2716)
  • Remove TensorExpression multi-index get overloads (#2775)
  • Use unsorted generic indices in AddSub (#2776)
  • Add error measures to steppers (#2630)
  • Add TensorExpression test with multiple operations (#2777)
  • Cce analytic test exe prep, add option parsing for std::complex, add integer static cache range (#2608)
  • Upgrade docs deployment, enable on forks (#2739)
  • Generalize Minmod limiter to handle Gauss points (#2783)
  • Add boundary conditions to Block and Domain classes (#2770)
  • Add curved background support to boundary corrections test helpers (#2765)
  • Support factory-creating the Schwarz subdomain solver and add ExplicitInverse solver (#2664)
  • Add Boundary conditions test helpers (#2798)
  • Add Boundary corrections for Burgers (#2767)
  • Add Rusanov boundary correction to Newtonian Euler (#2768)
  • Derive elliptic solutions from base classes (#2698)
  • Orient std::vector on slices (#2800)
  • Add upwind penalty boundary correction for scalar wave (#2769)
  • Add time dependence to evolution observer input file test (#2789)
  • Prepare curved Poisson and Elasticity systems for use in XCTS equations (#2674)
  • Refactor ComputeTimeDerivative (#2799)
  • Add struct for marking DataBox tags for a reference item (#2807)
  • Clarify contributing guide: PRs don't need everyone's re-approval before merging (#2811)
  • Add python bindings for mesh and regular grid interpolant (#2734)
  • Improve action of Minmod limiter and TCI at external boundaries (#2795)
  • Update Blaze version requirements to 3.7 (#2816)
  • Documentation: threaded_action is an entry method. (#2802)
  • Prohibit serializing a non-owning vector (#2804)
  • Add Rusanov boundary correction for GRMHD, make lapse, shift, inv spatial metric temp tags (#2814)
  • Add trivial solution to Poisson and Elasticity systems (#2812)
  • Make TensorExpression member variables non-const (#2810)
  • Use Gauss points in test for ApplyMatrices (#2808)
  • Add tag traits for a reference tag (#2817)
  • Use Blaze 3.8 (exclusively) (again), and test architectures (#2574)
  • Compute elliptic sources in two steps (#2818)
  • Pypp: better error msg, better string support, factor normal vector boundary correction helper code (#2827)
  • Rename elliptic fluxes and sources computer type aliases (#2819)
  • Evolution: remove InterfaceTags, support unaligned meshes, stop copying fluxes (#2824)
  • Add variables for Neumann boundary conditions to elliptic solutions (#2828)
  • Add tags for elliptic DG (#2826)
  • Add getter for remote mortar data (#2823)
  • Add boundary condition support to Creators::Interval (#2803)
  • Handle reference tags in db::tag_name (#2836)
  • Add upwind penalty boundary correction to GH (#2813)
  • Add mocked cores and nodes to ActionTesting (#2792)
  • Add base class for elliptic boundary conditions (#2732)
  • Move penalty function for elliptic DG to its own file (#2821)
  • Loosen restrictions on divergence return buffer tags (#2822)

Bugfixes:

  • Update Wheeler env, LIBXSSM+Pybind11 (#2749)
  • Fix version name validation in release workflow (#2756)
  • Fix arguments not passed to Python executables (#2759)
  • Remove extra comma in python init files (#2764)
  • Fix protocol assert_conforms_to, relax NumericalFlux requirements for evolution DG transition (#2763)
  • Propagate PCH flags to dependent targets (#2778)
  • Fix PCH dependencies (#2782)
  • Restore clang-tidy on CI (#2785)
  • Fix uninitialized array in OuterProduct (#2784)
  • Don't disrupt PRs between releases (#2773)
  • Make sure Python headers are consistent with interpreter (#2755)
  • Register Newtonian Euler Rusanov solver in test (#2801)
  • Restore CI: Fix a renamed type alias (#2834)
  • Fix load balancing test (#2806)
  • Restore behaviour of InitializeMortars (#2825)
  • Fix linking of DomainBoundaryConditions lib (#2842)
  • Fix latex for TensorExpressions::evaluate (#2838)