-
Notifications
You must be signed in to change notification settings - Fork 34
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use sparse storage & operations in C++ VODE for aprox13 (#307)
This PR adds a sparse linear system storage and arithmetic to C++ VODE for aprox13. The basic idea is to create sparse and dense matrix data structures for the Jacobian so the rhs and integrator can interact with it through provided functions agnostic to the underlying storage. - Adds a sparse jacobian struct for aprox13 that handles 2D->1D indexing for access and arithmetic at compile time. - Adds a dense jacobian struct (MathArray2D) that includes the equivalent arithmetic operations we need to supply for a consistent interface between sparse & dense jacobian data structures. - Modifies rhs, temperature rhs, and integrator to be agnostic to the storage type - Modifies test_rhs to use the sparse or dense jacobians to call actual_jac depending on USE_NETWORK_SOLVER.
- Loading branch information
Showing
13 changed files
with
832 additions
and
68 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.