SheafSystem  0.0.0.0
field_tp_funcs.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 
18 #ifndef FIELD_TP_FUNCS_H
19 #define FIELD_TP_FUNCS_H
20 
21 #ifndef SHEAF_DLL_SPEC_H
22 #include "SheafSystem/sheaf_dll_spec.h"
23 #endif
24 
25 namespace fields
26 {
27 
28 //==============================================================================
30 //==============================================================================
32 
33 class SHEAF_DLL_SPEC field_atp;
34 class SHEAF_DLL_SPEC field_stp;
35 
40 namespace field_tp_algebra
41 {
42 
47 void SHEAF_DLL_SPEC alt(const field_tp& x0, field_atp& xresult, bool xauto_access);
48 
53 void SHEAF_DLL_SPEC sym(const field_tp& x0, field_stp& xresult, bool xauto_access);
54 
62 void SHEAF_DLL_SPEC contract(const field_tp& x0, int xp, int xq, field_tp& xresult,
63  bool xauto_access);
64 
68 void SHEAF_DLL_SPEC tensor(const field_tp& x0, const field_tp& x1, field_tp& xresult,
69  bool xauto_access);
70 
72 
73 } // namespace field_tp_algebra
74 
75 } // namespace fields
76 
77 #endif // ifndef FIELD_TP_FUNCS_H
Namespace for fields component of sheaf system.
A property of type sec_stp as a function of global coordinates.
Definition: field_stp.h:50
void SHEAF_DLL_SPEC tensor(const field_tp &x0, const field_tp &x1, field_tp &xresult, bool xauto_access)
Tensor product of x0 and x1 (pre-allocated version).
A property of type sec_atp as a function of global coordinates.
Definition: field_atp.h:50
void SHEAF_DLL_SPEC sym(const field_tp &x0, field_stp &xresult, bool xauto_access)
The symmetric part of tensor x0 (pre-allocated version).
void SHEAF_DLL_SPEC contract(const field_tp &x0, int xp, int xq, field_tp &xresult, bool xauto_access)
Contraction on contravariant index xp and covariant index xq (pre-allocated version).
A property of type sec_tp as a function of global coordinates.
Definition: field_tp.h:50
void SHEAF_DLL_SPEC alt(const field_tp &x0, field_atp &xresult, bool xauto_access)
The alternating (antisymmetric) part of tensor x0 (pre-allocated version).