Skip to content

Conversation

@bernhardbachmann
Copy link
Contributor

@bernhardbachmann bernhardbachmann commented Jun 24, 2022

Purpose

New development of a generic birate ODE solver.

TODOs

  • @AnHeuermann Clean up your TODOs in source code.
  • @bernhardbachmann Clean up TODOs.
  • Fix memory leaks.
  • Add documentation.
  • Squash commits / remove non-existing GitHub user from commits.
  • Review code

perost and others added 26 commits July 7, 2022 10:16
- Dump the structure of modifiers instead of just dumping them as
  strings.
- Dump modifiers for classes too, including extends clauses.
- Make the modifiers optional.
- Fixed wrong residual counting in KINSOL
  - Added additional logging case
  - Fixed headers if WITH_SUNDIALS isn't defined

Co-authored-by: bernhardbachmann <bernhardbachmann@users.noreply.github.com>
…elica#9170)

  - Always include Qt's `QOpenGLContext` header before including any OSG
    headers.

  - See OpenModelica#9145 and https://bugreports.qt.io/browse/QTBUG-104673 for reasons
    behind this requirement.

  - Improves OpenModelica#9145.
- Catch errors when instantiating annotations and add them to the JSON
  instead of failing.
- Add ErrorExt.printCheckpointMessagesStr.

Fixes OpenModelica#9167
…ca#9171)

  - Instead of failing configuration completely when the required boost
    libraries are not found, simply disable ParModAuto and continue as it
    is an optional component anyway.

  - We can add a configuration option for this but seems like it is an
    overkill to add an option just for this at the moment.

  - We should probably handle the CPP runtime in a similar manner. Instead
    of requiring users to add yet another option to their configuration
    commandline.
…elica#9174)

  - Make sure CPP runtime libraries can find boost headers even when boost
    is not installed in system directories.

    We do this by linking `Boost:boost` (which provides access to the header
    only libraries, e.g., ublas) with `OMCppConfig` (`omc::simrt::cpp::config`)

    All CPP-runtime libraries link to `OMCppConfig`. This means all of them
    will get access to boost headers transitively.

  - Make sure the `ParModAuto` library can find boost headers even when boost
    is not installed in system directories.

    For this one we can link to Boost::graph (Boost::boost would have worked
    equally fine)
- Change extends to be an object that contain a class instance instead
  of being a class instance directly, and add modifiers and annotations
  from the extends clause to it.
- Use `$value` for binding expressions in SCode modifiers to allow
  mixing it with submodifiers, and change the structure to be more
  compact.
…a#9185)

- do not combine fcall + string as it SOMEHOW fails?!
- splitting it into two calls seems to work
- Use DATA* instead of void*.
- Resolve warning when compiling C code.
* Update macOS instructions

feedback from hkiel.

* more updates to macOS section
make dae mode symbolic jacobian available
use `--daeMode --generateSymbolicJacobian` as translation flags and `-jacobian=coloredSymbolical` as simflag.
- Remove CREF_EQUALITY and just use EQUALITY instead, since
  having "naked" crefs complicates expression traversal and the NF
  doesn't actually need it.
- Convert EQUALITY with crefs to DAE.EQUEQUATION for the old backend,
  and just use EQUALITY directly in the new backend.
@AnHeuermann AnHeuermann enabled auto-merge (squash) July 7, 2022 09:23
@AnHeuermann AnHeuermann merged commit 7e822a2 into OpenModelica:master Jul 7, 2022
@bernhardbachmann bernhardbachmann deleted the 01-GBODE_development branch August 4, 2022 09:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

COMP/OMC/Runtime Issues and pull requests related to the runtime for OMC (not simulation runtime).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants