Author: luc Date: Tue Apr 15 06:27:17 2008 New Revision: 648245 URL: http://svn.apache.org/viewvc?rev=648245&view=rev Log: added skeleton documentation (it's just a start)
Added: commons/sandbox/nabla/trunk/src/site/ commons/sandbox/nabla/trunk/src/site/site.xml (with props) commons/sandbox/nabla/trunk/src/site/xdoc/ commons/sandbox/nabla/trunk/src/site/xdoc/changes.xml (with props) commons/sandbox/nabla/trunk/src/site/xdoc/index.xml (with props) Added: commons/sandbox/nabla/trunk/src/site/site.xml URL: http://svn.apache.org/viewvc/commons/sandbox/nabla/trunk/src/site/site.xml?rev=648245&view=auto ============================================================================== --- commons/sandbox/nabla/trunk/src/site/site.xml (added) +++ commons/sandbox/nabla/trunk/src/site/site.xml Tue Apr 15 06:27:17 2008 @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project name="Nabla"> + <bannerRight> + <name>Commons Nabla</name> + <href>/index.html</href> + </bannerRight> + <body> + <menu name="Nabla"> + </menu> + </body> +</project> Propchange: commons/sandbox/nabla/trunk/src/site/site.xml ------------------------------------------------------------------------------ svn:eol-style = native Added: commons/sandbox/nabla/trunk/src/site/xdoc/changes.xml URL: http://svn.apache.org/viewvc/commons/sandbox/nabla/trunk/src/site/xdoc/changes.xml?rev=648245&view=auto ============================================================================== --- commons/sandbox/nabla/trunk/src/site/xdoc/changes.xml (added) +++ commons/sandbox/nabla/trunk/src/site/xdoc/changes.xml Tue Apr 15 06:27:17 2008 @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<document> + <properties> + <title>Nabla Release Notes</title> + </properties> + <body> + <release version="1.0" date="TBD" description="TBD"> + <action dev="luc" type="add"> + Created sandbox component + </action> + </release> + </body> +</document> Propchange: commons/sandbox/nabla/trunk/src/site/xdoc/changes.xml ------------------------------------------------------------------------------ svn:eol-style = native Added: commons/sandbox/nabla/trunk/src/site/xdoc/index.xml URL: http://svn.apache.org/viewvc/commons/sandbox/nabla/trunk/src/site/xdoc/index.xml?rev=648245&view=auto ============================================================================== --- commons/sandbox/nabla/trunk/src/site/xdoc/index.xml (added) +++ commons/sandbox/nabla/trunk/src/site/xdoc/index.xml Tue Apr 15 06:27:17 2008 @@ -0,0 +1,61 @@ +<?xml version="1.0"?> + +<document> + + <properties> + <title>Nabla: an automatic differentiator</title> + </properties> + + <body> + + <section name="Introduction" href="introduction"> + <p>Nabla is an automatic differentiator for mathematical + functions. Just like the mathematical Nabla (&nabla;) operator + transform a function into its differential, the Nabla library + transforms an existing java object implementing a + function <code>double f(double) { ... }</code> into another java + object that in addition to computing the value of <code>f</code> + like the original one also computes its differential. The created + object implements differentiation using the classical exact + rules. There are no approximations and no step sizes.</p> + + <p>This approach has the following benefits:</p> + <ul> + <li>differentiation is exact</li> + <li>there are no problem-dependent step size to handle</li> + <li>differentiation can be computed even at domains + boundaries</li> + <li>there is no special handling of source (no symbolic package + with its own language, no source code generation, no integration + with the rest of application)</li> + <li>one writes and maintains only the basic equation and get the + differential for free</li> + <li>it is effective even when source code is not available (but + there may be licensing issues in this case since what Nabla does + automatically is really ... derived work)</li> + </ul> + + <p>The derivative instance is tightly bound to the base instance. So + if after Nabla has performed the transformation the base instance + is mutated outside of the scope of Nabla, the already produced + derivative instance will used this mutated state for its later + computation automatically.</p> + + </section> + <section name="How ?" href="how"> + + <p>Basically, Nabla works by analyzing the bytecode of the + original object, transforming the arithmetic operations, + generating a new class on the fly with the transformed bytecode, + and instantiating it to generate the derivative object. This should + work for Java or for any program using the Java platform as its + execution environment.</p> + + <p>The main drawback is that functions calling native code cannot + be handled. For these functions, a poor man implementation is + provided that use finite differences (with 2, 4, 6 or 8 points + schemes).</p> + + </section> + </body> +</document> Propchange: commons/sandbox/nabla/trunk/src/site/xdoc/index.xml ------------------------------------------------------------------------------ svn:eol-style = native