Version 14 (modified by toby, 11 months ago) (diff)


Information for Folks Writing Code

GSAS-II routines are copyright protected, but are available for reuse in other non-commercial codes with appropriate scholarly acknowledgment. Contribution of code to the GSAS-II is encouraged. Accounts on this site can be made available to people who become active in development.

GSAS-II Developer's Documentation

Documentation on the Python routines that implement GSAS-II is now built and maintained on website Read the Docs on site The guide to the source code can be accessed in formats:

These documents are quite extensive (at current count, the PDF is 167 pages) and have a comprehensive index. The HTML pages provide links to the source code for each top-level routine and class.

Reusable Modules

These modules have been better documented than most and are intended for standalone as well as internal use:

  • GSASIIspc: Space group interpretation code
  • GSASIIlattice: Lattice computations code
  • GSASIIscriptable: a module providing an API for GSAS-II capabilities and for access to GSAS-II project (.gpx) files so that refinements can be performed by scripts or GSAS-II capabilities can be incorporated into other codes.

GSAS-II Unit Tests

The hope is that all sections of GSAS-II code will eventually have unit tests, following the outline defined here, but not very many have been written.

GSAS-II Project tracking

Updates to the source code can be followed using the Timeline Trac tool at this website. The Tickets and Roadmap features are not currently in use.


To make web pages on this site display properly, be sure to set their properties:

  • svn propset svn:mime-type text/html *.htm*
  • svn propset svn:mime-type application/octet-stream *.gif *.png
  • svn propset svn:mime-type text/css *.css
  • svn propset svn:mime-type text/javascript *.js
  • svn propset svn:mime-type application/pdf *.pdf