Metaphysicl

Jul 20, 2023

Metaprogramming, operator-overloaded classes for numerical simulations

MetaPhysicL is a set of template classes and metaprogramming tools useful for the generation of physics codes which are optimized at compile-time.

This includes many classes which are designed to be compatible with generic codes written for plain numeric data types like float and double, but which may provide more featureful output

  • DualNumber, for automatic differentiation.
  • NumberArray, for vectorization.
  • SparseNumberArray and SparseNumberStruct, for homogeneous or heterogeneous sparse vectors whose structure can be inferred at compile time.
  • EquationSet, for the automatic assembly of physics equations into evaluation codes.


Checkout these related ports:
  • Zx - MQT ZX A library for working with ZX-diagrams
  • Zotero - Reference management for bibliographic data and research materials
  • Yoda - Particle physics package with classes for data analysis, histogramming
  • Xtb - Semiempirical Extended Tight-Binding Program Package
  • Xmakemol - Molecule Viewer Program Based on Motif Widget
  • Xdrawchem - Two-dimensional molecule drawing program
  • Xcrysden - Crystalline and molecular structure visualisation program
  • Xcfun - Exchange-correlation functionals with arbitrary-order derivatives
  • Wxmacmolplt - Graphical user interface principally for the GAMESS program
  • Wwplot - Plotting tool for experimental physics classes
  • Wannier90 - Maximally-localized Wannier functions (MLWFs) and Wannier90
  • Votca - CSG and XTP libraries for atomistic simulations
  • Voro++ - Three-dimensional computations of the Voronoi tessellation
  • Vmd - Molecular visualization program
  • Vipster - Crystalline and molecular structure visualisation program