= !SasView Code Camp-IV = ''(Last edited: 05-Jan-2016)'' == Introduction == The fourth [http://www.sasview.org/ SasView] Code Camp was held from March 15th to 22nd 2016, hosted by the [http://www.tnw.tudelft.nl/en/cooperation/facilities/reactor-instituut-delft/ Reactor Institute Delft] at [http://tudelft.nl TU Delft] in The Netherlands. Local arrangements were made by Wim Bouwman with details on the [wiki:CodeCampIVPlanning planning page]. == Initial Goals == The primary goals of this code camp were those from the [https://github.com/SasView/documents/blob/master/SasView%20Roadmap.md roadmap], namely: * Move models to new independent sasmodels package * Review all model documentation for accuracy * Begin refactoring tutorial documentation to "getting started" tutorial * Redesign model framework to use the new sasmodels package * Enable OpenCl GPU utilization for models and work on simplifying access for all users * Begin work on integrating SESANS into the SasView GUI * Usual bug fixes and other minor improvements as time and interest permit These items built on the work done at the previous code camp and are focussed on the goal of delivering v4.0 of SasView, as per the roadmap. The major task for this release will be the separation of the model calculation code from the GUI. This work is currently underway with the model package in a separate repository (sasmodels) and models being gradually migrated to the new framework. This project will significantly clean up the code base and start disentangling the computational code from the GUI code which has crept in over the years. Importantly, it will also hugely simplify the process of implementing new models, provide the ability for users to drop in either a C or python SasView discoverable model and provide access to the built-in polydispersity functions. This has been identified as the biggest stumbling block for further uptake by the community: it is both a frustration to current users and is preventing many power users from embracing SasView more fully. Additionally, it will enable transparent access to multiprocessing and GPU support for many users. On most macs this could provide native speedups of 10 to 100 for complex fitting, while windows machines should see a modest speedups but will require the installation of OpenCl by most users to take full advantage of the GPU speedup. This process will be simplified as much as possible for the user. The sasmodels package will incorporate calculation of SESANS curves from SANS models as well as native SESANS models. This will enable the use of sasmodels with BUMPS in scripts to fit SESANS data and prepare for the integration of SESANS fitting into the SasView GUI. Finally, subject to the availability of sufficient resources, all the model documentation will be reviewed and the tutorial documentation will begin to be redone. == Participants == == Photos == [https://www.flickr.com/gp/andrewjjackson/ZL874e All photos from the code camp on Flickr] [[Image(https://farm2.staticflickr.com/1570/25886176391_4fdc8fc3d6_n.jpg)]] [[Image(https://farm2.staticflickr.com/1683/25348441694_9f093a9ecc_n.jpg)]] [[Image(https://farm2.staticflickr.com/1694/25680359950_9e12bfe165_n.jpg)]] == Progress and Outcomes == == Next Steps == == Ticket Summary == === Milestone 4.0 Tickets Closed === [[TicketQuery(changetime=2016-03-12..2016-03-25&status=closed,group=milestone,desc=1,format=table,col=resolution|summary|owner|reporter)]]