SheafSystem  0.0.0.0
field_st2_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 ST2 FACET
22 //==============================================================================
23 
24 #ifndef FIELD_AT0_H
25 #include "SheafSystem/field_at0.h"
26 #endif
27 
28 
30 void
32 trace(const field_st2& x0, field_at0& xresult, bool xauto_access)
33 {
34  // Preconditions:
35 
36  require(precondition_of(\
37  trace(x0.property(), xresult.property(), xauto_access)));
38 
39  // Body:
40 
41  fiber_bundle::sec_st2_algebra::trace(x0.property(), xresult.property(), xauto_access);
42 
43  // Postconditions:
44 
45  ensure(postcondition_of(\
46  trace(x0.property(), xresult.property(), xauto_access)));
47 
48  // Exit:
49 
50  return;
51 }
52 
54 void
56 determinant(const field_st2& x0, field_at0& xresult, bool xauto_access)
57 {
58  // Preconditions:
59 
60  require(precondition_of(\
61  determinant(x0.property(), xresult.property(), xauto_access)));
62 
63  // Body:
64 
65  fiber_bundle::sec_st2_algebra::determinant(x0.property(), xresult.property(), xauto_access);
66 
67  // Postconditions:
68 
69  ensure(postcondition_of(\
70  determinant(x0.property(), xresult.property(), xauto_access)));
71 
72  // Exit:
73 
74  return;
75 }
76 
77 
78 
79 
80 
void SHEAF_DLL_SPEC trace(const field_st2 &x0, field_at0 &xresult, bool xauto_access)
The trace of x0.
SHEAF_DLL_SPEC void trace(const sec_st2 &x0, sec_at0 &xresult, bool xauto_access)
The trace of x0.
Definition: sec_st2.cc:647
SHEAF_DLL_SPEC void determinant(const sec_st2 &x0, sec_at0 &xresult, bool xauto_access)
The determinant of x0.
Definition: sec_st2.cc:667
A property of type sec_st2 as a function of global coordinates.
Definition: field_st2.h:50
sec_at0 & property() const
The dependent variable of this field.
Definition: field_at0.cc:329
SHEAF_DLL_SPEC void determinant(const st2 &x0, vd_value_type &xresult, bool xauto_access)
The determinant of a symmetric tensor (pre-allocated version for persistent types).
Definition: st2.cc:1228
SHEAF_DLL_SPEC void trace(const st2 &x0, vd_value_type &xresult, bool xauto_access)
The trace of a symmetric tensor (pre-allocated version for persistent types).
Definition: st2.cc:1116
A property of type sec_at0 as a function of global coordinates.
Definition: field_at0.h:50
sec_st2 & property() const
The dependent variable of this field.
Definition: field_st2.cc:329
void SHEAF_DLL_SPEC determinant(const field_st2 &x0, field_at0 &xresult, bool xauto_access)
The determinant of x0.