Geant4 Cross Reference |
>> 1 // This code implementation is the intellectual property of >> 2 // the GEANT4 collaboration. 1 // 3 // 2 // ******************************************* << 4 // By copying, distributing or modifying the Program (or any work 3 // * License and Disclaimer << 5 // based on the Program) you indicate your acceptance of this statement, 4 // * << 6 // and all its terms. 5 // * The Geant4 software is copyright of th << 6 // * the Geant4 Collaboration. It is provided << 7 // * conditions of the Geant4 Software License << 8 // * LICENSE and available at http://cern.ch/ << 9 // * include a list of copyright holders. << 10 // * << 11 // * Neither the authors of this software syst << 12 // * institutes,nor the agencies providing fin << 13 // * work make any representation or warran << 14 // * regarding this software system or assum << 15 // * use. Please see the license in the file << 16 // * for the full disclaimer and the limitatio << 17 // * << 18 // * This code implementation is the result << 19 // * technical work of the GEANT4 collaboratio << 20 // * By using, copying, modifying or distri << 21 // * any work based on the software) you ag << 22 // * use in resulting scientific publicati << 23 // * acceptance of all terms of the Geant4 Sof << 24 // ******************************************* << 25 // 7 // 26 // G4EqMagElectricField << 8 // $Id: G4EqMagElectricField.hh,v 1.4 2000/11/01 15:15:48 gcosmo Exp $ >> 9 // GEANT4 tag $Name: geant4-03-00 $ >> 10 // >> 11 // >> 12 // class G4EqMagElectricField 27 // 13 // 28 // Class description: 14 // Class description: 29 // 15 // 30 // This is the right-hand side of equation of 16 // This is the right-hand side of equation of motion in a combined 31 // electric and magnetic field. 17 // electric and magnetic field. 32 18 33 // Created: V.Grichine, 10.11.1998 << 19 // History: 34 // ------------------------------------------- << 20 // - Created. V.Grichine, 10.11.98 35 #ifndef G4EQMAGELECTRICFIELD_HH << 36 #define G4EQMAGELECTRICFIELD_HH << 37 21 38 #include "G4ChargeState.hh" << 22 #ifndef G4EQMAGELECTRICFIELD_hh 39 #include "G4EquationOfMotion.hh" << 23 #define G4EQMAGELECTRICFIELD_hh >> 24 >> 25 #include "G4Mag_EqRhs.hh" 40 #include "G4ElectroMagneticField.hh" 26 #include "G4ElectroMagneticField.hh" 41 27 42 class G4EqMagElectricField : public G4Equation << 28 class G4EqMagElectricField : public G4Mag_EqRhs 43 { 29 { 44 public: << 30 public: // with description >> 31 >> 32 G4EqMagElectricField(G4ElectroMagneticField *emField ) >> 33 : G4Mag_EqRhs( emField ) {;} 45 34 46 G4EqMagElectricField(G4ElectroMagneticFiel << 35 ~G4EqMagElectricField() {;} 47 ~G4EqMagElectricField() override; << 48 36 49 void SetChargeMomentumMass(G4ChargeState << 37 void SetChargeMomentumMass(G4double particleCharge, // in e+ units 50 G4double Momen << 38 G4double MomentumXc, 51 G4double mass) << 39 G4double mass); 52 40 53 void EvaluateRhsGivenB(const G4double y[], 41 void EvaluateRhsGivenB(const G4double y[], 54 const G4double Fiel << 42 const G4double Field[], 55 G4double dydx << 43 G4double dydx[] ) const; 56 // Given the value of the electromagneti 44 // Given the value of the electromagnetic field, this function 57 // calculates the value of the derivativ 45 // calculates the value of the derivative dydx. 58 46 59 private: 47 private: 60 48 61 G4double fElectroMagCof = 0.0; << 49 G4double fElectroMagCof; 62 G4double fMassCof = 0.0; << 63 }; 50 }; 64 51 65 #endif 52 #endif 66 53