EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
BorderedBandMatrix.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file BorderedBandMatrix.h
1
/*
2
* BorderedBandMatrix.h
3
*
4
* Created on: Aug 14, 2011
5
* Author: kleinwrt
6
*/
7
8
31
#ifndef BORDEREDBANDMATRIX_H_
32
#define BORDEREDBANDMATRIX_H_
33
34
#include<iostream>
35
#include<vector>
36
#include<math.h>
37
#include<cstdlib>
38
#include "TVectorD.h"
39
#include "TMatrixD.h"
40
#include "TMatrixDSym.h"
41
#include "
VMatrix.h
"
42
44
namespace
gbl {
45
47
79
class
BorderedBandMatrix
{
80
public
:
81
BorderedBandMatrix
();
82
virtual
~BorderedBandMatrix
();
83
void
resize
(
unsigned
int
nSize,
unsigned
int
nBorder = 1,
84
unsigned
int
nBand = 5);
85
void
solveAndInvertBorderedBand
(
const
VVector
&aRightHandSide,
86
VVector
&aSolution);
87
void
addBlockMatrix
(
double
aWeight,
88
const
std::vector<unsigned int>* anIndex,
89
const
std::vector<double>* aVector);
90
TMatrixDSym
getBlockMatrix
(
const
std::vector<unsigned int> anIndex)
const
;
91
void
printMatrix
()
const
;
92
93
private
:
94
unsigned
int
numSize
;
95
unsigned
int
numBorder
;
96
unsigned
int
numBand
;
97
unsigned
int
numCol
;
98
VSymMatrix
theBorder
;
99
VMatrix
theMixed
;
100
VMatrix
theBand
;
101
102
void
decomposeBand
();
103
VVector
solveBand
(
const
VVector
&aRightHandSide)
const
;
104
VMatrix
solveBand
(
const
VMatrix
&aRightHandSide)
const
;
105
VMatrix
invertBand
();
106
VMatrix
bandOfAVAT
(
const
VMatrix
&anArray,
107
const
VSymMatrix
&aSymArray)
const
;
108
};
109
}
110
#endif
/* BORDEREDBANDMATRIX_H_ */
fun4all_GenFit
blob
master
GBL
include
BorderedBandMatrix.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:54
using
1.8.2 with
EIC GitHub integration