19#ifndef BDSFIELDMAGGRADIENT_H
20#define BDSFIELDMAGGRADIENT_H
61 G4int& centreIndex)
const;
70 G4int& centreIndex)
const;
75 G4double
Derivative(
const std::vector<G4double>& data,
77 const G4int startIndex,
78 const G4double h)
const;
Find multipole components of fieldmaps by numerical differentiation.
G4double Derivative(const std::vector< G4double > &data, const G4int order, const G4int startIndex, const G4double h) const
std::vector< G4double > PrepareValues(BDSFieldMag *field, G4int order, G4double centreX, G4double h, G4int ¢reIndex) const
BDSMagnetStrength * CalculateMultipoles(BDSFieldMag *BField, G4int order, G4double Brho=4)
Find the Magnet strengths of a multipole field to nth order.
std::vector< std::vector< G4double > > PrepareSkewValues(BDSFieldMag *field, G4int order, G4double centreX, G4double h, G4int ¢reIndex) const
G4double GetBy(BDSFieldMag *BField, G4double x, G4double y=0) const
Query a point on x axis (by default) for By.
A wrapper class for BDSFieldMag that rotates it.
Interface for static magnetic fields that may or may not be local.
Efficient storage of magnet strengths.