= 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 (Y = compliant / . = status pending):''' ||=!SasView name=||=sasmodels name=||= short_desc =||= param_table =||= long_desc =||= definition =||= formula =||= param_desc =||= plot =||= ref =||= attribution =||=Assigned=|| ||HayterMSAStructure ||hayter_msa ||Y||Y||Y||Y||n/a||Y||.||Y||n/a||RKH|| ||!BarBellModel ||barbell ||.||.||.||.||.||.||.||.||.||.|| ||BCCrystalModel ||bcc ||.||.||.||.||.||.||.||.||.||.|| ||BEPolyelectrolyte ||be_polyelectrolyte ||.||.||.||.||.||.||.||.||.||.|| ||!BroadPeakModel ||broad_peak ||.||.||.||.||.||.||.||.||.||.|| ||!CappedCylinderModel ||capped_cylinder ||.||.||.||.||.||.||.||.||.||.|RKH| ||!CoreShellBicelleModel ||core_shell_bicelle ||.||.||.||.||.||.||.||.||.||.|| ||!CoreShellCylinderModel ||core_shell_cylinder||Y||Y||Y||Y||n/a||Y||.||Y||n/a||RKH|| ||!CoreShellEllipsoidModel||core_shell_ellipsoid||Y||Y||Y||Y||Y||Y||.||Y||n/a||RKH|| ||CoreShellEllipsoidXTModel||core_shell_ellipsoid_xt||Y||Y||Y||Y||Y||Y||.||Y||n/a||RKH|| ||!CoreShellModel ||core_shell_sphere ||.||.||.||.||.||.||.||.||.||.|| ||!CorrLength ||correlation_length ||.||.||.||.||.||.||.||.||.||.|| ||CSParallelepipedModel ||core_shell_parallelepiped||.||.||.||.||.||.||.||.||.||.|| ||!CylinderModel ||cylinder ||Y||Y||Y||Y||n/a||Y||.||n/a||n/a||RKH|| ||DABModel ||dab ||.||.||.||.||.||.||.||.||.||.|| ||!EllipsoidModel ||ellipsoid ||.||.||.||.||.||.||.||.||.||.|| ||!EllipticalCylinderModel ||elliptical_cylinder||.||.||.||.||.||.||.||.||.||.|RKH| ||FCCrystalModel ||fcc ||.||.||.||.||.||.||.||.||.||.|| ||!FlexibleCylinderModel ||flexible_cylinder ||.||.||.||.||.||.||.||.||.||.|RKH| ||FlexCylEllipXModel ||flexible_cylinder_ex||.||.||.||.||.||.||.||.||.||.|RKH| ||!FractalCoreShell ||fractal_core_shell ||.||.||.||.||.||.||.||.||.||.|| ||!FuzzySphereModel ||fuzzy_sphere ||.||.||.||.||.||.||.||.||.||.|| ||!PeakGaussModel ||gaussian_peak ||.||.||.||.||.||.||.||.||.||.|| ||!GaussLorentzGel ||gauss_lorentz_gel ||.||.||.||.||.||.||.||.||.||.|| ||!GelFitModel ||gel_fit ||.||.||.||.||.||.||.||.||.||.|| ||Guinier ||guinier ||.||.||.||.||.||.||.||.||.||.|| ||!GuinierPorod ||guinier_porod ||.||.||.||.||.||.||.||.||.||.|| ||!HardsphereStructure ||hardsphere ||Y||Y||Y||Y||n/a||Y||.||Y||n/a||RKH|| ||!HollowCylinderModel ||hollow_cylinder ||Y||Y||Y||Y||n/a||Y||.||Y||n/a||RKH|| ||!LamellarModel ||lamellar ||Y||Y||Y||Y||Y||Y||.||Y||n/a||RKH|| ||LamellarPSModel ||lamellar_stack_caille ||Y||Y||Y||Y||Y||Y||.||Y||n/a||RKH|| ||LamellarPSHGModel ||lamellar_hg_stack_caille ||Y||Y||Y||Y||Y||Y||.||Y||n/a||RKH|| ||LamellarFFHGModel ||lamellar_hg ||Y||Y||Y||Y||Y||Y||.||Y||n/a||RKH|| ||LamellarPCrystallModel ||lamellar_stack_paracrystal ||Y||Y||Y||Y||Y||Y||.||Y||n/a||RKH|| ||!LineModel ||line ||Y||Y||Y||Y||Y||Y||Y||n/a||n/a||RKH|| ||!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 ||Y||Y||Y||Y||n/a||Y||.||Y||n/a||RKH|| ||!SurfaceFractalModel ||surface_fractal ||.||.||.||.||.||.||.||.||.||.|| ||!TeubnerStrey ||teubner_strey ||.||.||.||.||.||.||.||.||.||.|| ||!TriaxialEllipsoidModel ||triaxial_ellipsoid ||.||.||.||.||.||.||.||.||.||.|| ||!TwoLorentzian ||two_lorentzian ||.||.||.||.||.||.||.||.||.||.|| ||!TwoPowerLaw ||two_power_law ||.||.||.||.||.||.||.||.||.||.|| ||!VesicleModel ||vesicle ||.||.||.||.||.||.||.||.||.||PDB|| ||BinaryHSModel ||binary_hard_sphere ||Y||Y||Y||Y||Y||Y||Y||Y||Y||PDB|| ||Core2ndMomentModel ||adsorbed_layer ||Y||Y||Y||Y||Y||Y||Y||Y||Y||SMK|| ||!CoreMultiShellModel || ||.||.||.||.||.||.||.||.||.||.|| ||Debye ||mono_gauss_coil ||Y||Y||Y||Y||Y||Y||Y||Y||Y||SMK|| ||!FractalModel || ||.||.||.||.||.||.||.||.||.||.|| ||!MultiplicationModel || ||.||.||.||.||.|| ||.||.||.||.|| ||!OnionExpShellModel || ||.||.||.||.||.||.||.||.||.||.|| ||Poly_GaussCoil ||poly_gauss_coil ||Y||Y||Y||Y||Y||Y||Y||Y||Y||SMK|| ||!PringleModel || ||.||.||.||.||.||.||.||.||.||.|| ||!RaspBerryModel || ||.||.||.||.||.||.||.||.||.||.|| ||!ReflectivityModel || ||.||.||.||.||.||.||.||.||.||.|| ||ReflectivityIIModel || ||.||.||.||.||.||.||.||.||.||.|| ||RPA10Model || ||.||.||.||.||.||.||.||.||.||.|| ||SphericalSLDModel || ||.||.||.||.||.||.||.||.||.||.|| ||!SquareWellStructure ||squarewell ||Y||Y||Y||Y||n/a||Y||.||Y||n/a||RKH|| ||!UnifiedPowerRg || ||.||.||.||.||.||.||.||.||.||.|| ||sum_p1_p2 || ||.||.||.||.||.||.||.||.||.||.|| ||sum_Ap1_1_Ap2 || ||.||.||.||.||.||.||.||.||.||.|| ||polynomial5 || ||.||.||.||.||.||.||.||.||.||.|| ||sph_bessel_jn || ||.||.||.||.||.||.||.||.||.||.|| ||testmodel || ||.||.||.||.||.||.||.||.||.||.|| ||testmodel_2 || ||.||.||.||.||.||.||.||.||.||.||