Meeting Minutes 9 May 2007

Meeting Minutes 9 May 2007
Present: Matt Halstead, Poul Nielsen, Jonna Terklidsen, Tommy Yu, James Lawson, Andrew Miller, Randall Britten, Peter Hunter, Edmund Crampin

Poul noted that Catherine Lloyd has finished her PhD. She will be going to Oxford eventually, but will be available for the next few months. She is starting next Wednesday.

Jonna noted many of the integrators in PCEnv are not very good for real models. She found that running her model in all the integrators in PCEnv gave a vast range of results. When she tried this for a simpler model with an analytic solution, it showed that some integrators gave reasonably good results, but others were giving completely wrong results. Andrew has also observed this in the errors showing up in his pendulum model, which has coupled ODEs with an analytic solution, and can show the errors.

Many of the algorithms come from GSL, which has tried to replicate legacy Fortran integrators, rather than produce integrators which are actually useful in practice (unlike the SUNDIALS project, where the integrators that work the best come from).

The other integrators may be faster for linear models, but these models are not useful in practice. The decision was to get rid of these integrators from PCEnv, and only keep the BDF and Adams-Moulton integrators from SUNDIALS, and the RK5 with non-linear solve algorithm from GSL.

Peter raised the issue of what models should be displayed on the main page. At present, there may be a star on the list of repository models, but if you actually click on it, you don't end up at the model that was curated to give the star.

Issues about how variants should be displayed, and what a variant actually is, were also raised. Matt suggested that we would be better to append an _number suffix, as in the original document describing the naming convention, to the model where the same paper introduces e.g. both an endocardial and an epicardial parameterisation of the same model. If the paper only provided one cell type, another version with different parameters should be a different model.

There was also discussion about what we should do with models which do not correspond to a published paper. Peter feels very strongly that we should not appear to endorse models which have not been peer reviewed. Edmund agrees that our annotations at best describe that a model matches the data, and not that the data the model is matched against is appropriate. In the future, Edmund's proposal to have community voting could also play a part in this, but that will be many years down the track.

There was discussion about whether a correction to make a model represent an author's intention, instead of what was actually published, should constitute a new variant or a new version. Matt thinks it should be a new variant, but that there should be a clear link to the other variant. However, the consensus was that this should still be a version.

The issue of how we know that a model reproduces the paper was also raised. Papers often only provide a small graph, and although we could digitise this, it is still hard to tell how accurately the results are reproduced, unless the author is involved.

The issue of how closely a model has to represent a paper was discussed, and in particular, if changes in the way the mathematics are written, which don't change the semantics are allowed if the model is said to be linked to the paper. The group decided that mathematical equivalence is sufficient, especially if the author is involved in the process.

Peter suggested that as an outcome from the discussion, the default view (main page) only lists published models, not extra variants, that it links directly to the last version, and that variants which should be versions get changed to be versions.

The group also agreed that we should have a way to sort based on curation, as well as to filter so we can only see a given type of model.

Andrew noted that he had made progress on splitting the CCGS into separate components. It was decided to defer a detailed consideration of this until next week, as we were over time this week.

Following up from a suggestion at last week's meeting, Andrew has looked at the MathML 3 draft specification, and has found that there are a number of changes between the content part of MathML 2 and the canonical form of MathML 3. Notable changes include separating function applications into bindings and applications, so e.g. taking a derivative with respect to a bound variable is now a binding and not an application of the diff operator. New functionality for structure sharing has been added. Also, uplimit and lowlimit, e.g. in definite integrals, is no longer allowed in the canonical form, instead conditions and intervals have to be used. There is currently no major advantages for us to move to MathML 3, but in the future, it might improve interoperability. Andrew will send a mail to the mailing list to flag this issue to the community, but note that due to backwards compatibility issues, it is likely that a decision to move to MathML 3.0 will not be made for some time.