= Model Documentation Checks = All models added to !SasView need to be properly documented. This means there should be (in order): a '''model name''': - this is the ''name'' string in the ''.py'' file - titles should be: - all in ''lower'' case - without spaces (use underscores to separate words instead) - without any capitalization or !CamelCase - without incorporating the word 'model' - examples: ''barbell'' '''not''' ''!BarBell''; ''broad_peak'' '''not''' ''!BroadPeak''; ''barbell'' '''not''' ''!BarBellModel'' a '''short description''': - this is the ''title'' string in the ''.py'' file: this becomes a tooltip in the GUI - the ''.py'' file also contains a ''description'' string: this becomes the short description of the model in the GUI a model '''parameter table''': - this will be auto-generated from the ''parameters'' in the ''.py'' file - ''scale'' and ''background'' are implicit to all models, they do not need to be added separately - '''parameter names should follow the mathematical convention; eg, ''radius_core'' not ''core_radius'', or ''sld_solvent'' not ''solvent_sld'' - use ''python -m sasmodels.list_pars'' to see all the parameter names currently in use: ''re-use'' as many as possible!!! - model parameter names should be consistent between different models, so ''sld_solvent'', for example, should have exactly the same name in every model - every parameter should have units (or the word ''None'') - units should be properly formatted; ie, using sub-/super-scripts and using negative exponents rather than / operators - fancy units markup are contained in the variable RST_UNITS in sasmodels/generate.py - if necessary, add new units to RST_UNITS, use the macros defined in doc/rst_prolog, or add your own - every parameter must have a default value a '''long description''': - this is the RST text enclosed between the r""" and """ delimiters in the ''.py'' file a '''definition''' of the model: - as part of the '''long description''' a '''formula''' defining the function the model calculates: - as part of the '''long description''' - images of math functions should be replaced with Latex equivalents: - use the live demo Mathjax page ( http://www.mathjax.org/) to make sure the equation looks as expected - or copy the Latex code from Paul Kienzle's document ( http://sasview.org/attachment/wiki/SasModels%20Work%20Package/Equations.docx.pdf) an '''explanation of the parameters''': - as part of the '''long description''' - explaining how the symbols in the formula map to the model parameters a '''plot''' of the function - using the default parameters a '''figure caption''': - as part of the '''long description''' - the figure number is auto-generated at least one '''reference''': - as part of the '''long description''' - specifying where the reader can obtain more information about the model the '''name of the author'' - as part of the '''long description''' - the ''.py'' file should also contain a comment identifying ''who'' converted/created the model file ---- '''This table indicates the status of documentation compliance with the above rules (N = not compliant / . = status pending):''' ||=!SasView name=||=sasmodels name=||= short_desc =||= param_table =||= long_desc =||= definition =||= formula =||= param_desc =||= plot =||= ref =||= attribution =|| ||HayterMSAStructure ||HayterMSAsq ||.||.||.||.||.||.||.||.||.|| ||!BarBellModel ||barbell ||.||.||.||.||.||.||.||.||.|| ||BCCrystalModel ||bcc ||.||.||.||.||.||.||.||.||.|| ||BEPolyelectrolyte ||be_polyelectrolyte ||.||.||.||.||.||.||.||.||.|| ||!BroadPeakModel ||broad_peak ||.||.||.||.||.||.||.||.||.|| ||!CappedCylinderModel ||capped_cylinder ||.||.||.||.||.||.||.||.||.|| ||!CoreShellBicelleModel ||core_shell_bicelle ||.||.||.||.||.||.||.||.||.|| ||!CoreShellCylinderModel ||core_shell_cylinder||.||.||.||.||.||.||.||.||.|| ||!CoreShellEllipsoidModel||core_shell_ellipsoid||.||.||.||.||.||.||.||.||.|| ||CoreShellEllipsoidXTModel||core_shell_ellipsoid_xt||.||.||.||.||.||.||.||.||.|| ||!CoreShellModel ||core_shell_sphere ||.||.||.||.||.||.||.||.||.|| ||!CorrLength ||correlation_length ||.||.||.||.||.||.||.||.||.|| ||CSParallelepipedModel ||core_shell_parallelepiped||.||.||.||.||.||.||.||.||.|| ||!CylinderModel ||cylinder ||.||.||.||.||.||.||.||.||.|| ||DABModel ||dab ||.||.||.||.||.||.||.||.||.|| ||!EllipsoidModel ||ellipsoid ||.||.||.||.||.||.||.||.||.|| ||!EllipticalCylinderModel ||elliptical_cylinder||.||.||.||.||.||.||.||.||.|| ||FCCrystalModel ||fcc ||.||.||.||.||.||.||.||.||.|| ||!FlexibleCylinderModel ||flexible_cylinder ||.||.||.||.||.||.||.||.||.|| ||FlexCylEllipXModel ||flexible_cylinder_ex||.||.||.||.||.||.||.||.||.|| ||!FractalCoreShell ||fractal_core_shell ||.||.||.||.||.||.||.||.||.|| ||!FuzzySphereModel ||fuzzy_sphere ||.||.||.||.||.||.||.||.||.|| ||!PeakGaussModel ||gaussian_peak ||.||.||.||.||.||.||.||.||.|| ||!GaussLorentzGel ||gauss_lorentz_gel ||.||.||.||.||.||.||.||.||.|| ||!GelFitModel ||gel_fit ||.||.||.||.||.||.||.||.||.|| ||Guinier ||guinier ||.||.||.||.||.||.||.||.||.|| ||!GuinierPorod ||guinier_porod ||.||.||.||.||.||.||.||.||.|| ||!HardsphereStructure ||hardsphere ||.||.||.||.||.||.||.||.||.|| ||!HollowCylinderModel ||hollow_cylinder ||.||.||.||.||.||.||.||.||.|| ||!LamellarModel ||lamellar ||.||.||.||.||.||.||.||.||.|| ||LamellarPSModel ||lamellarCaille ||.||.||.||.||.||.||.||.||.|| ||LamellarPSHGModel ||lamellarCailleHG ||.||.||.||.||.||.||.||.||.|| ||LamellarFFHGModel ||lamellarFFHG ||.||.||.||.||.||.||.||.||.|| ||LamellarPCrystallModel ||lamellarPC ||.||.||.||.||.||.||.||.||.|| ||!LineModel ||line ||.||.||.||.||.||.||.||.||.|| ||!LinearPearlsModel ||linear_pearls ||.||.||.||.||.||.||.||.||.|| ||Lorentz ||lorentz ||.||.||.||.||.||.||.||.||.|| ||!MassFractalModel ||mass_fractal ||.||.||.||.||.||.||.||.||.|| ||!MassSurfaceFractal ||mass_surface_fractal||.||.||.||.||.||.||.||.||.|| ||!MicelleSphCore ||micelle_sphere_core||.||.||.||.||.|| ||.||.||.|| ||!MultiShellModel ||multi_shell ||.||.||.||.||.||.||.||.||.|| ||!ParallelepipedModel ||parallelepiped ||.||.||.||.||.||.||.||.||.|| ||!PeakLorentzModel ||peak_lorentz ||.||.||.||.||.||.||.||.||.|| ||!PearlNecklaceModel ||pearl_necklace ||.||.||.||.||.||.||.||.||.|| ||!PolyExclVolume ||polymer_excl_volume||.||.||.||.||.||.||.||.||.|| ||!PorodModel ||porod ||.||.||.||.||.||.||.||.||.|| ||!AbsolutePower_Law ||power_law ||.||.||.||.||.||.||.||.||.|| ||!RectangularPrismModel ||rectangular_prism ||.||.||.||.||.||.||.||.||.|| ||!RectangularHollowPrismModel||hollow_rectangular_prism||.||.||.||.||.||.||.||.||.|| ||!RectangularHollowPrismInfThinWallsModel||hollow_rectangular_prism_infinitely_thin_walls ||.||.||.||.||.||.||.||.||.|| ||SCCrystalModel ||sc_crystal ||.||.||.||.||.||.||.||.||.|| ||!SphereModel ||sphere ||.||.||.||.||.||.||.||.||.|| ||!StackedDisksModel ||stacked_disk ||.||.||.||.||.||.||.||.||.|| ||!StarPolymer ||star_polymer ||.||.||.||.||.||.||.||.||.|| ||StickyHSStructure ||stickyhardsphere ||.||.||.||.||.||.||.||.||.|| ||!SurfaceFractalModel ||surface_fractal ||.||.||.||.||.||.||.||.||.|| ||!TeubnerStrey ||teubner_strey ||.||.||.||.||.||.||.||.||.|| ||!TriaxialEllipsoidModel ||triaxial_ellipsoid ||.||.||.||.||.||.||.||.||.|| ||!TwoLorentzian ||two_lorentzian ||.||.||.||.||.||.||.||.||.|| ||!TwoPowerLaw ||two_power_law ||.||.||.||.||.||.||.||.||.|| ||!VesicleModel ||vesicle ||.||.||.||.||.||.||.||.||.|| ||BinaryHSModel ||binary_hard_sphere ||.||.||.||.||.||.||.||.||.|| ||Core2ndMomentModel || ||.||.||.||.||.||.||.||.||.|| ||!CoreMultiShellModel || ||.||.||.||.||.||.||.||.||.|| ||Debye || ||.||.||.||.||.||.||.||.||.|| ||!FractalModel || ||.||.||.||.||.||.||.||.||.|| ||!MultiplicationModel || ||.||.||.||.||.|| ||.||.||.|| ||!OnionExpShellModel || ||.||.||.||.||.||.||.||.||.|| ||Poly_GaussCoil || ||.||.||.||.||.||.||.||.||.|| ||!PringleModel || ||.||.||.||.||.||.||.||.||.|| ||!RaspBerryModel || ||.||.||.||.||.||.||.||.||.|| ||!ReflectivityModel || ||.||.||.||.||.||.||.||.||.|| ||ReflectivityIIModel || ||.||.||.||.||.||.||.||.||.|| ||RPA10Model || ||.||.||.||.||.||.||.||.||.|| ||SphericalSLDModel || ||.||.||.||.||.||.||.||.||.|| ||!SquareWellStructure ||squarewell ||.||.||.||.||.||.||.||.||.|| ||!UnifiedPowerRg || ||.||.||.||.||.||.||.||.||.|| ||sum_p1_p2 || ||.||.||.||.||.||.||.||.||.|| ||sum_Ap1_1_Ap2 || ||.||.||.||.||.||.||.||.||.|| ||polynomial5 || ||.||.||.||.||.||.||.||.||.|| ||sph_bessel_jn || ||.||.||.||.||.||.||.||.||.|| ||testmodel || ||.||.||.||.||.||.||.||.||.|| ||testmodel_2 || ||.||.||.||.||.||.||.||.||.||