From 6d62477587bcf9fda783d9c513129f65f5b8637d Mon Sep 17 00:00:00 2001 From: Max Linke Date: Tue, 19 Jan 2016 11:09:53 +0100 Subject: [PATCH 1/8] Start next release blog-post --- _posts/2016-xx-xx-release-0.1x.x.md | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 _posts/2016-xx-xx-release-0.1x.x.md diff --git a/_posts/2016-xx-xx-release-0.1x.x.md b/_posts/2016-xx-xx-release-0.1x.x.md new file mode 100644 index 00000000..a982b715 --- /dev/null +++ b/_posts/2016-xx-xx-release-0.1x.x.md @@ -0,0 +1,32 @@ +--- +layout: post +title: Release 0.1x.x +--- + +We have just released MDAnalysis version 0.1x.x + +# Upgrade + +You can upgrade with `pip install --upgrade MDAnalysis` + +# Noticable Changes + +## Rewrite of TRR and XTC file handling + +Our implementation of the Gromacs +[xdrlib](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) +has been completely rewritten in cython this release. This changes brings us one +step closer towards supporting python 3. The only user facing API change is that +we have don't save persistent frame offsets with the pickle module anymore but +with numpy's 'npz' format. This improves reopening of xtc/trr files. + +## Going strong towards python 3 + +We are planning to support python 3 as well in the future. This release has +started our process of adopting MDAnalysis to be compatible with python 2.7 and +python 3. + +## Others + +This release contains other performance enhancements and fixes. For a detailed +list see the [release notes]() From 6a9ca15526378c8dbb5b3340d2dc1b84c2bcc1cc Mon Sep 17 00:00:00 2001 From: David Dotson Date: Wed, 20 Jan 2016 12:19:28 -0700 Subject: [PATCH 2/8] Typo fixes; capitalization of Python. --- _posts/2016-xx-xx-release-0.1x.x.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/_posts/2016-xx-xx-release-0.1x.x.md b/_posts/2016-xx-xx-release-0.1x.x.md index a982b715..78999735 100644 --- a/_posts/2016-xx-xx-release-0.1x.x.md +++ b/_posts/2016-xx-xx-release-0.1x.x.md @@ -16,15 +16,15 @@ You can upgrade with `pip install --upgrade MDAnalysis` Our implementation of the Gromacs [xdrlib](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) has been completely rewritten in cython this release. This changes brings us one -step closer towards supporting python 3. The only user facing API change is that -we have don't save persistent frame offsets with the pickle module anymore but +step closer towards supporting Python 3. The only user facing API change is that +we don't save persistent frame offsets with the pickle module anymore but with numpy's 'npz' format. This improves reopening of xtc/trr files. -## Going strong towards python 3 +## Going strong towards Python 3 -We are planning to support python 3 as well in the future. This release has -started our process of adopting MDAnalysis to be compatible with python 2.7 and -python 3. +We are planning to support Python 3 as well in the future. This release has +started our process of adapting MDAnalysis to be compatible with Python 2.7 and +Python 3. ## Others From 854c080b6f8ca35e08e72807910d765c9757fdd0 Mon Sep 17 00:00:00 2001 From: Richard Gowers Date: Thu, 21 Jan 2016 10:07:43 +0000 Subject: [PATCH 3/8] Updated future 0.14.0 release post Now officially will be 0.14.0 Added details on implicit OR selections --- _posts/2016-xx-xx-release-0.14.0.md | 69 +++++++++++++++++++++++++++++ _posts/2016-xx-xx-release-0.1x.x.md | 32 ------------- 2 files changed, 69 insertions(+), 32 deletions(-) create mode 100644 _posts/2016-xx-xx-release-0.14.0.md delete mode 100644 _posts/2016-xx-xx-release-0.1x.x.md diff --git a/_posts/2016-xx-xx-release-0.14.0.md b/_posts/2016-xx-xx-release-0.14.0.md new file mode 100644 index 00000000..d6fe0008 --- /dev/null +++ b/_posts/2016-xx-xx-release-0.14.0.md @@ -0,0 +1,69 @@ +--- +layout: post +title: Release 0.14.0 +--- + +We have just released MDAnalysis version 0.14.0 + +# Upgrade + +You can upgrade with `pip install --upgrade MDAnalysis` + +# Noticable Changes + +## Rewrite of TRR and XTC file handling + +Our implementation of the Gromacs +[xdrlib](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) +has been completely rewritten in cython this release. This changes brings us one +step closer towards supporting Python 3. The only user facing API change is that +we don't save persistent frame offsets with the pickle module anymore but +with numpy's 'npz' format. This improves reopening of xtc/trr files. + +## Impicit OR in selections + +Many long selection strings used in select_atoms have been simplified through +allowing implicit OR in the arguments. For example to select all atoms +with one of a few names previous required lots of ORs + +```python +# OLD +u.select_atoms('name Ca or name N or name Ch') + +# NEW +u.select_atoms('name Ca N Ch') +``` + +The new syntax allows multiple arguments after the keyword `name`. +The selection will keep eating arguments till it hits a keyword. +The use of wildcards is still possible too, making the selection +of all atoms with a type beginning with 'C' or 'N' as simple as: + +```python +u.select_atoms('type C* N*') +``` + +Similarly, for selecting ranges of resids + +```python +# OLD +u.select_atoms('resid 1:10 or resid 40:50 or resid 56 or resid 67') + +# NEW +u.select_atoms('resid 1:10 40:50 56 67') +``` + +This new behaviour works for name, type, resname, segid, altLoc, resid, +resnum and bynum selections! The old behaviour will still work, +but we feel this should save a lot of typing! + +## Going strong towards Python 3 + +We are planning to support Python 3 as well in the future. This release has +started our process of adapting MDAnalysis to be compatible with Python 2.7 and +Python 3. + +## Others + +This release contains other performance enhancements and fixes. For a detailed +list see the [release notes]() diff --git a/_posts/2016-xx-xx-release-0.1x.x.md b/_posts/2016-xx-xx-release-0.1x.x.md deleted file mode 100644 index 78999735..00000000 --- a/_posts/2016-xx-xx-release-0.1x.x.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -layout: post -title: Release 0.1x.x ---- - -We have just released MDAnalysis version 0.1x.x - -# Upgrade - -You can upgrade with `pip install --upgrade MDAnalysis` - -# Noticable Changes - -## Rewrite of TRR and XTC file handling - -Our implementation of the Gromacs -[xdrlib](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) -has been completely rewritten in cython this release. This changes brings us one -step closer towards supporting Python 3. The only user facing API change is that -we don't save persistent frame offsets with the pickle module anymore but -with numpy's 'npz' format. This improves reopening of xtc/trr files. - -## Going strong towards Python 3 - -We are planning to support Python 3 as well in the future. This release has -started our process of adapting MDAnalysis to be compatible with Python 2.7 and -Python 3. - -## Others - -This release contains other performance enhancements and fixes. For a detailed -list see the [release notes]() From cd251a6b462b3568d8a19d15cf5d899014c544b9 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sat, 6 Feb 2016 16:21:14 +0100 Subject: [PATCH 4/8] Say that Python3 is in experimental testing stage --- _posts/2016-xx-xx-release-0.14.0.md | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/_posts/2016-xx-xx-release-0.14.0.md b/_posts/2016-xx-xx-release-0.14.0.md index d6fe0008..3b035c1a 100644 --- a/_posts/2016-xx-xx-release-0.14.0.md +++ b/_posts/2016-xx-xx-release-0.14.0.md @@ -11,15 +11,6 @@ You can upgrade with `pip install --upgrade MDAnalysis` # Noticable Changes -## Rewrite of TRR and XTC file handling - -Our implementation of the Gromacs -[xdrlib](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) -has been completely rewritten in cython this release. This changes brings us one -step closer towards supporting Python 3. The only user facing API change is that -we don't save persistent frame offsets with the pickle module anymore but -with numpy's 'npz' format. This improves reopening of xtc/trr files. - ## Impicit OR in selections Many long selection strings used in select_atoms have been simplified through @@ -57,11 +48,21 @@ This new behaviour works for name, type, resname, segid, altLoc, resid, resnum and bynum selections! The old behaviour will still work, but we feel this should save a lot of typing! -## Going strong towards Python 3 +## Rewrite of TRR and XTC file handling + +Our implementation of the Gromacs +[xdrlib](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) +has been completely rewritten in cython this release. This changes brings us one +step closer towards supporting Python 3. The only user facing API change is that +we don't save persistent frame offsets with the pickle module anymore but +with numpy's 'npz' format. This improves reopening of xtc/trr files. + +## Experimental Python 3 Support -We are planning to support Python 3 as well in the future. This release has -started our process of adapting MDAnalysis to be compatible with Python 2.7 and -Python 3. +With this release it is possible to run MDAnalysis under python 3. We have +ported most of our coordinate readers and topology readers to be python2/3 +compatible. Most features should already work but expect there to be some minor +glitches. ## Others From 4e77294f23d67cd6d5522db382120875469a2bab Mon Sep 17 00:00:00 2001 From: Oliver Beckstein Date: Sun, 28 Feb 2016 12:18:48 -0800 Subject: [PATCH 5/8] release 0.14.0: initial preps for release - date - link to release notes - boolean indexing as new feature --- ...0.14.0.md => 2016-02-28-release-0.14.0.md} | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) rename _posts/{2016-xx-xx-release-0.14.0.md => 2016-02-28-release-0.14.0.md} (65%) diff --git a/_posts/2016-xx-xx-release-0.14.0.md b/_posts/2016-02-28-release-0.14.0.md similarity index 65% rename from _posts/2016-xx-xx-release-0.14.0.md rename to _posts/2016-02-28-release-0.14.0.md index 3b035c1a..ab893c79 100644 --- a/_posts/2016-xx-xx-release-0.14.0.md +++ b/_posts/2016-02-28-release-0.14.0.md @@ -3,7 +3,7 @@ layout: post title: Release 0.14.0 --- -We have just released MDAnalysis version 0.14.0 +We have just released MDAnalysis version 0.14.0. This release contains a large number of new features and bug fixes. The highlights are listed below but for more details see the [release notes](https://github.com/MDAnalysis/mdanalysis/wiki/ReleaseNotes0140). # Upgrade @@ -11,7 +11,7 @@ You can upgrade with `pip install --upgrade MDAnalysis` # Noticable Changes -## Impicit OR in selections +## Implicit OR in selections Many long selection strings used in select_atoms have been simplified through allowing implicit OR in the arguments. For example to select all atoms @@ -48,6 +48,21 @@ This new behaviour works for name, type, resname, segid, altLoc, resid, resnum and bynum selections! The old behaviour will still work, but we feel this should save a lot of typing! +## Boolean indexing of trajectories +You can now treat trajectories like numpy arrays in a fully Pythonic fashion: You can do fancy indexing and now you can also do boolean indexing, allowing building simple re-usable trajectory filters with ease, e.g., in order to slice data. + +```python +# build a filter array for re-use: only frames where the centroids +# of groups A and B are closer than 3 A +idx = [np.linalg.norm(A.centroid() - B.centroid()) < 3.0 for ts in u.trajectory] + +for ts in u.trajectory[idx]: + # do more analysis on these frames + +for ts in u.trajectory[np.logical_not(idx)]: + # do analysis on the other frames +``` + ## Rewrite of TRR and XTC file handling Our implementation of the Gromacs @@ -67,4 +82,4 @@ glitches. ## Others This release contains other performance enhancements and fixes. For a detailed -list see the [release notes]() +list see the [release notes](https://github.com/MDAnalysis/mdanalysis/wiki/ReleaseNotes0140). From 36ef3b87661322f5ac5c17adf82c604a776fa686 Mon Sep 17 00:00:00 2001 From: Oliver Beckstein Date: Sun, 28 Feb 2016 12:40:30 -0800 Subject: [PATCH 6/8] added LinearDensity module to new things in 0.14.0 Note: docs are partially missing, see MDAnalysis/mdanalysis#746 --- _posts/2016-02-28-release-0.14.0.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/_posts/2016-02-28-release-0.14.0.md b/_posts/2016-02-28-release-0.14.0.md index ab893c79..2ca961a8 100644 --- a/_posts/2016-02-28-release-0.14.0.md +++ b/_posts/2016-02-28-release-0.14.0.md @@ -63,6 +63,9 @@ for ts in u.trajectory[np.logical_not(idx)]: # do analysis on the other frames ``` +## New analysis module to calculate linear densities +The [MDAnalysis.analysis.lineardensity](http://pythonhosted.org/MDAnalysis/documentation_pages/analysis/lineardensity.html) module contains the class `LinearDensity` that simplifies calculation of mass and charge densities profiles along the primary axes of a simulation cell. + ## Rewrite of TRR and XTC file handling Our implementation of the Gromacs From 88ff676edab942e9cb86c026721a420479a2aaa0 Mon Sep 17 00:00:00 2001 From: Max Linke Date: Sun, 28 Feb 2016 22:44:40 +0100 Subject: [PATCH 7/8] Small wording changes --- _posts/2016-02-28-release-0.14.0.md | 31 +++++++++++++++++++---------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/_posts/2016-02-28-release-0.14.0.md b/_posts/2016-02-28-release-0.14.0.md index 2ca961a8..132d7b38 100644 --- a/_posts/2016-02-28-release-0.14.0.md +++ b/_posts/2016-02-28-release-0.14.0.md @@ -3,7 +3,10 @@ layout: post title: Release 0.14.0 --- -We have just released MDAnalysis version 0.14.0. This release contains a large number of new features and bug fixes. The highlights are listed below but for more details see the [release notes](https://github.com/MDAnalysis/mdanalysis/wiki/ReleaseNotes0140). +We have just released MDAnalysis version 0.14.0. This release contains a large +number of new features and bug fixes. The highlights are listed below but for +more details see the +[release notes](https://github.com/MDAnalysis/mdanalysis/wiki/ReleaseNotes0140). # Upgrade @@ -14,7 +17,7 @@ You can upgrade with `pip install --upgrade MDAnalysis` ## Implicit OR in selections Many long selection strings used in select_atoms have been simplified through -allowing implicit OR in the arguments. For example to select all atoms +allowing implicit *OR* in the arguments. For example to select all atoms with one of a few names previous required lots of ORs ```python @@ -44,12 +47,15 @@ u.select_atoms('resid 1:10 or resid 40:50 or resid 56 or resid 67') u.select_atoms('resid 1:10 40:50 56 67') ``` -This new behaviour works for name, type, resname, segid, altLoc, resid, -resnum and bynum selections! The old behaviour will still work, +This new behaviour works for *name, type, resname, segid, altLoc, resid, +resnum and bynum* selections! The old behaviour will still work, but we feel this should save a lot of typing! ## Boolean indexing of trajectories -You can now treat trajectories like numpy arrays in a fully Pythonic fashion: You can do fancy indexing and now you can also do boolean indexing, allowing building simple re-usable trajectory filters with ease, e.g., in order to slice data. +You can now treat trajectories like numpy arrays in a fully pythonic fashion: +You can do fancy indexing and now you can also do boolean indexing, allowing +building simple re-usable trajectory filters with ease, e.g., in order to slice +data. ```python # build a filter array for re-use: only frames where the centroids @@ -64,13 +70,16 @@ for ts in u.trajectory[np.logical_not(idx)]: ``` ## New analysis module to calculate linear densities -The [MDAnalysis.analysis.lineardensity](http://pythonhosted.org/MDAnalysis/documentation_pages/analysis/lineardensity.html) module contains the class `LinearDensity` that simplifies calculation of mass and charge densities profiles along the primary axes of a simulation cell. +The +[MDAnalysis.analysis.lineardensity](http://pythonhosted.org/MDAnalysis/documentation_pages/analysis/lineardensity.html) +module contains the class `LinearDensity` that simplifies calculation of mass +and charge densities profiles along the primary axes of a simulation cell. ## Rewrite of TRR and XTC file handling -Our implementation of the Gromacs +Our wrapper of the Gromacs library [xdrlib](http://www.gromacs.org/Developer_Zone/Programming_Guide/XTC_Library) -has been completely rewritten in cython this release. This changes brings us one +has been completely rewritten in cython. This changes brings us one step closer towards supporting Python 3. The only user facing API change is that we don't save persistent frame offsets with the pickle module anymore but with numpy's 'npz' format. This improves reopening of xtc/trr files. @@ -78,9 +87,9 @@ with numpy's 'npz' format. This improves reopening of xtc/trr files. ## Experimental Python 3 Support With this release it is possible to run MDAnalysis under python 3. We have -ported most of our coordinate readers and topology readers to be python2/3 -compatible. Most features should already work but expect there to be some minor -glitches. +ported most of our coordinate readers, DCD is still missing, and topology +readers to be python2/3 compatible. Most features should already work but expect +there to be some minor glitches. ## Others From 5deb432a3ed471308fa73d53462bfbd4032630b6 Mon Sep 17 00:00:00 2001 From: Oliver Beckstein Date: Sun, 28 Feb 2016 17:52:54 -0800 Subject: [PATCH 8/8] minor language fixes --- _posts/2016-02-28-release-0.14.0.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/_posts/2016-02-28-release-0.14.0.md b/_posts/2016-02-28-release-0.14.0.md index 132d7b38..4275ae8d 100644 --- a/_posts/2016-02-28-release-0.14.0.md +++ b/_posts/2016-02-28-release-0.14.0.md @@ -14,7 +14,7 @@ You can upgrade with `pip install --upgrade MDAnalysis` # Noticable Changes -## Implicit OR in selections +## Implicit *OR* in selections Many long selection strings used in select_atoms have been simplified through allowing implicit *OR* in the arguments. For example to select all atoms @@ -53,8 +53,8 @@ but we feel this should save a lot of typing! ## Boolean indexing of trajectories You can now treat trajectories like numpy arrays in a fully pythonic fashion: -You can do fancy indexing and now you can also do boolean indexing, allowing -building simple re-usable trajectory filters with ease, e.g., in order to slice +You could already do fancy indexing and now you can also do boolean indexing. One application +is building simple re-usable trajectory filters with ease, e.g., in order to slice data. ```python @@ -63,10 +63,10 @@ data. idx = [np.linalg.norm(A.centroid() - B.centroid()) < 3.0 for ts in u.trajectory] for ts in u.trajectory[idx]: - # do more analysis on these frames + # analyze the frames where |A - B| distance < 3 for ts in u.trajectory[np.logical_not(idx)]: - # do analysis on the other frames + # do analysis on the other frames, |A - B| >= 3 ``` ## New analysis module to calculate linear densities @@ -86,7 +86,7 @@ with numpy's 'npz' format. This improves reopening of xtc/trr files. ## Experimental Python 3 Support -With this release it is possible to run MDAnalysis under python 3. We have +With this release it is possible to run MDAnalysis under Python 3. We have ported most of our coordinate readers, DCD is still missing, and topology readers to be python2/3 compatible. Most features should already work but expect there to be some minor glitches.