Go to the documentation of this file.
55 using Matrix::operator=;
58 *
this = Source2MEGMat+(
Head2MEGMat*HeadMatInv)*SourceMat;
65 using Matrix::operator=;
75 using Matrix::operator=;
83 #pragma omp parallel for
85 for (
int i=0;i<static_cast<int>(LeadField.
nlin());++i) {
87 for (
unsigned i=0;i<LeadField.
nlin();++i) {
100 for (
unsigned i = 0; i < LeadField.
ncol(); ++i) {
111 using Matrix::operator=;
115 const Matrix& Source2MEGMat) {
122 #pragma omp parallel for
124 for (
int i=0;i<static_cast<int>(LeadField.
nlin());++i) {
126 for (
unsigned i=0;i<LeadField.
nlin();++i) {
139 for (
unsigned i=0;i<LeadField.
ncol();i++) {
151 unsigned gauss_order = 3;
166 #pragma omp parallel for
168 for (
int i=0;i<static_cast<int>(RHS.
nlin());++i) {
170 for (
unsigned i=0;i<RHS.
nlin();++i) {
183 for (
unsigned i = 0; i < dipoles.
nlin(); ++i) {
191 void saveEEG(
const std::string filename )
const { EEGleadfield.save(filename); }
193 void saveMEG(
const std::string filename )
const { MEGleadfield.save(filename); }
203 using Matrix::operator=;
205 *
this = Source2IPMat + (Head2IPMat * HeadMatInv) * SourceMat;
212 using Matrix::operator=;
214 *
this = (Head2IPMat * HeadMatInv) * SourceMat;
GainEEGMEGadjoint(const Geometry &geo, const Matrix &dipoles, const SymMatrix &HeadMat, const SparseMatrix &Head2EEGMat, const Matrix &Head2MEGMat, const Matrix &Source2MEGMat)
Vector getlin(size_t i) const
Vector getlin(size_t i) const
GainInternalPot(const SymMatrix &HeadMatInv, const Matrix &SourceMat, const Matrix &Head2IPMat, const Matrix &Source2IPMat)
Matrix submat(size_t istart, size_t isize, size_t jstart, size_t jsize) const
GainMEGadjoint(const Geometry &geo, const Matrix &dipoles, const SymMatrix &HeadMat, const Matrix &Head2MEGMat, const Matrix &Source2MEGMat)
GainMEG(const Matrix &GainMat)
SparseMatrix transpose() const
GainEEG(const Matrix &GainMat)
void saveEEG(const std::string filename) const
GainMEG(const SymMatrix &HeadMatInv, const Matrix &SourceMat, const Matrix &Head2MEGMat, const Matrix &Source2MEGMat)
void setlin(size_t i, const Vector &v)
Geometry contains the electrophysiological model Here are stored the vertices, meshes and domains.
void setcol(size_t j, const Vector &v)
virtual size_t ncol() const
Vector getcol(size_t j) const
unsigned GMRes(const T &A, const P &M, Vector &x, const Vector &b, int max_iter, double tol, unsigned m)
GainEEG(const SymMatrix &HeadMatInv, const Matrix &SourceMat, const SparseMatrix &Head2EEGMat)
void saveMEG(const std::string filename) const
GainEEGadjoint(const Geometry &geo, const Matrix &dipoles, const SymMatrix &HeadMat, const SparseMatrix &Head2EEGMat)
Vector solveLin(const Vector &B) const
GainEITInternalPot(const SymMatrix &HeadMatInv, const Matrix &SourceMat, const Matrix &Head2IPMat)
#define PROGRESSBAR(a, b)