16#include <CLHEP/Units/SystemOfUnits.h>
18#include <G4ThreeVector.hh>
20#include <SHiP/Units.hpp>
24namespace su = ship::units;
28[[nodiscard]]
inline ship::Length
length(G4double v) {
29 return (v / CLHEP::mm) * su::mm;
31[[nodiscard]]
inline ship::Time
time(G4double v) {
32 return (v / CLHEP::ns) * su::ns;
34[[nodiscard]]
inline ship::Energy
energy(G4double v) {
35 return (v / CLHEP::GeV) * su::GeV;
38[[nodiscard]]
inline ship::Momentum
momentum(G4double v) {
39 return (v / CLHEP::GeV) * su::GeV_per_c;
41[[nodiscard]]
inline ship::Vec3<ship::Length>
position(G4ThreeVector
const& v) {
44[[nodiscard]]
inline ship::Vec3<ship::Momentum>
momentum(
45 G4ThreeVector
const& v) {
51[[nodiscard]]
inline G4double
g4(ship::Length l) {
52 return l.numerical_value_in(su::mm) * CLHEP::mm;
54[[nodiscard]]
inline G4double
g4(ship::Time t) {
55 return t.numerical_value_in(su::ns) * CLHEP::ns;
57[[nodiscard]]
inline G4double
g4(ship::Energy e) {
58 return e.numerical_value_in(su::GeV) * CLHEP::GeV;
62[[nodiscard]]
inline G4double
g4(ship::Momentum p) {
63 return p.numerical_value_in(su::GeV_per_c) * CLHEP::GeV;
Definition clhep_bridge.hpp:22
ship::Energy energy(G4double v)
Definition clhep_bridge.hpp:34
ship::Length length(G4double v)
Definition clhep_bridge.hpp:28
ship::Vec3< ship::Length > position(G4ThreeVector const &v)
Definition clhep_bridge.hpp:41
ship::Momentum momentum(G4double v)
Definition clhep_bridge.hpp:38
G4double g4(ship::Length l)
Definition clhep_bridge.hpp:51
ship::Time time(G4double v)
Definition clhep_bridge.hpp:31