Geant4.10
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
geant4.10.00.p01
source
global
management
include
G4PhysicsFreeVector.hh
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
//
27
// $Id: G4PhysicsFreeVector.hh 74256 2013-10-02 14:24:02Z gcosmo $
28
//
29
//
30
//--------------------------------------------------------------------
31
// GEANT 4 class header file
32
//
33
// G4PhysicsFreeVector.hh
34
//
35
// Class description:
36
//
37
// A physics vector which has values of energy-loss, cross-section,
38
// and other physics values of a particle in matter in a given
39
// range of the energy, momentum, etc. The scale of energy/momentum
40
// bins is in free, ie. it is NOT need to be linear or log. Only
41
// restrication is that bin values alway have to increase from
42
// a lower bin to a higher bin. This is necessary for the binary
43
// search to work correctly.
44
45
// History:
46
// 02 Dec. 1995, G.Cosmo : Structure created based on object model
47
// 06 Jun. 1996, K.Amako : Implemented the 1st version
48
// 01 Jul. 1996, K.Amako : Cache mechanism and hidden bin from the
49
// user introduced
50
// 26 Sep. 1996, K.Amako : Constructor with only 'bin size' added
51
// 11 Nov. 2000, H.Kurashige : Use STL vector for dataVector and binVector
52
// 02 Oct. 2013 V.Ivanchenko : Remove FindBinLocation method
53
//
54
//--------------------------------------------------------------------
55
56
#ifndef G4PhysicsFreeVector_h
57
#define G4PhysicsFreeVector_h 1
58
59
#include "
globals.hh
"
60
#include "
G4PhysicsVector.hh
"
61
#include "
G4DataVector.hh
"
62
63
class
G4PhysicsFreeVector
:
public
G4PhysicsVector
64
{
65
public
:
// with description
66
67
G4PhysicsFreeVector
();
68
explicit
G4PhysicsFreeVector
(
size_t
theNbin);
69
G4PhysicsFreeVector
(
const
G4DataVector
&
binVector
,
70
const
G4DataVector
&
dataVector
);
71
// Constructors:
72
// 'binVector' has the low edge value of each scale bin.
73
// 'dataVector' has the cross-section/energy-loss/etc at
74
// the energy/momenturm of the corresponding a bin of
75
// 'binVector'. 'binVector' and 'dataVector' need to have
76
// the same vector length.
77
78
virtual
~G4PhysicsFreeVector
();
79
// Destructor
80
81
void
PutValue
(
size_t
binNumber,
G4double
binValue,
82
G4double
dataValue );
83
// To use this method to fill a PhysicsFreeVector, you have
84
// to Construct a PhysicsFreeVector of the size you need
85
// using G4PhysicsFreeVector(size_t theNbin). Also take
86
// note that you have to fill all bin values and data
87
// values before you the PhysicsFreeVector.
88
89
};
90
91
92
#endif
G4PhysicsFreeVector
Definition:
G4PhysicsFreeVector.hh:63
G4PhysicsVector.hh
G4PhysicsVector::dataVector
G4PVDataVector dataVector
Definition:
G4PhysicsVector.hh:218
G4PhysicsVector
Definition:
G4PhysicsVector.hh:77
G4PhysicsFreeVector::PutValue
void PutValue(size_t binNumber, G4double binValue, G4double dataValue)
Definition:
G4PhysicsFreeVector.cc:94
G4PhysicsFreeVector::~G4PhysicsFreeVector
virtual ~G4PhysicsFreeVector()
Definition:
G4PhysicsFreeVector.cc:90
G4PhysicsVector::binVector
G4PVDataVector binVector
Definition:
G4PhysicsVector.hh:219
G4DataVector
Definition:
G4DataVector.hh:50
globals.hh
G4double
double G4double
Definition:
G4Types.hh:76
G4DataVector.hh
G4PhysicsFreeVector::G4PhysicsFreeVector
G4PhysicsFreeVector()
Definition:
G4PhysicsFreeVector.cc:49
Generated on Wed Apr 30 2014 15:55:00 for Geant4.10 by
1.8.7