00001 /* BDSIM code. Version 1.0 00002 Author: Grahame A. Blair, Royal Holloway, Univ. of London. 00003 Last modified 24.7.2002 00004 Copyright (c) 2002 by G.A.Blair. ALL RIGHTS RESERVED. 00005 */ 00006 // class BDS_EqRhs 00007 00008 #ifndef BDSEQRHS_DEF 00009 #define BDSEQRHS_DEF 00010 00011 #include "globals.hh" 00012 #include "G4EquationOfMotion.hh" 00013 #include "G4MagneticField.hh" 00014 #include "G4Mag_EqRhs.hh" 00015 #include "BDSSbendMagField.hh" 00016 00017 class BDS_EqRhs: public G4Mag_EqRhs 00018 { 00019 public: // with description 00020 00021 BDS_EqRhs( BDSSbendMagField *magField ); 00022 virtual ~BDS_EqRhs(); 00023 00024 G4double GetKappa(); 00025 G4double GetLocalRadius(); 00026 void EvaluateRhsGivenB( const G4double y[], 00027 const G4double B[3], 00028 G4double dydx[] ) const; 00029 00030 protected: 00031 BDSSbendMagField* itsField; 00032 00033 // private: 00034 // G4double LocalRadius; 00035 }; 00036 00037 inline G4double BDS_EqRhs::GetLocalRadius() 00038 { 00039 return itsField->GetLocalRadius(); 00040 } 00041 00042 inline void BDS_EqRhs::EvaluateRhsGivenB( const G4double /*y*/[], 00043 const G4double /*B*/[3], 00044 G4double /*dydx*/[] ) const 00045 {;} 00046 00047 #endif /* BDSEQRHS_DEF */