Version 1.1

5 views
Skip to first unread message

Mike Jarvis

unread,
Jun 8, 2014, 12:55:33 AM6/8/14
to GalSim Announcements, GalSim Developers
We are please to announce the the latest release of GalSim, version 1.1.0.  Please get the tarball here:


In this release, we introduce two big pieces of new functionality: arbitrary WCS transformations (conversions between image and world coordinates more complicated than a simple pixel scale) and chromatic objects (objects whose surface brightness profile is a function of wavelength). Each of these topics has its own section in the CHANGELOG, so see that file for more details:

https://github.com/GalSim-developers/GalSim/blob/releases/1.1/CHANGELOG.md

In addition, we decided to make quite a few changes to the API. Some of these changes were necessary (or at least helpful) for implementing the new functionality. But since we were doing some API changes, we decided to go ahead and include a number of other API changes that we had been reluctant to introduce previously for backwards-compatibility reasons. Getting them all in now means that the API will hopefully be more stable going forward.

We tried to implement the changes in as backwards-compatible a way as possible. In most cases, the previous syntax will still work correctly for the time being. The old functions are merely marked as obsolete or discouraged in the doc strings with a pointer to the new preferred syntax. At some point (probably version 1.2), the old syntax will be officially deprecated, and use of them will raise DeprecationWarnings. Then eventually (probably version 2.0), the deprecated versions will be removed. Hopefully, this will provide for a relatively easy transition to the new style, giving you time to convert any existing GalSim code you may have.

The most significant API changes are:

• A new Image class combines the functionality of all the various different image classes we used to have (ImageF, ImageD, ImageViewF, etc.).
• We changed the way objects are transformed (sheared, dilated, rotated, etc.) to use expressions like obj = obj.shear(s) rather than either obj.applyShear(s) or obj = obj.createSheared(s).
• We combined the functionality of the draw and drawShoot commands into a single drawImage command using a method keyword to specify which rendering method to use.
• The default method for the new drawImage command handles the convolution by the pixel for you, so you no longer need to include the pixel convolution yourself, unless you are doing something slightly non-standard.

The CHANGLELOG.md file has more details about these API changes and the various other more minor changes we have made in this release.  This file is available in the tarball for the release, and also at the link given above.  Again, we sincerely hope that doing these all at once means that we will not have very many (or any) big API changes going forward. 

Thanks so much for using GalSim.

Peace,
Mike Jarvis
on behalf of the GalSim development team
Reply all
Reply to author
Forward
0 new messages