Skip to content

OpenPathSampling 0.9.6 - #801

Merged
dwhswenson merged 4 commits into
openpathsampling:masterfrom
dwhswenson:0.9.6
Nov 5, 2018
Merged

dwhswenson merged 4 commits into
openpathsampling:masterfrom
dwhswenson:0.9.6

Conversation

@dwhswenson

@dwhswenson dwhswenson commented Oct 10, 2018 •

Copy link
Copy Markdown
Member

This is waiting on #800. The text below will be the release notes.


OpenPathSampling 0.9.6 includes several new features, as well as many improvements to the examples and documentation. Highlights include:

  • Interface constrained shooting, an efficient technique in TIS
  • Better ways to load trajectories for the OpenMM engine (especially from Gromacs trajectories)
  • bugfix for minus interface ensemble in cases where the transition is not particularly rare

New features

Bugs fixed

Miscellaneous improvements

@dwhswenson

Copy link
Copy Markdown
Member Author

Unless there are objections, I'll cut this release tomorrow.

@dwhswenson dwhswenson changed the title [WIP] OpenPathSampling 0.9.6 OpenPathSampling 0.9.6 Oct 14, 2018
@jhprinz

jhprinz commented Oct 23, 2018

Copy link
Copy Markdown
Contributor

No objections. Go ahead.

@dwhswenson

Copy link
Copy Markdown
Member Author

Actually, I want to hold off on this for one bugfix. A bug that was brought to our attention is a problem with netCDF returning masked arrays in Python 3 (even though I tell it not to? Not sure why it ignores that.) Anyway, I have a (somewhat frustratingly messy) fix, and will make a PR of it soon. I'd rather put the almost-completed fix into 0.9.6.

@jhprinz

jhprinz commented Oct 30, 2018

Copy link
Copy Markdown
Contributor

I would report this as a bug to netcdf4-python. They seem to actively work on this in the last changelogs...

@jhprinz

jhprinz commented Oct 30, 2018

Copy link
Copy Markdown
Contributor

I just had a peak into the source code of netcdf4-python and if I get this right, then the masking is only used if the attribute .mask is set. This will be set to True by default, which is not, what we want. You can use set_auto to change this, but it will only change the setting of existing variables, not for variables created next. It will not change the default behaviour. Does that help?

Why there is a difference between python3 and python2. No idea. Is it clear that the used version of netcdf4 is the same?

@dwhswenson

Copy link
Copy Markdown
Member Author

I just had a peak into the source code of netcdf4-python and if I get this right, then the masking is only used if the attribute .mask is set. This will be set to True by default, which is not, what we want. You can use set_auto to change this, but it will only change the setting of existing variables, not for variables created next. It will not change the default behaviour. Does that help?

Thanks; note that #803 is the fix I'm proposing for this, at least for now.

I agree that it isn't a perfect fix, but basically I'm tired of getting burned by changes in netcdf4-python. This is the second time I've had to fix problems with maskedarrays in about 6 months. Maybe we missed that my fix 6 months ago didn't work for Py3, but still; this was a problem introduced in 1.4.0, and the behavior may have changed in 1.4.1. Minor and possibly even patch releases? It makes me think we can't trust them to keep their API stable on these things, so we have to enforce stability on our side.

Part of this is also that I don't know all the details of how things work in the current storage. That's your expertise, so if you see a more elegant fix, please, open a PR. Mine is admittedly a hack, but I think we absolutely must get some sort of fix out as part of this release.

@dwhswenson
dwhswenson merged commit 71a5071 into openpathsampling:master Nov 5, 2018
@dwhswenson
dwhswenson deleted the 0.9.6 branch November 5, 2018 15:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants