Documentation of CSL
csl.h
Go to the documentation of this file.
1 // This file is part of MARTY.
2 //
3 // MARTY is free software: you can redistribute it and/or modify
4 // it under the terms of the GNU General Public License as published by
5 // the Free Software Foundation, either version 3 of the License, or
6 // (at your option) any later version.
7 //
8 // MARTY is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 // GNU General Public License for more details.
12 //
13 // You should have received a copy of the GNU General Public License
14 // along with MARTY. If not, see <https://www.gnu.org/licenses/>.
15 
21 #ifndef CSL_H_INCLUDED
22 #define CSL_H_INCLUDED
23 
24 #include "abstract.h"
25 #include "literal.h"
26 #include "abreviation.h"
27 #include "numerical.h"
28 #include "numericalEval.h"
29 #include "evaluation.h"
30 #include "mathFunctions.h"
31 #include "operations.h"
32 #include "vector.h"
33 #include "diagonalization.h"
34 #include "operator.h"
35 #include "parent.h"
36 #include "field.h"
37 #include "indicial.h"
38 #include "indicialExpander.h"
39 #include "scalar.h"
40 #include "tensorField.h"
41 #include "objectSymmetry.h"
42 #include "functional.h"
43 #include "cslcomplex.h"
44 #include "options.h"
45 #include "sort.h"
46 #include "lock.h"
47 
48 #include "replace.h"
49 #include "utils.h"
50 #include "conditional.h"
51 #include "algo.h"
52 #include "interface.h"
53 #include "interface_indicial.h"
54 #include "hardFactor.h"
55 #include "partialExpand.h"
56 #include "patternMatch.h"
57 #include "hardComparison.h"
58 #include "dichotomy.h"
59 #include "cast.h"
60 #include "precision_float.h"
61 #include "space.h"
62 #include "simplification.h"
63 #include "commutation.h"
64 #include "equation.h"
65 #include "property.h"
66 #include "comparison.h"
67 #include "pseudoIntegral.h"
68 
69 #include "counter.h"
70 #include "symmetricCounter.h"
71 #include "scopedProperty.h"
72 #include "progressBar.h"
73 #include "timer.h"
74 #include "timeMonitor.h"
75 #include "linear_map.h"
76 #include "initSanitizer.h"
77 #include "multipermutation.h"
78 
79 #include "librarygenerator.h"
80 #include "libraryfunction.h"
81 #include "librarytensor.h"
82 #include "librarydependency.h"
83 #include "libraryexpander.h"
84 #include "libraryevaluator.h"
85 
86 #endif
Contains the static class Lock, allowing to compress expressions before heavy calculation, and decompress them later.
Automatic simplification framework. Sources in simplification.cpp and alternateForms.cpp.
Base classes for parents and elements.
Objects handling multi-argument functions, primordial operations (+,*,/,etc)
File containing custom sorting algorithms for expressions.
Generic template to handle operator expression, i.e. expression that applies on expressions on the ri...
Contains evaluation flags for csl.
Objects handling vectors, matrices and higher-dimensional tensors.
Contains algorithms that look over (and possibly modify on the go) expressions for you...
Base classes for all exprs in the program.
Objects handling indexed expressions in order to perform indicial tensor calculations.
Objects handling mathematical functions.