escript Revision_
Dudley.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 __DUDLEY_H__
19#define __DUDLEY_H__
20
21/****************************************************************************/
22
23/* Dudley finite element solver */
24
25/****************************************************************************/
26
27#include <escript/DataTypes.h>
28
29#include <dudley/DudleyException.h>
30
31#include <escript/Data.h>
32#include <escript/EsysMPI.h>
33
34namespace dudley {
35
39
40#define DUDLEY_UNKNOWN -1
41#define DUDLEY_DEGREES_OF_FREEDOM 1
42#define DUDLEY_NODES 3
43#define DUDLEY_ELEMENTS 4
44#define DUDLEY_FACE_ELEMENTS 5
45#define DUDLEY_POINTS 6
46#define DUDLEY_REDUCED_ELEMENTS 10
47#define DUDLEY_REDUCED_FACE_ELEMENTS 11
48
49//
50// Codes for function space types supported
51enum {
59};
60
62{
63 const int fs = in.getFunctionSpace().getTypeCode();
64 return (fs == ReducedElements || fs == ReducedFaceElements);
65}
66
67#define DUDLEY_INITIAL_STATUS 0
68
69} // namespace dudley
70
71#endif // __DUDLEY_H__
72
#define DUDLEY_FACE_ELEMENTS
Definition Dudley.h:44
#define DUDLEY_DEGREES_OF_FREEDOM
Definition Dudley.h:41
#define DUDLEY_ELEMENTS
Definition Dudley.h:43
#define DUDLEY_NODES
Definition Dudley.h:42
#define DUDLEY_POINTS
Definition Dudley.h:45
#define DUDLEY_REDUCED_FACE_ELEMENTS
Definition Dudley.h:47
#define DUDLEY_REDUCED_ELEMENTS
Definition Dudley.h:46
Data represents a collection of datapoints.
Definition Data.h:64
const FunctionSpace & getFunctionSpace() const
Return the function space.
Definition Data.h:463
int getTypeCode() const
Returns the function space type code.
Definition FunctionSpace.cpp:95
A suite of factory methods for creating 2D and 3D dudley domains.
Definition dudley/src/Assemble.h:32
@ FaceElements
Definition Dudley.h:56
@ ReducedFaceElements
Definition Dudley.h:57
@ ReducedElements
Definition Dudley.h:55
@ DegreesOfFreedom
Definition Dudley.h:52
@ Nodes
Definition Dudley.h:53
@ Elements
Definition Dudley.h:54
@ Points
Definition Dudley.h:58
bool hasReducedIntegrationOrder(const escript::Data &in)
Definition Dudley.h:61
std::vector< index_t > IndexVector
Definition DataTypes.h:64
index_t dim_t
Definition DataTypes.h:66
int index_t
type for array/matrix indices used both globally and on each rank
Definition DataTypes.h:61