|
|
Line 1: |
Line 1: |
− | ''Latest version 0.5.0, released September 25, 2011.'' Known to work with:<BR> | + | This project has migrated over to '''github'''. |
− | {{VersionInfo}}{{Version1.6-ext}}{{Version1.7.0}}{{Version1.7.1}}{{Version1.7.x}}{{Version2.0}}{{Version2.0.0}}{{Version2.0.1}}{{Version2.0.x}}
| + | |
− | <BR>
| + | '''''[http://github.com/Marupio/equationReader/wiki Click here for the new website.]''''' |
− | '''The repo is currently down. See [[User:Marupio|my user page]] for details and access to the code.''' | + | |
| + | |
| + | http://github.com/Marupio/equationReader/wiki |
| + | |
| <br> | | <br> |
| <small>Subpage contents (alphabetical)<BR> | | <small>Subpage contents (alphabetical)<BR> |
Line 12: |
Line 15: |
| > [[Contrib_equationReader/Using_equationReader|Using equationReader]]<BR></small> | | > [[Contrib_equationReader/Using_equationReader|Using equationReader]]<BR></small> |
| <BR> | | <BR> |
− |
| |
− | == What is it? ==
| |
− | '''equationReader''' is an extension to [[OpenFOAM]] that allows you to work with user-entered equations. For example:
| |
− |
| |
− | U.x "sin(pi_ * t / 4)";
| |
− | U.y "rho * nut / L";
| |
− | U.z 0;
| |
− | nu nu [0 2 -1 0 0 0 0] "1.2 + 3 * alpha^sin(pi_/6)";
| |
− | aScalar "nu / max(5, alpha)";
| |
− | alpha 1.3;
| |
− |
| |
− | == Features ==
| |
− | * '''Works with most fields''' - Now works with ''single elements'', ''fields'', ''DimensionedFields'' and ''GeometricFields'';
| |
− | * '''Works with most Types''' - Now works with ''scalars'', ''vectors'', and all kinds of ''tensors'';
| |
− | * '''Flexible data sources''' - In addition to these types, equations can also lookup values from ''dictionaries'', and you can create an ''activeVariable'' that derives its value on-the-fly.
| |
− | * '''Order of operations''' - it is fully compliant with the conventional order of operations to an arbitrary parenthesis depth;
| |
− | * '''Equation dependency tracking''' - equations can depend on one another to an arbitrary hierarchy depth;
| |
− | * '''Circular-reference detection''' - it will halt computations when a circular reference is detected;
| |
− | * '''On-the-fly equation mapping''' - it will automatically perform substitution on other equations when they are needed, even if they aren't specifically called for in the solver; and
| |
− | * '''Dimension-checking''' - fully utilizes [[OpenFOAM]]'s built-in dimension-checking, or you can force the outcome to a specific dimension-set to quickly disable it (if you are lazy).
| |
− |
| |
− | '''Limitations:''' Although '''equationReader''' works with all Types, at its core, it is just a ''scalar'' calculator with ''dimensions''. Therefore, you can't use vector operators, let alone tensor operators. Each equation must be expressed in scalar components.
| |
− |
| |
− | == Why would you need this? ==
| |
− | Let the user define their own equations - this makes your application '''more user-friendly''', and '''more flexible'''. But don't reinvent the wheel - if you are only working with ''boundary conditions'' or ''initial conditions'', Bernhard's [[Contrib/swak4Foam|swak4Foam]] would probably be more suitable.
| |
− |
| |
− | == Learn more ==
| |
− |
| |
− | * ''Wait... before I install it, how fast is it, really?'' - It's getting faster. Check out the [[Contrib_equationReader/Efficiency|efficiency sub-page]].
| |
− | * ''I'm sold, let me install it!'' - Check out the [[Contrib_equationReader/Installation|installation sub-page]].
| |
− | * ''I'm a user, how do I work with my equations?'' - Check out the [[Contrib_equationReader/Using_equationReader|user's guide sub-page]].
| |
− | * ''I'm a developer, how do I use '''equationReader'''?'' - Check out the [[Contrib_equationReader/Programming|programmer's guide sub-page]].
| |
− | * ''I've had enough, how do I uninstall it?'' - Check out the [[Contrib_equationReader/Uninstallation|Uninstallation sub-page]].
| |
− |
| |
− | == Update info ==
| |
− | * ''2010-07-21'': Initial release
| |
− | * ''2010-08-05'': Bug-fix - differentiated versions for OpenFOAM-1.5.x/1.5-dev and OpenFOAM-1.6.x+
| |
− | * ''2010-08-12'': Major upgrade
| |
− | ** Introducing <tt>IOEquationReader</tt> - EquationReader is now an <tt>IOobject<tt>. This enables automatic output
| |
− | ** Added support for <tt>scalarList</tt> data sources - including <tt>scalarField<tt>, <tt>volScalarField</tt>, etc.
| |
− | ** Removed the need for pointers for data sources
| |
− | ** Cleaned up available functions
| |
− | * ''2010-10-16'': Bug fixes and added full support for fields
| |
− | * ''2011-04-06'': Major upgrade
| |
− | ** Efficiency improvement - pointer functions have been implemented to increase computation speed by an order of magnitude (at least).
| |
− | ** Improved dimension-checking on all functions.
| |
− | ** Added a fieldEvaluate function for active equations whose output is to a scalar field.
| |
− | ** Bug fix to get it working with 1.6-ext and higher.
| |
− | *''2011-09-13:'' Major upgrade
| |
− | ** '''''Now a stand-alone library'''''.
| |
− | ** Now works with '''''vectors and tensors''''':
| |
− | *** scalar;
| |
− | *** vector;
| |
− | *** tensor;
| |
− | *** diagTensor;
| |
− | *** symmTensor; and
| |
− | *** sphericalTensor.
| |
− | ** '''''Now works with GeometricFields'''''
| |
− | ** Dimension checking is now performed separately, improving efficiency of field and GeometricField calculations.
| |
− | * Interface changes:
| |
− | ** Add data functions reorganized / changed.
| |
− | ** Evaluate functions reorganized / changed.
| |
− | ** Update functions removed.
| |
− | *''2011-09-25: '''Version 0.5.0'''''
| |
− | ** Improved treatment of fields - '''''now approximately 10x faster'''''.
| |
− | ** Introduced version numbers to keep track of changes.
| |
− |
| |
− | --[[User:Marupio|Marupio]] 22:15, 14 September 2011 (CEST)
| |