Changes between Version 17 and Version 18 of CodeCampIII/ScheduleAndWork/SasModelsWP


Ignore:
Timestamp:
Oct 29, 2017 5:22:31 AM (6 years ago)
Author:
butler
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • CodeCampIII/ScheduleAndWork/SasModelsWP

    v17 v18  
    8888'''Statement of Problem to address:''' 
    8989 
    90 Currently addition of a new model in C requires a rebuilding of the SasView GUI application.  Furthermore it requires the creation/editing of a lot of different files and is anything but straightforward making the learning curve quite steep.  Finally, while a user can simply add a custom python model, that model does not have access to the necessary polydispersity calculation.  Also not clear how the python model code can call a C model (to enhance for example).  Making the addition of a C model simple and allowing python model to work properly with polydispersity would have a HUGE impact.  New models are probably the single most important thing for the user community and with this change model addition can be removed from the core developer group tasks to being something instrument scientists and power user can do. 
     90Currently addition of a new model in C requires a rebuilding of the !SasView GUI application.  Furthermore it requires the creation/editing of a lot of different files and is anything but straightforward making the learning curve quite steep.  Finally, while a user can simply add a custom python model, that model does not have access to the necessary polydispersity calculation.  Also not clear how the python model code can call a C model (to enhance for example).  Making the addition of a C model simple and allowing python model to work properly with polydispersity would have a HUGE impact.  New models are probably the single most important thing for the user community and with this change model addition can be removed from the core developer group tasks to being something instrument scientists and power user can do. 
    9191 
    9292'''This is mostly an underlying computational framework project but also requires tying into existing GUI.''' 
    9393 
    9494'''Goal/scope of project:'''  
    95 Define and implement a clean C plugin interface that allows dropping a new C based model  onto disk that can be discovered live by SasView.  If at all possible allow python models to have access to polydispersity code. 
     95Define and implement a clean C plugin interface that allows dropping a new C based model  onto disk that can be discovered live by !SasView.  If at all possible allow python models to have access to polydispersity code. 
    9696 
    9797  
    9898'''Design Requirements:''' 
    9999 
    100 * Adding a new model in C (for speed) should consist of writing only one file and may possibly require compiling of the model into a shared library file (how does one handle multiple platforms?) (Should SasView compile the models?) 
     100* Adding a new model in C (for speed) should consist of writing only one file and may possibly require compiling of the model into a shared library file (how does one handle multiple platforms?) (Should !asView compile the models?) 
    101101* Adding a new model in C or python consists of dropping the appropriate file into the models directory for discovery by the running application (not GUI bits at this point -- applications can send to GUI bits) 
    102102* GUI must update available models while running 
     
    115115* Implementation 
    116116* Refactor model code as per design above 
    117 * Create/write discovery process in SasView fitting so that computational code updates list of known models to use in fitting 
    118 * Create link to SasView GUI so that GUI also updates models available to GUI users while running 
     117* Create/write discovery process in !SasView fitting so that computational code updates list of known models to use in fitting 
     118* Create link to !SasView GUI so that GUI also updates models available to GUI users while running