imate
C++/CUDA Reference
Loading...
Searching...
No Matches
c_linear_operator_base.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: Copyright 2021, Siavash Ameli <sameli@berkeley.edu>
3 * SPDX-License-Identifier: BSD-3-Clause
4 * SPDX-FileType: SOURCE
5 *
6 * This program is free software: you can redistribute it and/or modify it
7 * under the terms of the license found in the LICENSE.txt file in the root
8 * directory of this source tree.
9 */
10
11
12#ifndef _C_LINEAR_OPERATOR_C_LINEAR_OPERATOR_BASE_H_
13#define _C_LINEAR_OPERATOR_C_LINEAR_OPERATOR_BASE_H_
14
15// =======
16// Headers
17// =======
18
19#include "../_definitions/types.h" // FlagType, IndexType, LongIndexType
20
21
22// ======================
23// c Linear Operator Base
24// ======================
25
38
40{
41 public:
42
43 // Member methods
45
47 const LongIndexType num_rows_,
48 const LongIndexType num_columns_);
49
50 virtual ~cLinearOperatorBase();
51
56
57 virtual void set_symmetry(FlagType symmetric) = 0;
58
59 protected:
60
61 // Member data
66};
67
68#endif // _C_LINEAR_OPERATOR_C_LINEAR_OPERATOR_BASE_H_
Base class for cLinearOperator and cuLinearOperator . This class is not templated so that both cpp an...
virtual ~cLinearOperatorBase()
Destructor.
cLinearOperatorBase()
Default constructor.
IndexType get_num_parameters() const
Returns the number of parameters of the linear operator.
virtual void set_symmetry(FlagType symmetric)=0
LongIndexType get_num_rows() const
Returns the number of rows of the matrix.
LongIndexType get_num_columns() const
Returns the number of columns of the matrix.
const LongIndexType num_rows
FlagType is_eigenvalue_relation_known() const
Returns a flag that determines whether a relation between the parameters of the operator and its eige...
const LongIndexType num_columns
int LongIndexType
Definition types.h:60
int FlagType
Definition types.h:68
int IndexType
Definition types.h:65