# Code for Intel ODE Solver - dodesol

**URL:** <https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665>\
**Category:** Uncategorized\
**Created:** [November 5, 2022, 10:37pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665 "2022-11-05T22:37:59Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![general\_rishkin](https://avatars.discourse-cdn.com/v4/letter/g/a9a28c/32.png) [@general\_rishkin](https://fortran-lang.discourse.group/u/general_rishkin)\
**Post date:** [November 5, 2022, 10:37pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/1 "2022-11-05T22:37:59Z")

</div>

Intel had an ode solver library (dodesol) around 2008, which was incredibly great for stiff problems. Where lsoda or cvode would fail, dodesol would power through.

I believe internal development was discontinued and the code was provided at some point. I have tried searching for it but to no avail. I only came across similar sentiments and experience from others as I had.

Does anyone here have the source code?

---

<div class="post-metadata">

**Author:** ![meow464](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/meow464/32/1987_2.png) [@meow464](https://fortran-lang.discourse.group/u/meow464)\
**Post date:** [November 6, 2022, 5:06am UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/2 "2022-11-06T05:06:39Z")

</div>

Best I could find was the download page with the [author’s names](https://web.archive.org/web/20100802164451/http://software.intel.com/en-us/articles/intel-ordinary-differential-equations-solver-library/) and a [filename](https://web.archive.org/web/20100913161224/http://software.intel.com/en-us/articles/pre-release-license-agreement-for-intel-ordinary-differential-equations-solver-library-accept-end-user-license-agreement-and-download). I didn’t have much luck with search engines. Maybe email the authors? Let me know if you can find it.

---

<div class="post-metadata">

**Author:** ![general\_rishkin](https://avatars.discourse-cdn.com/v4/letter/g/a9a28c/32.png) [@general\_rishkin](https://fortran-lang.discourse.group/u/general_rishkin)\
**Post date:** [November 6, 2022, 3:18pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/3 "2022-11-06T15:18:38Z")

</div>

Thanks. I will email the authors.

---

<div class="post-metadata">

**Author:** ![andizuend](https://avatars.discourse-cdn.com/v4/letter/a/7c8e57/32.png) [@andizuend](https://fortran-lang.discourse.group/u/andizuend)\
**Post date:** [November 6, 2022, 4:25pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/4 "2022-11-06T16:25:34Z")

</div>

For stiff ODE solving, perhaps also have a look at the options FATODE provides. I have used their Rodas3 method in cases where dvode would fail; [FATODE site](https://people.cs.vt.edu/~asandu/Software/FATODE/)

---

<div class="post-metadata">

**Author:** ![Lapis17](https://avatars.discourse-cdn.com/v4/letter/l/58956e/32.png) [@Lapis17](https://fortran-lang.discourse.group/u/Lapis17)\
**Post date:** [August 15, 2023, 4:15pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/5 "2023-08-15T16:15:56Z")

</div>

Apparently you can download the library from [here](https://en.smath.com/forum/yaf_postsm57453_Intel-ODE-Solver-Library.aspx). However it only contains dll files which I have not been able to use so far.

---

<div class="post-metadata">

**Author:** ![oscardssmith](https://avatars.discourse-cdn.com/v4/letter/o/b9e5f3/32.png) [@oscardssmith](https://fortran-lang.discourse.group/u/oscardssmith)\
**Post date:** [August 15, 2023, 4:28pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/6 "2023-08-15T16:28:39Z")

</div>

something worth noting is that an easy way for an ode solver to appear really robust is to just give up on controlling the error to the extent desired by the user. unless you had work precision diagrams that showed better performance I would be very wary.

---

<div class="post-metadata">

**Author:** ![Lapis17](https://avatars.discourse-cdn.com/v4/letter/l/58956e/32.png) [@Lapis17](https://fortran-lang.discourse.group/u/Lapis17)\
**Post date:** [August 15, 2023, 4:36pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/7 "2023-08-15T16:36:00Z")

</div>

Found [this](https://community.intel.com/cipcp26785/attachments/cipcp26785/fortran-compiler/135576/1/Intel-ODE.zip) on an intel forum. It contains lib files that seem to work.

---

<div class="post-metadata">

**Author:** ![Lapis17](https://avatars.discourse-cdn.com/v4/letter/l/58956e/32.png) [@Lapis17](https://fortran-lang.discourse.group/u/Lapis17)\
**Post date:** [August 15, 2023, 5:18pm UTC](https://fortran-lang.discourse.group/t/code-for-intel-ode-solver-dodesol/4665/8 "2023-08-15T17:18:17Z")

</div>

I can now confirm that the implicit solver in the library works at points where LSODA, DVODE, RADAU5, RODAS, SEULEX all fail. Also seems to be slightly more accurate at the same tolerance (compared to DVODE). The mechanism to select an explicit/implicit solver automatically doesnt seem to work well though.
