xref: /libCEED/include/ceed/fortran.h (revision d4cc18453651bd0f94c1a2e078b2646a92dafdcc)
1*9ba83ac0SJeremy L Thompson ! Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors.
2ea61e9acSJeremy L Thompson ! All Rights Reserved. See the top-level LICENSE and NOTICE files for details.
3ec3da8bcSJed Brown !
4ea61e9acSJeremy L Thompson ! SPDX-License-Identifier: BSD-2-Clause
5ec3da8bcSJed Brown !
6ea61e9acSJeremy L Thompson ! This file is part of CEED:  http://github.com/ceed
7ec3da8bcSJed Brown !
8ec3da8bcSJed Brown !-----------------------------------------------------------------------
9ec3da8bcSJed Brown !
10ec3da8bcSJed Brown !-----------------------------------------------------------------------
11ec3da8bcSJed Brown ! Dummy parameters for CEED Fortran 77+ stubs
12ec3da8bcSJed Brown !-----------------------------------------------------------------------
13ec3da8bcSJed Brown 
14ec3da8bcSJed Brown !-----------------------------------------------------------------------
15ec3da8bcSJed Brown ! CeedMemType
16ec3da8bcSJed Brown !-----------------------------------------------------------------------
17ec3da8bcSJed Brown 
18ec3da8bcSJed Brown       integer ceed_mem_host
19ec3da8bcSJed Brown       parameter(ceed_mem_host   = 0)
20ec3da8bcSJed Brown 
21ec3da8bcSJed Brown       integer ceed_mem_device
22ec3da8bcSJed Brown       parameter(ceed_mem_device = 1)
23ec3da8bcSJed Brown 
24ec3da8bcSJed Brown !-----------------------------------------------------------------------
2580a9ef05SNatalie Beams ! CeedScalarType
2680a9ef05SNatalie Beams !-----------------------------------------------------------------------
2780a9ef05SNatalie Beams 
2880a9ef05SNatalie Beams       integer ceed_scalar_fp32
2980a9ef05SNatalie Beams       parameter(ceed_scalar_fp32 = 0)
3080a9ef05SNatalie Beams 
3180a9ef05SNatalie Beams       integer ceed_scalar_fp64
3280a9ef05SNatalie Beams       parameter(ceed_scalar_fp64 = 1)
3380a9ef05SNatalie Beams 
3480a9ef05SNatalie Beams !-----------------------------------------------------------------------
35ec3da8bcSJed Brown ! CeedCopyMode
36ec3da8bcSJed Brown !-----------------------------------------------------------------------
37ec3da8bcSJed Brown 
38ec3da8bcSJed Brown       integer ceed_copy_values
39ec3da8bcSJed Brown       parameter(ceed_copy_values = 0)
40ec3da8bcSJed Brown 
41ec3da8bcSJed Brown       integer ceed_use_pointer
42ec3da8bcSJed Brown       parameter(ceed_use_pointer = 1)
43ec3da8bcSJed Brown 
44ec3da8bcSJed Brown       integer ceed_own_pointer
45ec3da8bcSJed Brown       parameter(ceed_own_pointer = 2)
46ec3da8bcSJed Brown 
47ec3da8bcSJed Brown !-----------------------------------------------------------------------
48ec3da8bcSJed Brown ! CeedRequest related
49ec3da8bcSJed Brown !-----------------------------------------------------------------------
50ec3da8bcSJed Brown 
51ec3da8bcSJed Brown       integer ceed_request_immediate
52ec3da8bcSJed Brown       parameter(ceed_request_immediate = -1)
53ec3da8bcSJed Brown 
54ec3da8bcSJed Brown       integer ceed_request_ordered
55ec3da8bcSJed Brown       parameter(ceed_request_ordered   = -2)
56ec3da8bcSJed Brown 
57ec3da8bcSJed Brown !-----------------------------------------------------------------------
58ec3da8bcSJed Brown ! Null
59ec3da8bcSJed Brown !-----------------------------------------------------------------------
60ec3da8bcSJed Brown 
61ec3da8bcSJed Brown       integer ceed_null
62ec3da8bcSJed Brown       parameter(ceed_null = -3)
63ec3da8bcSJed Brown 
64ec3da8bcSJed Brown !-----------------------------------------------------------------------
65ec3da8bcSJed Brown ! CeedNormType
66ec3da8bcSJed Brown !-----------------------------------------------------------------------
67ec3da8bcSJed Brown 
68ec3da8bcSJed Brown       integer ceed_norm_1
69ec3da8bcSJed Brown       parameter(ceed_norm_1      = 0 )
70ec3da8bcSJed Brown 
71ec3da8bcSJed Brown       integer ceed_norm_2
72ec3da8bcSJed Brown       parameter(ceed_norm_2      = 1 )
73ec3da8bcSJed Brown 
74ec3da8bcSJed Brown       integer ceed_norm_max
75ec3da8bcSJed Brown       parameter(ceed_norm_max    = 2 )
76ec3da8bcSJed Brown 
77ec3da8bcSJed Brown !-----------------------------------------------------------------------
78ec3da8bcSJed Brown ! Ceed Strides Constant
79ec3da8bcSJed Brown !-----------------------------------------------------------------------
80ec3da8bcSJed Brown 
81ec3da8bcSJed Brown       integer ceed_strides_backend
82ec3da8bcSJed Brown       parameter(ceed_strides_backend     = -4)
83ec3da8bcSJed Brown 
84ec3da8bcSJed Brown !-----------------------------------------------------------------------
85ec3da8bcSJed Brown ! CeedTransposeMode
86ec3da8bcSJed Brown !-----------------------------------------------------------------------
87ec3da8bcSJed Brown 
88ec3da8bcSJed Brown       integer ceed_notranspose
89ec3da8bcSJed Brown       parameter(ceed_notranspose = 0)
90ec3da8bcSJed Brown 
91ec3da8bcSJed Brown       integer ceed_transpose
92ec3da8bcSJed Brown       parameter(ceed_transpose   = 1)
93ec3da8bcSJed Brown 
94ec3da8bcSJed Brown !-----------------------------------------------------------------------
95ec3da8bcSJed Brown ! CeedEvalMode
96ec3da8bcSJed Brown !-----------------------------------------------------------------------
97ec3da8bcSJed Brown 
98ec3da8bcSJed Brown       integer ceed_eval_none
99ec3da8bcSJed Brown       parameter(ceed_eval_none   = 0 )
100ec3da8bcSJed Brown 
101ec3da8bcSJed Brown       integer ceed_eval_interp
102ec3da8bcSJed Brown       parameter(ceed_eval_interp = 1 )
103ec3da8bcSJed Brown 
104ec3da8bcSJed Brown       integer ceed_eval_grad
105ec3da8bcSJed Brown       parameter(ceed_eval_grad   = 2 )
106ec3da8bcSJed Brown 
107ec3da8bcSJed Brown       integer ceed_eval_div
108ec3da8bcSJed Brown       parameter(ceed_eval_div    = 4 )
109ec3da8bcSJed Brown 
110ec3da8bcSJed Brown       integer ceed_eval_curl
111ec3da8bcSJed Brown       parameter(ceed_eval_curl   = 8 )
112ec3da8bcSJed Brown 
113ec3da8bcSJed Brown       integer ceed_eval_weight
114ec3da8bcSJed Brown       parameter(ceed_eval_weight = 16)
115ec3da8bcSJed Brown 
116ec3da8bcSJed Brown !-----------------------------------------------------------------------
117ec3da8bcSJed Brown ! CeedQuadMode
118ec3da8bcSJed Brown !-----------------------------------------------------------------------
119ec3da8bcSJed Brown 
120ec3da8bcSJed Brown       integer ceed_gauss
121ec3da8bcSJed Brown       parameter(ceed_gauss         = 0)
122ec3da8bcSJed Brown 
123ec3da8bcSJed Brown       integer ceed_gauss_lobatto
124ec3da8bcSJed Brown       parameter(ceed_gauss_lobatto = 1)
125ec3da8bcSJed Brown 
126ec3da8bcSJed Brown !-----------------------------------------------------------------------
127ec3da8bcSJed Brown ! CeedElemTopology
128ec3da8bcSJed Brown !-----------------------------------------------------------------------
129ec3da8bcSJed Brown 
130ec3da8bcSJed Brown       integer ceed_line
131ec3da8bcSJed Brown       parameter(ceed_line        = int(z'10000') )
132ec3da8bcSJed Brown 
133ec3da8bcSJed Brown       integer ceed_triangle
134ec3da8bcSJed Brown       parameter(ceed_triangle    = int(z'20001') )
135ec3da8bcSJed Brown 
136ec3da8bcSJed Brown       integer ceed_quad
137ec3da8bcSJed Brown       parameter(ceed_quad        = int(z'20002') )
138ec3da8bcSJed Brown 
139ec3da8bcSJed Brown       integer ceed_tet
140ec3da8bcSJed Brown       parameter(ceed_tet         = int(z'30003') )
141ec3da8bcSJed Brown 
142ec3da8bcSJed Brown       integer ceed_pryamid
143ec3da8bcSJed Brown       parameter(ceed_pryamid     = int(z'30004') )
144ec3da8bcSJed Brown 
145ec3da8bcSJed Brown       integer ceed_prism
146ec3da8bcSJed Brown       parameter(ceed_prism       = int(z'30005') )
147ec3da8bcSJed Brown 
148ec3da8bcSJed Brown       integer ceed_hex
149ec3da8bcSJed Brown       parameter(ceed_hex         = int(z'30006') )
150ec3da8bcSJed Brown 
151ec3da8bcSJed Brown !-----------------------------------------------------------------------
152ec3da8bcSJed Brown ! Operator and OperatorField Constants
153ec3da8bcSJed Brown !-----------------------------------------------------------------------
154ec3da8bcSJed Brown 
155ec3da8bcSJed Brown       integer ceed_vector_active
156ec3da8bcSJed Brown       parameter(ceed_vector_active        = -5)
157ec3da8bcSJed Brown 
158ec3da8bcSJed Brown       integer ceed_vector_none
159ec3da8bcSJed Brown       parameter(ceed_vector_none          = -6)
160ec3da8bcSJed Brown 
161ec3da8bcSJed Brown       integer ceed_elemrestriction_none
162ec3da8bcSJed Brown       parameter(ceed_elemrestriction_none = -7)
163ec3da8bcSJed Brown 
164356036faSJeremy L Thompson       integer ceed_basis_none
165356036faSJeremy L Thompson       parameter(ceed_basis_none           = -8)
166ec3da8bcSJed Brown 
167ec3da8bcSJed Brown       integer ceed_qfunction_none
168ec3da8bcSJed Brown       parameter(ceed_qfunction_none       = -9)
169ec3da8bcSJed Brown 
170ec3da8bcSJed Brown ! -*- fortran-mode -*-
171