IDA/Analysis: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 7: | Line 7: | ||
# '''<tt>integrator_ida_sort_rels_and_vars</tt>''' | # '''<tt>integrator_ida_sort_rels_and_vars</tt>''' | ||
# '''<tt>integrator_ida_create_lists</tt>''' | # '''<tt>integrator_ida_create_lists</tt>''' | ||
# '''<tt>integrator_ida_check_diffindex</tt>''' | # '''<tt>integrator_ida_check_diffindex</tt>''' (performs a series of ''hopefully unnecessary'' checks) | ||
# (there is some code commented out here to do with checking the structure of the system for structural singularity etc) | # (there is some code commented out here to do with checking the structure of the system for structural singularity etc) | ||
# '''<tt>integrator_ida_check_index</tt>''' should tell the user if there is an index problem (perhaps we can apply automatic index reduction?) | # '''<tt>integrator_ida_check_index</tt>''' should tell the user if there is an index problem (perhaps we can apply automatic index reduction?) | ||
Revision as of 13:13, 21 March 2015
This pages contains some notes on the analysis algorithm that is used in our IDA solver in ASCEND. Work in progress!
- reanalyze_solver_lists, to update the rels/vars in the system system according to the WHENs
- set the 'nonbasic' flag to zero for all normal variables, and to one for the independent variable ('x')
- integrator_ida_check_vars, to check for differential variables that are not incident, downgrading 'differential' variables to algebraic variables if no derivative is present, and marking any...
- integrator_ida_flag_rels
- integrator_ida_sort_rels_and_vars
- integrator_ida_create_lists
- integrator_ida_check_diffindex (performs a series of hopefully unnecessary checks)
- (there is some code commented out here to do with checking the structure of the system for structural singularity etc)
- integrator_ida_check_index should tell the user if there is an index problem (perhaps we can apply automatic index reduction?)
- some checks of the diffvars: do we have a single indep var, is the indep var what we expected it to be.
- copy the list of observed vars (both continuous and discrete) into the integ data struct.
TODO complete this section.
The IDA integrator works a bit differently in the analysis phase to DOPRI5 and LSODE (it would be nice to be able to unify these things).
See also Analysis in the Integrator API.