/[ascend]/trunk/ascend/integrator/integrator.h
ViewVC logotype

Log of /trunk/ascend/integrator/integrator.h

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 2018 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 29 03:38:10 2009 UTC (13 years, 7 months ago) by jpye
File length: 20616 byte(s)
Diff to previous 2011
Fixed compile for new header file locations <ascend/compiler/xxx.h> etc.

Revision 2011 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 28 08:58:48 2009 UTC (13 years, 7 months ago) by jpye
File length: 20532 byte(s)
Copied from: trunk/base/generic/integrator/integrator.h revision 2010
Diff to previous 1509
Moving libascend components from #/base/generic into #/ascend

Revision 1509 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jun 27 13:08:47 2007 UTC (15 years, 5 months ago) by jpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20532 byte(s)
Diff to previous 1459
Fixed external loading of integrators, at least on my system. Needs testing
with/without fortran, sundials, etc.
Changed little thing kn d1mach.c to make default behaviour correct on Linux.

Revision 1459 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu May 31 13:28:33 2007 UTC (15 years, 6 months ago) by jpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20522 byte(s)
Diff to previous 1452
DOPRI5 is running... but is it correct? Still needs lots of testing

Revision 1452 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 28 14:01:51 2007 UTC (15 years, 6 months ago) by jpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20831 byte(s)
Diff to previous 1337
Integrators can now be dynamically loaded. DOPRI5 has progressed but still doesn't work.

Revision 1337 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Mar 10 12:33:15 2007 UTC (15 years, 9 months ago) by jpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20702 byte(s)
Diff to previous 1335
Added support for detection of boundary crossing in the IDA integrator.
Cleared up some code comments and formatting.

Revision 1335 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Mar 9 02:54:03 2007 UTC (15 years, 9 months ago) by jpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20675 byte(s)
Diff to previous 1316
Fixed problem with logrel instances in PyGTK GUI.
Removed faulty INSTALL_DOC directory -- docs just go to INSTALL_ASCDATA for now.

