MPQC 2.3.1
scextrapmat.h
1//
2// scextrapmat.h
3//
4// Copyright (C) 1996 Limit Point Systems, Inc.
5//
6// Author: Curtis Janssen <cljanss@limitpt.com>
7// Maintainer: LPS
8//
9// This file is part of the SC Toolkit.
10//
11// The SC Toolkit is free software; you can redistribute it and/or modify
12// it under the terms of the GNU Library General Public License as published by
13// the Free Software Foundation; either version 2, or (at your option)
14// any later version.
15//
16// The SC Toolkit is distributed in the hope that it will be useful,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19// GNU Library General Public License for more details.
20//
21// You should have received a copy of the GNU Library General Public License
22// along with the SC Toolkit; see the file COPYING.LIB. If not, write to
23// the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
24//
25// The U.S. Government is granted a limited license as per AL 91-7.
26//
27
28#ifndef _math_optimize_scextrapmat_h
29#define _math_optimize_scextrapmat_h
30
31#include <math/optimize/scextrap.h>
32#include <math/scmat/matrix.h>
33
34namespace sc {
35
36class SymmSCMatrixSCExtrapData: public SCExtrapData {
37 private:
39 public:
40 SymmSCMatrixSCExtrapData(StateIn&);
41 SymmSCMatrixSCExtrapData(const RefSymmSCMatrix&);
42
44
46 void zero();
48};
49
50class SymmSCMatrix2SCExtrapData: public SCExtrapData {
51 private:
54 public:
55 SymmSCMatrix2SCExtrapData(StateIn&);
56 SymmSCMatrix2SCExtrapData(const RefSymmSCMatrix&, const RefSymmSCMatrix&);
57
59
61 void zero();
63};
64
65class SymmSCMatrix4SCExtrapData: public SCExtrapData {
66 private:
71 public:
72 SymmSCMatrix4SCExtrapData(StateIn&);
73 SymmSCMatrix4SCExtrapData(const RefSymmSCMatrix&, const RefSymmSCMatrix&,
74 const RefSymmSCMatrix&, const RefSymmSCMatrix&);
75
77
79 void zero();
81};
82
83class SymmSCMatrixNSCExtrapData: public SCExtrapData {
84 private:
85 int n_;
87 public:
88 SymmSCMatrixNSCExtrapData(StateIn&);
89 SymmSCMatrixNSCExtrapData(int n, RefSymmSCMatrix*);
90
92
94 void zero();
96};
97
98class SymmSCMatrixSCExtrapError: public SCExtrapError {
99 private:
101 public:
102 SymmSCMatrixSCExtrapError(StateIn&);
103 SymmSCMatrixSCExtrapError(const RefSymmSCMatrix&);
104
106
107 double error();
109};
110
111}
112
113#endif
114
115// Local Variables:
116// mode: c++
117// c-file-style: "CLJ"
118// End:
The RefSymmSCMatrix class is a smart pointer to an SCSymmSCMatrix specialization.
Definition matrix.h:261
A template class that maintains references counts.
Definition ref.h:332
SCExtrapData()
Construct a new SCExtrapData.
SCExtrapError()
Construct a new SCExtrapError.
Restores objects that derive from SavableState.
Definition statein.h:70
Serializes objects that derive from SavableState.
Definition stateout.h:61
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
void accumulate_scaled(double, const Ref< SCExtrapData > &)
The passed SCExtrapData is accumulated into this after applying the scaling factor.
void zero()
Set this to zero.
SCExtrapData * copy()
Return a copy of this.
SCExtrapData * copy()
Return a copy of this.
void zero()
Set this to zero.
void accumulate_scaled(double, const Ref< SCExtrapData > &)
The passed SCExtrapData is accumulated into this after applying the scaling factor.
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
void accumulate_scaled(double, const Ref< SCExtrapData > &)
The passed SCExtrapData is accumulated into this after applying the scaling factor.
void zero()
Set this to zero.
SCExtrapData * copy()
Return a copy of this.
void zero()
Set this to zero.
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
void accumulate_scaled(double, const Ref< SCExtrapData > &)
The passed SCExtrapData is accumulated into this after applying the scaling factor.
SCExtrapData * copy()
Return a copy of this.
double error()
Returns some measure of the total error.
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
double scalar_product(const Ref< SCExtrapError > &)
Performs a scalar product between this and the given SCExtrapError.

Generated at Mon Apr 28 2025 00:00:00 for MPQC 2.3.1 using the documentation package Doxygen 1.13.2.