242 lines
8.5 KiB
Plaintext
242 lines
8.5 KiB
Plaintext
$Id: History,v 1.15 1999/12/07 11:42:04 japost Exp $
|
|
-------------------------------------------------------------------
|
|
|
|
=========================================================
|
|
Geant4 - an Object-Oriented Toolkit for Simulation in HEP
|
|
=========================================================
|
|
|
|
Category History file
|
|
---------------------
|
|
This file should be used by G4 developers and category coordinators
|
|
to briefly summarize all major modifications introduced in the code
|
|
and keep track of all category-tags.
|
|
It DOES NOT substitute the CVS log-message one should put at every
|
|
committal in the CVS repository !
|
|
|
|
----------------------------------------------------------
|
|
* Reverse chronological order (last date on top), please *
|
|
----------------------------------------------------------
|
|
|
|
December 7th, 1999 J. Apostolakis - field-V00-01-01a
|
|
|
|
For negative or very small curve lengths (h) we suppress writing an error
|
|
(about the distance of endpoints being further than the curve length),
|
|
as it is meaningless.
|
|
|
|
November 23rd, 1999 J. Apostolakis - field-V00-01-01
|
|
|
|
Tagged this sub-category's state in geometry-V00-01-01
|
|
|
|
|
|
July 6th, 1999 J. Apostolakis - field-01-00-07
|
|
|
|
These fixes and those in field-01-00-06 and field-01-00-06a all come
|
|
from the need to cope with the imprecision of the integration, and its
|
|
interaction with paths that are rather straight.
|
|
|
|
G4MagIntegrationDriver:
|
|
i) AccurateAdvance now that the chord distance is smaller than the curve len-
|
|
gth (times 1+epsilon).
|
|
|
|
ii) OneGoodStep and QuickAdvance considers the error of the velocity as well as
|
|
the error of the position - and ensure that both relative errors are within
|
|
the "eps" maximum given.
|
|
|
|
G4ChordFinder:
|
|
Having found that the curve_length vs ABdist disrepancy has its basis in
|
|
the imprecision of the integration:
|
|
i) Modified the exception in this case to happen only for very large
|
|
relative disrepancies ( 10 * eps ).
|
|
ii) Undertaken a default corrective action in all other cases
|
|
Note that this disrepancy only happens for very straight sections of track -
|
|
ie step lengths much smaller than the curvature of the track.
|
|
|
|
July 1st, 1999 J. Apostolakis - field-01-00-06a
|
|
|
|
In order to cope with the anomalous condition created by candidate fix
|
|
in G4PropagatorInField, we ensure that the fraction_AE is always between
|
|
0 and 1.0. (giving it a default value of 0.5 whenever it is wrong).
|
|
( in G4ChordFinder::ApproxCurvePointV )
|
|
|
|
June 29th, 1999 J. Apostolakis - field-01-00-06
|
|
|
|
I re-instated a check on whether the input distance along the curve between
|
|
the two input curve points is truly greater than their linear distance.
|
|
( in G4ChordFinder::ApproxCurvePointV )
|
|
|
|
The condition that prints out a warning message has been altered to
|
|
take into account the case of a very small final interval.
|
|
( in G4MagInt_Driver::AccurateAdvance )
|
|
|
|
June ??th, 1999 J. Apostolakis - field-01-00-05
|
|
|
|
The condition that prints out a warning message was changed to delete
|
|
an incorrect comparison.
|
|
( in G4MagInt_Driver::AccurateAdvance )
|
|
|
|
April 19th, 1999 J. Apostolakis - field-01-00-04
|
|
|
|
G4MagErrorStepper: Cosmetic changes to name of data members
|
|
|
|
March 4th, 1999 J. Apostolakis - field-01-00-03
|
|
|
|
Corrected delete statement of arrays to use 'delete[]' instead of simple delete
|
|
in destructors of 2 steppers (G4CashKarpRKF45, G4SimpleHeum)
|
|
|
|
February 17th, 1999 J. Apostolakis - field-01-00-02
|
|
|
|
Moved G4PropagatorInField files to geometry/volumes.
|
|
Updated GNUmakefile not to depend on geometry/volumes anymore.
|
|
-> the known circular dependency is removed
|
|
|
|
|
|
February 12th, 1999 J. Apostolakis - field-spin1-works1 (act Feb17)
|
|
|
|
A tag that contains the first version that worked with spin (in Peter G.'s
|
|
directory). G4PropagateInSpin is still in this version. A small change
|
|
in a branch of the header file was needed.
|
|
|
|
|
|
February 10th, 1999 J. Apostolakis
|
|
|
|
All the following changes are needed for energy integration also:
|
|
|
|
G4ChordFinder now passes to the constructed driver the number of variables.
|
|
Because of the need for the stepper to know about it in its Abstract interface
|
|
|
|
-> Moved theNumberOfVariables from derived class G4MagErrorStepper
|
|
to base class G4MagIntegratorStepper
|
|
|
|
As a consequense the classes that derived from G4MagIntegratorStepper directly
|
|
were changed: G4CashKarpRKF45, G4MagHelicalStepper,
|
|
|
|
|
|
February 9th, 1999 J. Apostolakis
|
|
|
|
Equation of Motion:
|
|
G4MagEqRhs.hh Made SetChargeMomentumMass virtual, so that G4Mag_SpinEqRhs
|
|
can initialise its constants too.
|
|
|
|
|
|
February 9th, 1999 P. Gumplinger
|
|
|
|
Added Equation of Motion for Spin in Magnetic Field.
|
|
|
|
|
|
February 17th, 1999 J. Apostolakis - field-01-00-01
|
|
---> date is correct, made sure that tag does not include above fixes!
|
|
|
|
Moved G4PropagatorInField files to geometry/volumes.
|
|
Updated GNUmakefile not to depend on geometry/volumes anymore.
|
|
-> the known circular dependency is removed
|
|
|
|
|
|
---------------------------------------------------------------------------
|
|
------ Geant 4 Production Release ------------
|
|
--------------------------------------------------------------------------
|
|
Nov 19th, 1998 J. Apostolakis - field-00-04-01head ===> R+D version only
|
|
|
|
G4PropagatorInField files modified:
|
|
|
|
- to store the last safety computed and its origin.
|
|
- to give them to a requester
|
|
------------------------------------------------------------------
|
|
|
|
Nov 19th, 1998 J. Apostolakis - field-00-03-03b
|
|
|
|
Subtle fix to interface of G4UniformMagField::GetFieldValue
|
|
( that tripped Visual C++ )
|
|
|
|
G4PropagatorInField: added printing method for verboseness.
|
|
|
|
Nov 19th, 1998 J. Apostolakis - field-00-03-03a
|
|
|
|
Steppers: Fixed instance variables construction (SimpleRunge)
|
|
and clash of names in CashKarp::StepWithEstimate
|
|
|
|
Added post-const to all Field classes for
|
|
void GetFieldValue(const G4double yTrack[] ,
|
|
G4double B[] ) const ;
|
|
|
|
Added SetFieldValue methods to UniformMagField
|
|
|
|
Added GetConstantFieldValue() methods to Uniform Mag & Electric Fields
|
|
|
|
|
|
Nov 19th, 1998 J. Apostolakis - field-00-03-03
|
|
|
|
Fixes to Propagate and Steppers
|
|
|
|
Nov 19th, 1998 J. Apostolakis - field-00-03-02
|
|
|
|
Minor corrections (???)
|
|
|
|
Nov 19th, 1998 J. Apostolakis - field-00-03-02
|
|
|
|
Major development to allow Electric Field
|
|
|
|
|
|
|
|
June 17th, 1998 J. Apostolakis - magfield-06-03
|
|
|
|
Modified Files:
|
|
include/G4PropagatorInField.hh
|
|
src/G4PropagatorInField.cc
|
|
test/testPropagateInField.cc
|
|
----------------------------------------------------------------------
|
|
|
|
1) Added an assertion after each call to LocateGlobalPointAndSetup.
|
|
It checks that the located volume is equal to the current volume.
|
|
If this check fails, the Propagator does not know how to continue.
|
|
|
|
2) Added an argument to ComputeStep method of G4PropagatorInField.
|
|
The new volume argument is used to check the current volume during the step.
|
|
|
|
3) When G4Navigator's ComputeStep returned stepLength==stepRequested, this
|
|
used to be treated as a failure to intersect. This is incorrect.
|
|
|
|
stepLength==stepRequested is an intersection,
|
|
so I am now treating it as such in each comparison (of 3).
|
|
Ignoring it causes problems, including volume being skipped.
|
|
--> but treating it as an intersection used to cause problems too ??
|
|
|
|
|
|
May 7th, 1998 J. Apostolakis - magfield-06-02-helix01
|
|
|
|
- Tag includes new version of G4ChordFinder (not used by W.Wander).
|
|
|
|
|
|
May 7th, 1998 W. Wander (recorded/commited by J. Apostolakis)
|
|
|
|
- New "helical" RK steppers that move in helical segments, not linear.
|
|
* Several changes to add steppers
|
|
|
|
Modified Files:
|
|
G4MagErrorStepper.hh
|
|
G4MagErrorStepper.cc
|
|
added Helical stepping methods to this general ABC.
|
|
|
|
G4MagIntegratorStepper.hh
|
|
made RightHandSide virtual (this will be reversed very soon)
|
|
|
|
testPropagateMagField.cc
|
|
Test of Helical stepping functionality added.
|
|
|
|
Added Files for new Helical RK steppers, deriving from G4MagErrorStepper:
|
|
G4HelixExplicitEuler.cc ( and .hh )
|
|
G4HelixHeum.cc
|
|
G4HelixImplicitEuler.cc
|
|
G4HelixSimpleRunge.cc
|
|
|
|
Added File for implementation:
|
|
G4MagErrorStepper.icc
|
|
|
|
|
|
May 7th, 1998 J. Apostolakis - magfield-06-01
|
|
|
|
- added small changes to
|
|
* G4ChordFinder: methods to get/set IntegratorDriver
|
|
* G4MagIntegratorDriver: made OneGoodStep method public
|
|
- created the file.
|
|
|