Revision 1316 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 5 07:22:21 2007 UTC (15 years, 9 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20570 byte(s)
Diff to previous 1309
Another one of these big refactorings. Split out 'system' directory from 'solver' directory. This will need more work
but it's a start at getting the non-solver-specific code out separately.

Revision 1309 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Mar 4 07:40:17 2007 UTC (15 years, 9 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20790 byte(s)
Diff to previous 1306
Added index checking for semi-explicit DAE systems.
Migrated error messages for mtx and linsolqr to the error_reporter mechanism.

Revision 1306 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Mar 3 11:50:47 2007 UTC (15 years, 9 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20697 byte(s)
Diff to previous 1240
Added and performed basic tests of integrator_ida_write_matrix. Generalised the write_matrix
routine so that *any* requested output can be retrieved from the integrator (for the case
of IDA this is y and y', but it could equally be more complicated stuff.)

Revision 1240 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 26 11:12:20 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20466 byte(s)
Diff to previous 1226
@!@#$#$%! working at last

Revision 1226 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jan 25 00:06:42 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20470 byte(s)
Diff to previous 1221
Split slv_param.[ch] from slv.c and slv_common.h.
Removed some lint

Revision 1221 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jan 24 13:33:06 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20440 byte(s)
Diff to previous 1196
Implemented the DAE partitioning routine but am nowing tracking down a fiendish memory crash.

Revision 1196 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 22 05:41:59 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20670 byte(s)
Diff to previous 1191
slv_get_status changed to return non-zero on failure.
Tests are passing with the new IDA 'analyse' routine but still plenty of gaps.

Revision 1191 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 21 12:00:57 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20022 byte(s)
Diff to previous 1183
Added obs_id lists to analyse.c. Hopefully we can remove later when we work out a better architecture for that.

Revision 1183 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Jan 20 09:15:51 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 20007 byte(s)
Diff to previous 1181
Huge reorganisation -- all mtx and lin files moved to base/generic/linear.
Required many #include statements to be changed.

Revision 1181 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Jan 20 03:50:21 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/integrator/integrator.h
File length: 19952 byte(s)
Copied from: trunk/base/generic/solver/integrator.h revision 1180
Diff to previous 1129
Shifted everything integration-related out into a separate directory.

Revision 1129 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Jan 13 11:40:59 2007 UTC (15 years, 10 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19888 byte(s)
Diff to previous 1087
Added integrator_write_matrix routine to allow integrator matrices to be written out.
Modified integrator in PyGTK to output this matrix to a file in /tmp in the case where Integrator::solve fails.
Fixed a bug in densematrix_write_mmio.
The current implementation of integrator_write_matrix might not be quite right yet... needs some more thought.

Revision 1087 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 9 15:23:48 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19282 byte(s)
Diff to previous 1069
Fixed independent variable detection (again).

Revision 1069 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 8 11:25:33 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19295 byte(s)
Diff to previous 1068
Added scons switch IDA_NEW_ANALYSE for the new code that implements a better DAE analysis procedure.
Minor tidying in list.[ch]
Removed some DIEDIEDIE stuff from analyze.c.
Added 'odeid' to the 'varip' structure in same.
Collapsed a bunch of repetitive stuff with those fancy #defines I like so much.
Flipped some return codes from functions integrator.c to return 0 on success.
Added #include for sensitivity.h in lsode.c.
Catch exceptions from sim.build() in do_integrate() in PyGTK GUI.
Attempted to fix tcl/tk for errors from integrator_analyse as well (not tested).

Revision 1068 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 8 04:45:47 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19150 byte(s)
Diff to previous 1066
Fixed some ASC_PANIC calls in atomvalue.c
Removed some <!-- --> comments from list.h
Added flagging of 'deriv' vars in analyse.c (no new lists are added though)
Created separate doxygen module 'Analyse' (only affect C comments)
Fixed return codes in slv9a.c, as well as some FPRINTFs.
Cleaned up some documentation in slv_client.h.
Removed var_diff, var_set_diff flag stuff.
Added docstring for Integrator_getEngines in python wrapper.


Revision 1066 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 7 10:02:41 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19099 byte(s)
Diff to previous 1063
Adding doxygen 'addtogroup' for Solver, Compiler, Integrator.

Revision 1063 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jan 7 07:54:06 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19043 byte(s)
Diff to previous 1050
Changed ASC_DLLSPEC(TYPE) to ASC_DLLSPEC TYPE, because it was causing havoc with doxygen and ctags.

Revision 1050 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Jan 6 04:04:47 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19076 byte(s)
Diff to previous 1049
Adding integration test in TestSteam.testdsgsat.
Naming couple of anonymous structs.

Revision 1049 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 5 13:45:13 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19053 byte(s)
Diff to previous 1010
Changed integrator_solve to return 0 on success
Changed integrator_checkstatus to return 0 on success
Some flow-through changes as a result of these.
Fixed problem with reporting of errors in do_method (gtkbrowser.py)
Expanded error msg in integrator.cpp
Fixed catching of Integrator C++ exceptions in integratorreporter.py.
Removed M.checkStructuralSingularity() in TestSteam.testdsgsat -- causes crash (why?)

Revision 1010 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 2 12:53:58 2007 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19022 byte(s)
Diff to previous 977
Fixed ASC_ASSERT_RANGE (hopefully)
Fixing C99isms in integrator.[ch]

Revision 977 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 20 00:39:52 2006 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 19023 byte(s)
Diff to previous 969
Abstracted the internal integrator calls into a struct IntegratorInternals.
Fixed up compile-time list of integrators.
If IDA is not available, then 'INTEG_IDA' will not be defined.
Added ASC_ASSERT_RANGE for assertions x in [low,high).
Changed calling convention for integrator_get_engines().

Revision 969 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 19 00:57:26 2006 UTC (15 years, 11 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 16944 byte(s)
Diff to previous 945
Added placeholder for a C version of Art's DAE solver (named 'AWW')
Added support for SPBCG and SPTFQMR Krylov solvers in IDA.
Attempted separation of ascpy.i and solver.i (ongoing)
Fixed an error message in typedef.c
Fixed typo in ivpStepN.tcl
Added correctly hidden Simulation() ctor.

Revision 945 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 25 12:41:03 2006 UTC (16 years ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 16495 byte(s)
Diff to previous 944
Fixed a bug in slv_param_char.
More work on IDA ongoing.

Revision 944 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 25 10:46:13 2006 UTC (16 years ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 16497 byte(s)
Diff to previous 942
Implemented ATOLVECT, ATOL, RTOL parameters for the IDA integrator.

Revision 942 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 25 05:26:47 2006 UTC (16 years ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 16336 byte(s)
Diff to previous 941
Incorporated 'SolverParameters' functionality into 'Integrator', both at C level and C++/Python.
This shouldn't break Tcl/Tk as default parameters will be set and used invisibly.

Revision 941 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 24 10:46:32 2006 UTC (16 years ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 15311 byte(s)
Diff to previous 940
Changed integrator_set_engine to return 0 on success.
Fixed Integrator::setEngine to throw range_error / IndexError on invalid selection.
Test suite contains testIDA that works now (more tests yet to come)

Revision 940 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 24 08:07:33 2006 UTC (16 years ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 15284 byte(s)
Diff to previous 912
Fixed 'testLSODE' in test.py, added 'IntegratorReporterNull' that makes no output (for testing purposes)

Revision 912 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 27 07:18:21 2006 UTC (16 years, 1 month ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 15208 byte(s)
Diff to previous 903
Removed BBOXWHINE (replaced with some one-time-only warnings for the moment)
Added ExtMethodDestroyFn to allow 'user_data' associated with external methods to be destroyed.
Implemented the destroy fn through to 'extpy' module.
Added 'name' as an extra parameter in the user_data for extpy, to help with debug msgs.
Moved 'solvernotes' to a file of its own (was part of listnotes.py)
Added 'repaint' to GTK 'tools' menu (for debugging)
Added 'python.h' to top of library, type files (pygtk) to stop silly warnings.
Working on some diagnosing of problems as noted in Simulation::checkInstance.
Removed some old comments from namio.h and others.
Renamed 'blsys' to 'sys' in integrator.c.
Some work on fixing up the J*v function for IDA (not yet complete).
Added new 'destroyfn' parameter (as NULL) to all calls to 'CreateUserFunctionMethod'.

Revision 903 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 25 13:07:12 2006 UTC (16 years, 1 month ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 15156 byte(s)
Diff to previous 854
Some success with IDA: fixed up the indexing dilemma and was able to
integrate 'johnpye/thermalequilibrium.a4c' for a short time span (but
through to 3000 s as with LSODE). I would blame lack of jacobian routine
in the first instance.

Added 'more properties' button in Properties dialog for a variable, to allow
values of ode_id, ode_type etc to be queried (but not changed).


Revision 854 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 20 13:36:40 2006 UTC (16 years, 2 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 14418 byte(s)
Diff to previous 709
First tentative version in 'integration reporting':
Values of observed variables from the simulation are added to an Observer table after simulation completes.
This is not very efficiently coded at this stage but is a start.
Also some minor changes to text and comments in some base/generic files.

Revision 709 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jun 28 16:28:57 2006 UTC (16 years, 5 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 14243 byte(s)
Diff to previous 704
Monster commit!
Lots of recommenting and reorganising of external relations-related stuff.
Replaced a lot of ascmalloc and asccalloc calls with the new ASC_NEW* macros.
Fixed (?) the problem Art is having with icons in PyGTK.
Turned on -Wall in SConstruct and fixed up a stack of warnings.
Removed the redundant exit(2) from after Asc_Panic calls and added __attribute__((noreturn)).
Set doxygen to create callgraphs to level 2, updated doxyfile to version 1.4.7.
Fixed up building of extfntest.c.

Revision 704 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 26 23:00:56 2006 UTC (16 years, 5 months ago) by ben.allan
Original Path: trunk/base/generic/solver/integrator.h
File length: 14205 byte(s)
Diff to previous 669
- fixed a minor bug in the use of dimensions in samplelist
and a #define misuse in ospath.
- defined eolstyle unix on the trunk, as I have encountered
at least 4 too many mixed-eol-style-in-one-file files in trying to 
rebuild today. obviously committer discipline is insufficient.


Revision 669 - (view) (download) (as text) (annotate) - [select for diffs]
Added Wed Jun 21 07:00:45 2006 UTC (16 years, 5 months ago) by johnpye
Original Path: trunk/base/generic/solver/integrator.h
File length: 14429 byte(s)
Merged changes from DAE branch (revisions 702 to 819) back into trunk.
This adds the Integration API to the ASCEND solver (in base/generic).
Also provides pre-alpha support for 'IDA' from the SUNDIALS suite, a DAE solver.
Many other minor code clean-ups, including adoption of new 'ASC_NEW' and friends (to replace 'ascmalloc')
Added some very sketchy stuff providing 'DIFF(...)' syntax, although it is anticipated that this will be removed.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22