Atgeirr Flø Rasmussen
f85e74bcff
Added operator* that allows A*x for sparse A and x an AD object.
2013-05-01 09:05:53 +02:00
Atgeirr Flø Rasmussen
92f56f6d92
Removed variable index from ForwardBlock class.
...
Feature was in the way of having (for example) face variables depending on cell variables.
2013-05-01 09:03:56 +02:00
Bård Skaflestad
633de102c2
Fix misprint in operator*() chain rule.
2013-04-30 22:51:29 +02:00
Atgeirr Flø Rasmussen
30c8acfaf4
Updated ignore patterns.
2013-04-30 20:29:57 +02:00
Atgeirr Flø Rasmussen
d046b9e97a
Completed simple block AD class.
2013-04-30 20:28:32 +02:00
Atgeirr Flø Rasmussen
d518b5c787
Initial work in progress on block AD class.
2013-04-30 16:15:40 +02:00
Atgeirr Flø Rasmussen
069e878b0e
Completed basic version of AD vector class and test.
2013-04-30 16:15:00 +02:00
Bård Skaflestad
6ed2b129cb
Implement constant() and variable() in terms of function()
...
Specifically,
- A constant is a function with zero derivative
- A variable is a function with unit derivative with respect to
itself.
2013-04-30 13:41:13 +02:00
Bård Skaflestad
70996fb195
Remove two instances of EOL whitespace.
2013-04-30 13:35:34 +02:00
Bård Skaflestad
86eb29b4c3
variable(): Avoid memory overhead of identity constructor.
2013-04-30 12:48:02 +02:00
Bård Skaflestad
c276592ca5
Don't #include <iostream>. It's not needed.
2013-04-30 12:37:08 +02:00
Bård Skaflestad
06d2c078fa
Use documented include statements for Eigen
2013-04-30 12:36:43 +02:00
Bård Skaflestad
134b9b1a7f
Readjust whitespace to original conventions.
2013-04-30 11:52:03 +02:00
Atgeirr Flø Rasmussen
e2d8b77ec5
Initial vector AD type experimentation.
2013-04-30 11:48:04 +02:00
Atgeirr Flø Rasmussen
0bf693e8c0
Merge remote-tracking branch 'bska/master'
2013-04-30 11:07:13 +02:00
Atgeirr Flø Rasmussen
42cdfa27a0
Use named constructor pattern.
...
Made AutoDiff::Forward constructor private.
Added static methods constant(), variable(x) and function(x, dx).
2013-04-30 11:05:59 +02:00
Bård Skaflestad
6319c428a3
Don't return values from update operators.
...
Statements like
a = b += c
make no sense
2013-04-30 10:47:00 +02:00
Bård Skaflestad
0ff3b721ee
Rename members to better reflect purpose.
...
Specifically,
- x_ -> val_
- dx_ -> der_
2013-04-30 09:25:37 +02:00
Bård Skaflestad
e17447d6cd
Add further test cases
...
- Polynomials (including mixed mode arithmetic)
- Cosines (including mixed mode arithmethic)
- Square roots (including mixed mode arithmetic)
2013-04-30 00:08:02 +02:00
Bård Skaflestad
011ab5ee93
Operator *=(): Use correct derivative chain rule
...
Updating the derivative using '*=' is just plain wrong.
2013-04-29 23:53:31 +02:00
Bård Skaflestad
72d6d32095
Don't use updated values for computing derivatives
...
We must not overwrite the current evaluation point until all the
derivative values have been calculated. Otherwise, the derivatives
will differ from that of the actual values.
2013-04-29 23:28:49 +02:00
Bård Skaflestad
72e2b1f5ca
Ignore executables.
2013-04-29 15:01:03 +02:00
Bård Skaflestad
a4cdbdc049
Add test cases for multiplication and division
...
Helped uncover syntax error (misprint) fixed in commit 8105166
.
2013-04-29 14:52:38 +02:00
Bård Skaflestad
8105166c26
Fix misprint in Forward/Scalar case.
2013-04-29 14:51:28 +02:00
Bård Skaflestad
790f6a06b2
Add simple test cases
...
- Initialisation
- Addition (including mixed mode)
- Subtraction (including mixed mode)
2013-04-29 14:12:57 +02:00
Bård Skaflestad
b05f65ae70
Add simple library for automatic differentiation
...
No build system or automatic test cases at this point.
2013-04-29 13:39:57 +02:00
Bård Skaflestad
33f2623257
Ignore Emacs autosave files.
2013-04-29 13:39:26 +02:00
Bård Skaflestad
a3ae90635e
Initial commit
2013-04-29 01:31:45 -07:00