155 lines
4.8 KiB
C++
155 lines
4.8 KiB
C++
|
|
#pragma once
|
||
|
|
|
||
|
|
#include <string_view>
|
||
|
|
|
||
|
|
#include "serif/dimensions/quantities.hpp"
|
||
|
|
|
||
|
|
namespace serif::dimensions {
|
||
|
|
struct Dimensionless final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "dimensionless";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Mass final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "mass";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Length final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "length";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Time final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "time";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Area final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "area";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Volume final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "volume";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Density final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "density";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct SurfaceDensity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "surface_density";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct NumberDensity final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "number_density";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Pressure final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "pressure";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Temperature final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "temperature";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Entropy final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "entropy";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct SpecificEntropy final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "specific_entropy";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct ChemicalPotential final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "chemical_potential";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Energy final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "energy";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct InternalEnergy final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "internal_energy";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct SpecificEnergy final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "specific_energy";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct SpecificInternalEnergy final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "specific_internal_energy";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct SpecificEnthalpy final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "specific_enthalpy";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct EnergyDensity final : ThermodynamicQuantity {
|
||
|
|
static constexpr std::string_view identifier = "energy_density";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct GravitationalPotential final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "gravitational_potential";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Velocity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "velocity";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Acceleration final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "acceleration";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Frequency final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "frequency";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct AngularVelocity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "angular_velocity";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Momentum final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "momentum";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct AngularMomentum final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "angular_momentum";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct MomentOfInertia final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "moment_of_inertia";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Force final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "force";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Torque final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "torque";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Power final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "power";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Luminosity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "luminosity";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct MassFlowRate final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "mass_flow_rate";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct Opacity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "opacity";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct DynamicViscosity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "dynamic_viscosity";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct KinematicViscosity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "kinematic_viscosity";
|
||
|
|
};
|
||
|
|
|
||
|
|
struct MagneticFluxDensity final : PhysicalQuantity {
|
||
|
|
static constexpr std::string_view identifier = "magnetic_flux_density";
|
||
|
|
};
|
||
|
|
}
|