escript  Revision_
Ripley.h
Go to the documentation of this file.
1 
2 /*****************************************************************************
3 *
4 * Copyright (c) 2003-2020 by The University of Queensland
5 * http://www.uq.edu.au
6 *
7 * Primary Business: Queensland, Australia
8 * Licensed under the Apache License, version 2.0
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12 * Development 2012-2013 by School of Earth Sciences
13 * Development from 2014-2017 by Centre for Geoscience Computing (GeoComp)
14 * Development from 2019 by School of Earth and Environmental Sciences
15 **
16 *****************************************************************************/
17 
18 #ifndef __RIPLEY_RIPLEY_H__
19 #define __RIPLEY_RIPLEY_H__
20 
21 /*****************************************************************************
22  * Ripley is a FE domain library with regular hexagonal/rectangular
23  * elements
24  ****************************************************************************/
25 
26 #include <ripley/system_dep.h>
27 
28 #include <escript/EsysMPI.h>
29 
30 #include <boost/shared_ptr.hpp>
31 #include <list>
32 #include <map>
33 #include <string>
34 #include <vector>
35 
36 namespace ripley {
37 
42 
43 typedef std::pair<index_t,index_t> IndexPair;
44 typedef std::vector<index_t> IndexVector;
45 typedef std::vector<real_t> DoubleVector;
46 typedef std::vector<int> RankVector;
47 typedef std::map<std::string,int> TagMap;
48 
49 enum {
52  Nodes=3,
58  Points=6
59 };
60 
61 } // namespace ripley
62 
63 #endif /* __RIPLEY_RIPLEY_H__ */
64 
BlockOps.h
paso::Solver_RILU::mask_C
index_t * mask_C
Definition: Preconditioner.h:124
paso::Solver_RILU::n_block
dim_t n_block
Definition: Preconditioner.h:114
paso::Solver_RILU::n
dim_t n
Definition: Preconditioner.h:113
ripley::ReducedElements
@ ReducedElements
Definition: Ripley.h:55
paso::Solver_RILU::n_C
dim_t n_C
Definition: Preconditioner.h:116
ripley
Definition: ripley/src/AbstractAssembler.h:26
escript::DataTypes::real_t
double real_t
type of all real-valued scalars in escript
Definition: DataTypes.h:51
paso::Solver_RILU::b_F
double * b_F
Definition: Preconditioner.h:126
ripley::Points
@ Points
Definition: Ripley.h:58
ripley::TagMap
std::map< std::string, int > TagMap
Definition: Ripley.h:47
ripley::Nodes
@ Nodes
Definition: Ripley.h:52
ripley::ReducedDegreesOfFreedom
@ ReducedDegreesOfFreedom
Definition: Ripley.h:51
paso::Solver_RILU::b_C
double * b_C
Definition: Preconditioner.h:128
ripley::Elements
@ Elements
Definition: Ripley.h:54
paso::util::cumsum
index_t cumsum(dim_t N, index_t *array)
calculates the cumulative sum in array and returns the total sum
Definition: PasoUtil.cpp:87
ripley::DegreesOfFreedom
@ DegreesOfFreedom
Definition: Ripley.h:50
ripley::IndexPair
std::pair< index_t, index_t > IndexPair
Definition: Ripley.h:43
ripley::ReducedNodes
@ ReducedNodes
Definition: Ripley.h:53
paso::Solver_RILU_free
void Solver_RILU_free(Solver_RILU *in)
Definition: RILU.cpp:36
paso::Solver_RILU::n_F
dim_t n_F
Definition: Preconditioner.h:115
paso::Solver_updateIncompleteSchurComplement
void Solver_updateIncompleteSchurComplement(SparseMatrix_ptr A_CC, SparseMatrix_ptr A_CF, double *invA_FF, index_t *A_FF_pivot, SparseMatrix_ptr A_FC)
Definition: SchurComplement.cpp:29
ripley::RankVector
std::vector< int > RankVector
Definition: Ripley.h:46
paso::BlockOps_solveAll
void BlockOps_solveAll(dim_t n_block, dim_t n, double *D, index_t *pivot, double *x)
Definition: BlockOps.h:219
paso::util::copy
void copy(dim_t N, double *out, const double *in)
out = in
Definition: PasoUtil.h:88
Paso.h
paso::Solver_RILU::A_FC
SparseMatrix_ptr A_FC
Definition: Preconditioner.h:119
paso::Solver_RILU::A_CF
SparseMatrix_ptr A_CF
Definition: Preconditioner.h:120
paso::util::comparIndex
int comparIndex(const void *index1, const void *index2)
this int-comparison function is used by qsort/bsearch in various places
Definition: PasoUtil.cpp:26
escript::DataTypes::dim_t
index_t dim_t
Definition: DataTypes.h:65
paso::Solver_RILU::RILU_of_Schur
Solver_RILU * RILU_of_Schur
Definition: Preconditioner.h:129
paso::Solver_RILU
RILU preconditioner.
Definition: Preconditioner.h:112
paso::Solver_RILU::rows_in_C
index_t * rows_in_C
Definition: Preconditioner.h:122
ripley::DoubleVector
std::vector< real_t > DoubleVector
Definition: Ripley.h:45
paso::Solver_RILU::mask_F
index_t * mask_F
Definition: Preconditioner.h:123
ripley::FaceElements
@ FaceElements
Definition: Ripley.h:56
paso::Solver_solveRILU
void Solver_solveRILU(Solver_RILU *rilu, double *x, double *b)
Definition: RILU.cpp:290
paso::SparseMatrix_ptr
boost::shared_ptr< SparseMatrix > SparseMatrix_ptr
Definition: SparseMatrix.h:36
paso::Solver_RILU::inv_A_FF
double * inv_A_FF
Definition: Preconditioner.h:117
paso::PasoException
PasoException exception class.
Definition: PasoException.h:34
escript::gettime
double gettime()
returns the current ticks for timing
Definition: EsysMPI.h:187
escript::DataTypes::index_t
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:60
ripley::IndexVector
std::vector< index_t > IndexVector
Definition: Ripley.h:44
paso::Solver_RILU::x_C
double * x_C
Definition: Preconditioner.h:127
paso::Solver_RILU::x_F
double * x_F
Definition: Preconditioner.h:125
Preconditioner.h
paso::SparseMatrix_MatrixVector_CSR_OFFSET0
void SparseMatrix_MatrixVector_CSR_OFFSET0(const double alpha, const_SparseMatrix_ptr A, const double *in, const double beta, double *out)
Definition: SparseMatrix_MatrixVector.cpp:280
paso::Solver_RILU::A_FF_pivot
index_t * A_FF_pivot
Definition: Preconditioner.h:118
ripley::ReducedFaceElements
@ ReducedFaceElements
Definition: Ripley.h:57
PasoUtil.h
paso::Solver_getRILU
Solver_RILU * Solver_getRILU(SparseMatrix_ptr A, bool verbose)
Definition: RILU.cpp:72
paso
Definition: BiCGStab.cpp:26
escript::DataTypes::cplx_t
std::complex< real_t > cplx_t
complex data type
Definition: DataTypes.h:54
paso::Solver_RILU::rows_in_F
index_t * rows_in_F
Definition: Preconditioner.h:121