16
16
#define UFCX_VERSION_RELEASE 0
17
17
18
18
#if UFCX_VERSION_RELEASE
19
- #define UFCX_VERSION \
19
+ #define UFCX_VERSION \
20
20
UFCX_VERSION_MAJOR "." UFCX_VERSION_MINOR "." UFCX_VERSION_MAINTENANCE
21
21
#else
22
- #define UFCX_VERSION \
23
- UFCX_VERSION_MAJOR "." UFCX_VERSION_MINOR "." UFCX_VERSION_MAINTENANCE ".dev0"
22
+ #define UFCX_VERSION \
23
+ UFCX_VERSION_MAJOR "." UFCX_VERSION_MINOR "." UFCX_VERSION_MAINTENANCE ".de" \
24
+ "v0"
24
25
#endif
25
26
26
27
#include <stdbool.h>
@@ -86,8 +87,8 @@ extern "C"
86
87
/// null pointer can be passed. For interior facets the array will have size 2
87
88
/// (one permutation for each cell adjacent to the facet).
88
89
typedef void (ufcx_tabulate_tensor_float32 )(
89
- float * restrict A , const float * restrict w ,
90
- const float * restrict c , const float * restrict coordinate_dofs ,
90
+ float * restrict A , const float * restrict w , const float * restrict c ,
91
+ const float * restrict coordinate_dofs ,
91
92
const int * restrict entity_local_index ,
92
93
const uint8_t * restrict quadrature_permutation );
93
94
@@ -96,8 +97,8 @@ extern "C"
96
97
///
97
98
/// @see ufcx_tabulate_tensor_single
98
99
typedef void (ufcx_tabulate_tensor_float64 )(
99
- double * restrict A , const double * restrict w ,
100
- const double * restrict c , const double * restrict coordinate_dofs ,
100
+ double * restrict A , const double * restrict w , const double * restrict c ,
101
+ const double * restrict coordinate_dofs ,
101
102
const int * restrict entity_local_index ,
102
103
const uint8_t * restrict quadrature_permutation );
103
104
@@ -136,21 +137,21 @@ extern "C"
136
137
#endif // __STDC_NO_COMPLEX__
137
138
bool needs_facet_permutations ;
138
139
139
- /// Get the hash of the coordinate element associated with the geometry of the mesh.
140
+ /// Hash of the coordinate element associated with the geometry of the mesh.
140
141
uint64_t coordinate_element_hash ;
141
142
142
143
uint8_t domain ;
143
144
} ufcx_integral ;
144
145
145
146
typedef struct ufcx_expression
146
147
{
147
- /// Evaluate expression into tensor A with compiled evaluation points
148
+ /// Evaluate expression into tensor A with compiled evaluation
149
+ /// points.
148
150
///
149
- /// @param[out] A
150
- /// Dimensions: A[num_points][num_components][num_argument_dofs]
151
+ /// @param[out] A Dimensions:
152
+ /// ` A[num_points][num_components][num_argument_dofs]`
151
153
///
152
154
/// @see ufcx_tabulate_tensor
153
- ///
154
155
ufcx_tabulate_tensor_float32 * tabulate_tensor_float32 ;
155
156
ufcx_tabulate_tensor_float64 * tabulate_tensor_float64 ;
156
157
#ifndef __STDC_NO_COMPLEX__
@@ -180,7 +181,7 @@ extern "C"
180
181
int entity_dimension ;
181
182
182
183
/// Coordinates of evaluations points. Dimensions:
183
- /// points[num_points][entity_dimension]
184
+ /// ` points[num_points][entity_dimension]`
184
185
const double * points ;
185
186
186
187
/// Shape of expression. Dimension: value_shape[num_components]
@@ -192,6 +193,9 @@ extern "C"
192
193
/// Rank, i.e. number of arguments
193
194
int rank ;
194
195
196
+ /// Hash of the coordinate element associated with the geometry of
197
+ /// the mesh.
198
+ uint64_t coordinate_element_hash ;
195
199
} ufcx_expression ;
196
200
197
201
/// This class defines the interface for the assembly of the global
@@ -205,9 +209,9 @@ extern "C"
205
209
///
206
210
/// A = a(V1, V2, ..., Vr, w1, w2, ..., wn),
207
211
///
208
- /// where each argument Vj represents the application to the
209
- /// sequence of basis functions of Vj and w1, w2, ..., wn are given
210
- /// fixed functions (coefficients).
212
+ /// where each argument Vj represents the application to the sequence
213
+ /// of basis functions of Vj and w1, w2, ..., wn are given fixed
214
+ /// functions (coefficients).
211
215
typedef struct ufcx_form
212
216
{
213
217
/// String identifying the form
@@ -231,8 +235,8 @@ extern "C"
231
235
/// List of names of constants
232
236
const char * * constant_name_map ;
233
237
234
- /// Get the hash of the finite element for the i-th argument function, where 0 <=
235
- /// i < r + n.
238
+ /// Get the hash of the finite element for the i-th argument
239
+ /// function, where 0 <= i < r + n.
236
240
///
237
241
/// @param i Argument number if 0 <= i < r Coefficient number j = i
238
242
/// - r if r + j <= i < r + n
@@ -244,7 +248,8 @@ extern "C"
244
248
/// IDs for each integral in form_integrals list
245
249
int * form_integral_ids ;
246
250
247
- /// Offsets for cell, interior facet and exterior facet integrals in form_integrals list
251
+ /// Offsets for cell, interior facet and exterior facet integrals in
252
+ /// form_integrals list
248
253
int * form_integral_offsets ;
249
254
250
255
} ufcx_form ;
0 commit comments