Opened 3 years ago

Closed 3 years ago

Last modified 2 years ago

#2937 closed user story (fixed)

Sundials 3.0.0 and 3.1.0 support

Reported by: GaryM Owned by:
Priority: normal Milestone: Iteration I4
Component: infrastructure Keywords:
Cc: Estimated pair-hours remaining: 0
Pair-hours expended on ticket: 6 Initial estimate of effort: 8
Editable by public: yes

Description (last modified by GaryM)

Which includes CVODE 3.0.0/3.1.0 - hurrah!! Don't worry they kept people on their toes by including IDAS 2.0.0...(!)

https://computation.llnl.gov/projects/sundials/release-history

This ticket to test, add support, add into testing rotation.

Looks like quite a few interface changes to deal with so I put 6 hours on it.

v3.1.0 released Nov 2017 - but looks very similar to 3.0.0 so it is anticipated it'll work on both. Upped the hours to get install set up.

Change History (10)

comment:2 Changed 3 years ago by GaryM

  • Description modified (diff)
  • Estimated pair-hours remaining changed from 6 to 8
  • Initial estimate of effort changed from 6 to 8
  • Summary changed from Sundials 3.0.0 released to Sundials 3.0.0 and 3.1.0 support

comment:3 Changed 3 years ago by GaryM

  • Milestone changed from Future to Iteration I4
  • Pair-hours expended on ticket changed from 0 to 1

ticket_2937 branch started.

Got it reporting the correct CVODE version in TestChasteBuildInfo using scons. But will need a cmake specialist to alter the CVODE version logic in FindSUNDIALS.cmake line 116 onwards to do this:

  1. See if the existing regex for #define SUNDIALS_PACKAGE_VERSION has any hits.
    1. If so, do what we do at the moment.
    2. If not, use the new #define SUNDIALS_VERSION_MAJOR, #define SUNDIALS_VERSION_MINOR and #define SUNDIALS_VERSION_PATCH that are now in sundials_config.h to construct the chaste version number.

comment:4 Changed 3 years ago by fcooper

I have committed a possible fix in 4038098/git_repo.

The CMake file(STRINGS <filename> <variable> REGEX <regex>) functionality looks through <filename> line by line and puts any lines with a match to <regex> in <variable>.

The previous functionality was looking for lines that match

"#define SUNDIALS_PACKAGE_VERSION "

and I think the simplest thing is to change this to look for any lines that match

"#define SUNDIALS_(PACKAGE_|)VERSION "

where the PACKAGE_ is now optional. This doesn't directly use the newly defined variables, but seems like the least hassle!

comment:5 Changed 3 years ago by GaryM

Great - cheers Fergus - works on lofty.

comment:6 Changed 3 years ago by GaryM

  • Estimated pair-hours remaining changed from 8 to 0.25
  • Pair-hours expended on ticket changed from 1 to 5

Main interface changes introduced in 04c367.

comment:7 Changed 3 years ago by GaryM

Tidies in 63b9a2, c965eff.

comment:8 Changed 3 years ago by GaryM

  • Estimated pair-hours remaining changed from 0.25 to 0
  • Pair-hours expended on ticket changed from 5 to 6
  • Resolution set to fixed
  • Status changed from new to closed

Added 3.1.0 to the testing rotation.

comment:9 Changed 3 years ago by GaryM

I think we just want to include CVODE 3.1.0 in the testing rotation now (there are very minimal changes relative to 3.0.0 so we will just assume that works OK I think and leave it orange on InstallGuides/DependencyVersions).

comment:10 Changed 2 years ago by GaryM

A last change we missed in e94e84cf.

Note: See TracTickets for help on using tickets.