SheafSystem  0.0.0.0
field_at0_funcs.impl.h
1 
2 //
3 // Copyright (c) 2014 Limit Point Systems, Inc.
4 //
5 // Licensed under the Apache License, Version 2.0 (the "License");
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 // http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17 
19 
20 //==============================================================================
21 // NON-MEMBER FUNCTIONS OF AT0 FACET
22 //==============================================================================
23 
25 void
27 acos(const field_at0& x0, field_at0& xresult, bool xauto_access)
28 {
29  // Preconditions:
30 
31  require(precondition_of(\
32  acos(x0.property(), xresult.property(), xauto_access)));
33 
34  // Body:
35 
36  fiber_bundle::sec_at0_algebra::acos(x0.property(), xresult.property(), xauto_access);
37 
38  // Postconditions:
39 
40  ensure(postcondition_of(\
41  acos(x0.property(), xresult.property(), xauto_access)));
42 
43  // Exit:
44 
45  return;
46 }
47 
49 void
51 asin(const field_at0& x0, field_at0& xresult, bool xauto_access)
52 {
53  // Preconditions:
54 
55  require(precondition_of(\
56  asin(x0.property(), xresult.property(), xauto_access)));
57 
58  // Body:
59 
60  fiber_bundle::sec_at0_algebra::asin(x0.property(), xresult.property(), xauto_access);
61 
62  // Postconditions:
63 
64  ensure(postcondition_of(\
65  asin(x0.property(), xresult.property(), xauto_access)));
66 
67  // Exit:
68 
69  return;
70 }
71 
73 void
75 atan(const field_at0& x0, field_at0& xresult, bool xauto_access)
76 {
77  // Preconditions:
78 
79  require(precondition_of(\
80  atan(x0.property(), xresult.property(), xauto_access)));
81 
82  // Body:
83 
84  fiber_bundle::sec_at0_algebra::atan(x0.property(), xresult.property(), xauto_access);
85 
86  // Postconditions:
87 
88  ensure(postcondition_of(\
89  atan(x0.property(), xresult.property(), xauto_access)));
90 
91  // Exit:
92 
93  return;
94 }
95 
97 void
99 atan2(const field_at0& x0, const field_at0& x1, field_at0& xresult,
100  bool xauto_access)
101 {
102  // Preconditions:
103 
104  require(precondition_of(\
105  atan2(x0.property(), x1.property(), xresult.property(), xauto_access)));
106 
107  // Body:
108 
109  fiber_bundle::sec_at0_algebra::atan2(x0.property(), x1.property(), xresult.property(), xauto_access);
110 
111  // Postconditions:
112 
113  ensure(postcondition_of(\
114  atan2(x0.property(), x1.property(), xresult.property(), xauto_access)));
115 
116  // Exit:
117 
118  return;
119 }
120 
122 void
124 ceil(const field_at0& x0, field_at0& xresult, bool xauto_access)
125 {
126  // Preconditions:
127 
128  require(precondition_of(\
129  ceil(x0.property(), xresult.property(), xauto_access)));
130 
131  // Body:
132 
133  fiber_bundle::sec_at0_algebra::ceil(x0.property(), xresult.property(), xauto_access);
134 
135  // Postconditions:
136 
137  ensure(postcondition_of(\
138  ceil(x0.property(), xresult.property(), xauto_access)));
139 
140  // Exit:
141 
142  return;
143 }
144 
146 void
148 cos(const field_at0& x0, field_at0& xresult, bool xauto_access)
149 {
150  // Preconditions:
151 
152  require(precondition_of(cos(x0.property(), xresult.property(), xauto_access)));
153 
154  // Body:
155 
156  fiber_bundle::sec_at0_algebra::cos(x0.property(), xresult.property(), xauto_access);
157 
158  // Postconditions:
159 
160  ensure(postcondition_of(cos(x0.property(), xresult.property(), xauto_access)));
161 
162  // Exit:
163 
164  return;
165 }
166 
168 void
170 cosh(const field_at0& x0, field_at0& xresult, bool xauto_access)
171 {
172  // Preconditions:
173 
174  require(precondition_of(cosh(x0.property(), xresult.property(), xauto_access)));
175 
176  // Body:
177 
178  fiber_bundle::sec_at0_algebra::cosh(x0.property(), xresult.property(), xauto_access);
179 
180  // Postconditions:
181 
182  ensure(postcondition_of(\
183  cosh(x0.property(), xresult.property(), xauto_access)));
184 
185  // Exit:
186 
187  return;
188 }
189 
191 void
193 exp(const field_at0& x0, field_at0& xresult, bool xauto_access)
194 {
195  // Preconditions:
196 
197  require(precondition_of(\
198  exp(x0.property(), xresult.property(), xauto_access)));
199 
200  // Body:
201 
202  fiber_bundle::sec_at0_algebra::exp(x0.property(), xresult.property(), xauto_access);
203 
204  // Postconditions:
205 
206  ensure(postcondition_of(\
207  exp(x0.property(), xresult.property(), xauto_access)));
208 
209  // Exit:
210 
211  return;
212 }
213 
215 void
217 fabs(const field_at0& x0, field_at0& xresult, bool xauto_access)
218 {
219  // Preconditions:
220 
221  require(precondition_of(\
222  fabs(x0.property(), xresult.property(), xauto_access)));
223 
224  // Body:
225 
226  fiber_bundle::sec_at0_algebra::fabs(x0.property(), xresult.property(), xauto_access);
227 
228  // Postconditions:
229 
230  ensure(postcondition_of(\
231  fabs(x0.property(), xresult.property(), xauto_access)));
232 
233  // Exit:
234 
235  return;
236 }
237 
239 void
241 floor(const field_at0& x0, field_at0& xresult, bool xauto_access)
242 {
243  // Preconditions:
244 
245  require(precondition_of(\
246  floor(x0.property(), xresult.property(), xauto_access)));
247 
248  // Body:
249 
250  fiber_bundle::sec_at0_algebra::floor(x0.property(), xresult.property(), xauto_access);
251 
252  // Postconditions:
253 
254  ensure(postcondition_of(\
255  floor(x0.property(), xresult.property(), xauto_access)));
256 
257  // Exit:
258 
259  return;
260 }
261 
263 void
265 fmod(const field_at0& x0, const field_at0& x1, field_at0& xresult,
266  bool xauto_access)
267 {
268  // Preconditions:
269 
270  require(precondition_of(\
271  fmod(x0.property(), x1.property(), xresult.property(), xauto_access)));
272 
273  // Body:
274 
275  fiber_bundle::sec_at0_algebra::fmod(x0.property(), x1.property(), xresult.property(), xauto_access);
276 
277  // Postconditions:
278 
279  ensure(postcondition_of(\
280  fmod(x0.property(), x1.property(), xresult.property(), xauto_access)));
281 
282  // Exit:
283 
284  return;
285 }
286 
288 void
290 frexp(const field_at0& x0, field_at0& xsignificand, field_at0& xexp,
291  bool xauto_access)
292 {
293  // Preconditions:
294 
295  require(precondition_of(\
296  frexp(x0.property(), xsignificand.property(), xexp.property(),\
297  xauto_access)));
298 
299  // Body:
300 
301  fiber_bundle::sec_at0_algebra::frexp(x0.property(), xsignificand.property(), xexp.property(), xauto_access);
302 
303  // Postconditions:
304 
305  ensure(postcondition_of(\
306  frexp(x0.property(), xsignificand.property(), xexp.property(),\
307  xauto_access)));
308 
309  // Exit:
310 
311  return;
312 }
313 
315 void
317 ldexp(const field_at0& x0, int xexp, field_at0& xresult, bool xauto_access)
318 {
319  // Preconditions:
320 
321  require(precondition_of(\
322  ldexp(x0.property(), xexp, xresult.property(), xauto_access)));
323 
324  // Body:
325 
326  fiber_bundle::sec_at0_algebra::ldexp(x0.property(), xexp, xresult.property(), xauto_access);
327 
328  // Postconditions:
329 
330  ensure(postcondition_of(\
331  ldexp(x0.property(), xexp, xresult.property(), xauto_access)));
332 
333  // Exit:
334 
335  return;
336 }
337 
339 void
341 log(const field_at0& x0, field_at0& xresult, bool xauto_access)
342 {
343  // Preconditions:
344 
345  require(precondition_of(\
346  log(x0.property(), xresult.property(), xauto_access)));
347 
348  // Body:
349 
350  fiber_bundle::sec_at0_algebra::log(x0.property(), xresult.property(), xauto_access);
351 
352  // Postconditions:
353 
354  ensure(postcondition_of(\
355  log(x0.property(), xresult.property(), xauto_access)));
356 
357  // Exit:
358 
359  return;
360 }
361 
363 void
365 log10(const field_at0& x0, field_at0& xresult, bool xauto_access)
366 {
367  // Preconditions:
368 
369  require(precondition_of(\
370  log10(x0.property(), xresult.property(), xauto_access)));
371 
372  // Body:
373 
374  fiber_bundle::sec_at0_algebra::log10(x0.property(), xresult.property(), xauto_access);
375 
376  // Postconditions:
377 
378  ensure(postcondition_of(\
379  log10(x0.property(), xresult.property(), xauto_access)));
380 
381  // Exit:
382 
383  return;
384 }
385 
387 void
389 modf(const field_at0& x0, field_at0& xintpart, field_at0& xfractpart,
390  bool xauto_access)
391 {
392  // Preconditions:
393 
394  require(precondition_of(\
395  modf(x0.property(), xintpart.property(), xfractpart.property(),\
396  xauto_access)));
397 
398  // Body:
399 
400  fiber_bundle::sec_at0_algebra::modf(x0.property(), xintpart.property(), xfractpart.property(), xauto_access);
401 
402  // Postconditions:
403 
404  ensure(postcondition_of(\
405  modf(x0.property(), xintpart.property(), xfractpart.property(),\
406  xauto_access)));
407 
408  // Exit:
409 
410  return;
411 }
412 
414 void
416 pow(const field_at0& x0, const vd_value_type& xexponent, field_at0& xresult,
417  bool xauto_access)
418 {
419  // Preconditions:
420 
421  require(precondition_of(\
422  pow(x0.property(), xexponent, xresult.property(), xauto_access)));
423 
424  // Body:
425 
426  fiber_bundle::sec_at0_algebra::pow(x0.property(), xexponent, xresult.property(), xauto_access);
427 
428  // Postconditions:
429 
430  ensure(postcondition_of(\
431  pow(x0.property(), xexponent, xresult.property(), xauto_access)));
432 
433  // Exit:
434 
435  return;
436 }
437 
439 void
441 sin(const field_at0& x0, field_at0& xresult, bool xauto_access)
442 {
443  // Preconditions:
444 
445  require(precondition_of(\
446  sin(x0.property(), xresult.property(), xauto_access)));
447 
448  // Body:
449 
450  fiber_bundle::sec_at0_algebra::sin(x0.property(), xresult.property(), xauto_access);
451 
452  // Postconditions:
453 
454  ensure(postcondition_of(\
455  sin(x0.property(), xresult.property(), xauto_access)));
456 
457  // Exit:
458 
459  return;
460 }
461 
463 void
465 sinh(const field_at0& x0, field_at0& xresult, bool xauto_access)
466 {
467  // Preconditions:
468 
469  require(precondition_of(\
470  sinh(x0.property(), xresult.property(), xauto_access)));
471 
472  // Body:
473 
474  fiber_bundle::sec_at0_algebra::sinh(x0.property(), xresult.property(), xauto_access);
475 
476  // Postconditions:
477 
478  ensure(postcondition_of(\
479  sinh(x0.property(), xresult.property(), xauto_access)));
480 
481  // Exit:
482 
483  return;
484 }
485 
487 void
489 sqrt(const field_at0& x0, field_at0& xresult, bool xauto_access)
490 {
491  // Preconditions:
492 
493  require(precondition_of(\
494  sqrt(x0.property(), xresult.property(), xauto_access)));
495 
496  // Body:
497 
498  fiber_bundle::sec_at0_algebra::sqrt(x0.property(), xresult.property(), xauto_access);
499 
500  // Postconditions:
501 
502  ensure(postcondition_of(\
503  sqrt(x0.property(), xresult.property(), xauto_access)));
504 
505  // Exit:
506 
507  return;
508 }
509 
511 void
513 tan(const field_at0& x0, field_at0& xresult, bool xauto_access)
514 {
515  // Preconditions:
516 
517  require(precondition_of(\
518  tan(x0.property(), xresult.property(), xauto_access)));
519 
520  // Body:
521 
522  fiber_bundle::sec_at0_algebra::tan(x0.property(), xresult.property(), xauto_access);
523 
524  // Postconditions:
525 
526  ensure(postcondition_of(\
527  tan(x0.property(), xresult.property(), xauto_access)));
528 
529  // Exit:
530 
531  return;
532 }
533 
535 void
537 tanh(const field_at0& x0, field_at0& xresult, bool xauto_access)
538 {
539  // Preconditions:
540 
541  require(precondition_of(\
542  tanh(x0.property(), xresult.property(), xauto_access)));
543 
544  // Body:
545 
546  fiber_bundle::sec_at0_algebra::tanh(x0.property(), xresult.property(), xauto_access);
547 
548  // Postconditions:
549 
550  ensure(postcondition_of(\
551  tanh(x0.property(), xresult.property(), xauto_access)));
552 
553  // Exit:
554 
555  return;
556 }
557 
void SHEAF_DLL_SPEC frexp(const field_at0 &x0, field_at0 &xsignificand, field_at0 &xexp, bool xauto_access)
Compute frexp of x0 (frexp(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void sqrt(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute sqrt of x0 (sqrt(x0)) (pre-allocated version).
Definition: sec_at0.cc:1556
SHEAF_DLL_SPEC void asin(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute asin of x0 (asin(x0)) (pre-allocated version).
Definition: sec_at0.cc:1181
void SHEAF_DLL_SPEC sinh(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute sinh of x0 (sinh(x0)) (pre-allocated version).
void SHEAF_DLL_SPEC ceil(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute ceil of x0 (ceil(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void frexp(const sec_at0 &x0, sec_at0 &xsignificand, sec_at0 &xexp, bool xauto_access)
Compute frexp of x0 (frexp(x0)) (pre-allocated version).
Definition: sec_at0.cc:1392
SHEAF_DLL_SPEC void ldexp(const sec_at0 &x0, int xexp, sec_at0 &xresult, bool xauto_access)
Compute ldexp of x0 (ldexp(x0)) (pre-allocated version).
Definition: sec_at0.cc:1413
void SHEAF_DLL_SPEC cosh(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute cosh of x0 (cosh(x0)) (pre-allocated version).
sec_at0 & property() const
The dependent variable of this field.
Definition: field_at0.cc:329
void SHEAF_DLL_SPEC asin(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute asin of x0 (asin(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void log10(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute log10 of x0 (log10(x0)) (pre-allocated version).
Definition: sec_at0.cc:1454
SHEAF_DLL_SPEC void ceil(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute ceil of x0 (ceil(x0)) (pre-allocated version).
Definition: sec_at0.cc:1250
void SHEAF_DLL_SPEC fmod(const field_at0 &x0, const field_at0 &x1, field_at0 &xresult, bool xauto_access)
Compute xsignificand = fmod(x0, xexp) (pre-allocated version).
void SHEAF_DLL_SPEC tan(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute tan of x0 (tan(x0)) (pre-allocated version).
void SHEAF_DLL_SPEC sin(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute sin of x0 (sin(x0)) (pre-allocated version).
void SHEAF_DLL_SPEC modf(const field_at0 &x0, field_at0 &xintpart, field_at0 &xfractpart, bool xauto_access)
Compute modf of x0 (modf(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void atan(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute atan of x0 (atan(x0)) (pre-allocated version).
Definition: sec_at0.cc:1208
void SHEAF_DLL_SPEC pow(const field_at0 &x0, const vd_value_type &xexponent, field_at0 &xresult, bool xauto_access)
Compute x0 to power xexponent (pow(x0, xexponent)) (pre-allocated version).
SHEAF_DLL_SPEC void atan2(const sec_at0 &x0, const sec_at0 &x1, sec_at0 &xresult, bool xauto_access)
Compute atan2 of x0/x1 (atan2(x0, x1)) (pre-allocated version).
Definition: sec_at0.cc:1228
void SHEAF_DLL_SPEC atan2(const field_at0 &x0, const field_at0 &x1, field_at0 &xresult, bool xauto_access)
Compute atan2 of x0/x1 (atan2(x0, x1)) (pre-allocated version).
void SHEAF_DLL_SPEC log10(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute log10 of x0 (log10(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void fabs(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute fabs of x0 (fabs(x0)) (pre-allocated version).
Definition: sec_at0.cc:1331
SHEAF_DLL_SPEC void cosh(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute cosh of x0 (cosh(x0)) (pre-allocated version).
Definition: sec_at0.cc:1290
SHEAF_DLL_SPEC void modf(const sec_at0 &x0, sec_at0 &xintpart, sec_at0 &xfractpart, bool xauto_access)
Compute modf of x0 (modf(x0)) (pre-allocated version).
Definition: sec_at0.cc:1474
SHEAF_DLL_SPEC void sinh(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute sinh of x0 (sinh(x0)) (pre-allocated version).
Definition: sec_at0.cc:1536
void SHEAF_DLL_SPEC tanh(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute tanh of x0 (tanh(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void log(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute log of x0 (log(x0)) (pre-allocated version).
Definition: sec_at0.cc:1434
SHEAF_DLL_SPEC void fmod(const sec_at0 &x0, const sec_at0 &x1, sec_at0 &xresult, bool xauto_access)
Compute xsignificand = fmod(x0, xexp) (pre-allocated version).
Definition: sec_at0.cc:1371
SHEAF_DLL_SPEC void tanh(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute tanh of x0 (tanh(x0)) (pre-allocated version).
Definition: sec_at0.cc:1596
void SHEAF_DLL_SPEC sqrt(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute sqrt of x0 (sqrt(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void cos(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute cos of x0 (cos(x0)) (pre-allocated version).
Definition: sec_at0.cc:1270
SHEAF_DLL_SPEC void tan(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute tan of x0 (tan(x0)) (pre-allocated version).
Definition: sec_at0.cc:1576
SHEAF_DLL_SPEC void floor(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute floor of x0 (floor(x0)) (pre-allocated version).
Definition: sec_at0.cc:1351
A property of type sec_at0 as a function of global coordinates.
Definition: field_at0.h:50
SHEAF_DLL_SPEC void acos(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute acos of x0 (acos(x0)) (pre-allocated version).
Definition: sec_at0.cc:1154
void SHEAF_DLL_SPEC acos(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute acos of x0 (acos(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void exp(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute exp of x0 (exp(x0)) (pre-allocated version).
Definition: sec_at0.cc:1310
void SHEAF_DLL_SPEC atan(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute atan of x0 (atan(x0)) (pre-allocated version).
void SHEAF_DLL_SPEC log(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute log of x0 (log(x0)) (pre-allocated version).
void SHEAF_DLL_SPEC ldexp(const field_at0 &x0, int xexp, field_at0 &xresult, bool xauto_access)
Compute ldexp of x0 (ldexp(x0)) (pre-allocated version).
SHEAF_DLL_SPEC void pow(const sec_at0 &x0, const vd_value_type &xexponent, sec_at0 &xresult, bool xauto_access)
Compute x0 to power xexponent (pow(x0, xexponent)) (pre-allocated version).
Definition: sec_at0.cc:1495
SHEAF_DLL_SPEC void sin(const sec_at0 &x0, sec_at0 &xresult, bool xauto_access)
Compute sin of x0 (sin(x0)) (pre-allocated version).
Definition: sec_at0.cc:1516
void SHEAF_DLL_SPEC floor(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute floor of x0 (floor(x0)) (pre-allocated version).
void SHEAF_DLL_SPEC cos(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute cos of x0 (cos(x0)) (pre-allocated version).
double vd_value_type
The type of component in the fiber; the scalar type in the fiber vector space.
Definition: fiber_bundle.h:63
void SHEAF_DLL_SPEC fabs(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute fabs of x0 (fabs(x0)) (pre-allocated version).
void SHEAF_DLL_SPEC exp(const field_at0 &x0, field_at0 &xresult, bool xauto_access)
Compute exp of x0 (exp(x0)) (pre-allocated version).