Kamil Sedlak 2009-05-18
This is the first version of the muSR simulation code (musrSim) based on the merged codes of Kamil Sedlak and Toni Shiroka. It should be a running version of the simulation code, however it has not been very well tested, therefore it will probably need some further development.
This commit is contained in:
49
include/musrQuadrupole.hh
Normal file
49
include/musrQuadrupole.hh
Normal file
@@ -0,0 +1,49 @@
|
||||
#ifndef musrQuadrupole_h
|
||||
#define musrQuadrupole_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "F04ElementField.hh"
|
||||
#include "F04GlobalField.hh"
|
||||
//#include "G4ios.hh"
|
||||
#include "BLEngeFunction.hh"
|
||||
//#include <fstream>
|
||||
//#include <vector>
|
||||
//#include <cmath>
|
||||
const G4double FRINGE_ACCURACY=1.0e-4;
|
||||
|
||||
class musrQuadrupole : public F04ElementField
|
||||
{
|
||||
public:
|
||||
musrQuadrupole(G4double halflengthVal, G4double fieldRadiusVal, G4double gradientVal, G4double fringeFactorVal, G4LogicalVolume* logVolume, G4ThreeVector positionOfTheCenter);
|
||||
// musrQuadrupole is based on "BLCMDgenericquad" class of the G4beamline package.
|
||||
//
|
||||
|
||||
/// Destructor.
|
||||
virtual ~musrQuadrupole() {}
|
||||
|
||||
/// addFieldValue() adds the field for this solenoid into field[].
|
||||
/// point[] is in global coordinates.
|
||||
void addFieldValue( const G4double Point[4], G4double* field) const;
|
||||
|
||||
G4double GetNominalFieldValue();
|
||||
void SetNominalFieldValue(G4double newFieldValue);
|
||||
|
||||
// getWidth(), getHeight(), getLength(), return the dimensions of the field
|
||||
// (used to define the boundary of the field)
|
||||
virtual G4double getWidth() { return 2*fieldRadius; } // x coordinate
|
||||
virtual G4double getHeight() { return 2*fieldRadius; } // y coordinate
|
||||
virtual G4double getLength() { return 2*fringeMaxZ; } //{ return 2*halflength; } // z coordinate
|
||||
|
||||
|
||||
private:
|
||||
G4double gradient;
|
||||
G4double fieldRadius;
|
||||
G4double halflength;
|
||||
|
||||
G4double fringeMaxZ;
|
||||
G4double fringeDepth;
|
||||
|
||||
BLEngeFunction enge;
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user