5f964cfa4084735a0d6a2db0cc845107f031fee2
[mappings.git] / README
1
2 This mapping class is a usable example of a "sophisticated" symbolic
3 mapping class in C++. Bascially it allows you to do things like :
4
5   // X will be the "identity mapping"
6   Mapping X = Mapping::X;
7   // A undefined mapping
8   Mapping f;
9   // Now contains some complex stuff
10   f = sin(X * X - (X * 3.0) + 0.5);
11   // Display it
12   cout << f*f << endl;
13   // fp will be the first derivative
14   Mapping fp = f.derivative();
15   // fs the second derivative
16   Mapping fs = fp.derivative();
17   // Compute the second derivative at 5
18   cout << fs(5.0) << endl;
19
20 The best is to check the mappings.h to look at what functions and
21 operators are available. It will be pretty easy to add your own
22 operators.
23
24 The memory management is done in such a way that spurious copies are
25 avoided and intermediate results will be deallocated correctly. So far
26 I never traced a memory leak, but feel free to report it if you find
27 one.
28
29 Francois Fleuret
30 May 2001
31 Modified 2005, 2007