Changes in / [d5e650d:d368d21] in sasmodels


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/convert.py

    r5054e80 r03582f9  
    1 """ 
    2 Convert models to and from sasview. 
    3 """ 
    4 import warnings 
    5  
    6 # List of models which SasView versions don't contain the explicit 'scale' argument. 
    7 # When converting such a model, please update this list. 
    8 MODELS_WITHOUT_SCALE = [ 
    9     'teubner_strey', 
    10     'broad_peak', 
    11     'two_lorentzian', 
    12     'gel_fit', 
    13     'gauss_lorentz_gel', 
    14     'be_polyelectrolyte', 
    15     'correlation_length', 
    16 ] 
    17  
    18 # List of models which SasView versions don't contain the explicit 'background' argument. 
    19 # When converting such a model, please update this list. 
    20 MODELS_WITHOUT_BACKGROUND = [ 
    21     'guinier', 
    22 ] 
    23  
    24 PD_DOT = [ 
    25     ("", ""), 
    26     ("_pd", ".width"), 
    27     ("_pd_n", ".npts"), 
    28     ("_pd_nsigma", ".nsigmas"), 
    29     ("_pd_type", ".type"), 
    30     ] 
    31 def _convert_pars(pars, mapping): 
    32     """ 
    33     Rename the parameters and any associated polydispersity attributes. 
    34     """ 
    35     newpars = pars.copy() 
    36     for new, old in mapping.items(): 
    37         if old == new: continue 
    38         for pd, dot in PD_DOT: 
    39             if old+dot in newpars: 
    40                 if new is not None: 
    41                     newpars[new+pd] = pars[old+dot] 
    42                 del newpars[old+dot] 
    43     return newpars 
    44  
    45 def _rescale_sld(pars): 
    46     """ 
    47     rescale all sld parameters in the new model definition by 1e6 so the 
    48     numbers are nicer.  Relies on the fact that all sld parameters in the 
    49     new model definition end with sld. 
    50     """ 
    51     return dict((p, (v*1e6 if p.endswith('sld') else v)) 
    52                 for p, v in pars.items()) 
    53  
    54 def convert_model(name, pars): 
    55     """ 
    56     Convert model from old style parameter names to new style. 
    57     """ 
    58     _, _ = name, pars # lint 
    59     raise NotImplementedError 
    60     # need to load all new models in order to determine old=>new 
    61     # model name mapping 
    62  
    63 def _unscale_sld(pars): 
    64     """ 
    65     rescale all sld parameters in the new model definition by 1e6 so the 
    66     numbers are nicer.  Relies on the fact that all sld parameters in the 
    67     new model definition end with sld. 
    68     """ 
    69     return dict((p, (v*1e-6 if p.endswith('sld') else v)) 
    70                 for p, v in pars.items()) 
    71  
    72 def _remove_pd(pars, key, name): 
    73     """ 
    74     Remove polydispersity from the parameter list. 
    75  
    76     Note: operates in place 
    77     """ 
    78     # Bumps style parameter names 
    79     pd = pars.pop(key+".width", 0.0) 
    80     pd_n = pars.pop(key+".npts", 0) 
    81     if pd != 0.0 and pd_n != 0: 
    82         warnings.warn("parameter %s not polydisperse in sasview %s"%(key, name)) 
    83     pars.pop(key+".nsigmas", None) 
    84     pars.pop(key+".type", None) 
    85     return pars 
    86  
    87 def _revert_pars(pars, mapping): 
    88     """ 
    89     Rename the parameters and any associated polydispersity attributes. 
    90     """ 
    91     newpars = pars.copy() 
    92  
    93     for new, old in mapping.items(): 
    94         for pd, dot in PD_DOT: 
    95             if old and old+pd == new+dot: 
    96                 continue 
    97             if new+pd in newpars: 
    98                 if old is not None: 
    99                     newpars[old+dot] = pars[new+pd] 
    100                 del newpars[new+pd] 
    101     for k in list(newpars.keys()): 
    102         for pd, dot in PD_DOT[1:]:  # skip "" => "" 
    103             if k.endswith(pd): 
    104                 newpars[k[:-len(pd)]+dot] = newpars[k] 
    105                 del newpars[k] 
    106     return newpars 
    107  
    108 def revert_model(model_definition, pars): 
    109     """ 
    110     Convert model from new style parameter names to old style. 
    111     """ 
    112     mapping = model_definition.oldpars 
    113     oldname = model_definition.oldname 
    114     oldpars = _revert_pars(_unscale_sld(pars), mapping) 
    115  
    116     # Note: update compare.constrain_pars to match 
    117     name = model_definition.name 
    118     if name in MODELS_WITHOUT_SCALE: 
    119         if oldpars.pop('scale', 1.0) != 1.0: 
    120             warnings.warn("parameter scale not used in sasview %s"%name) 
    121     elif name in MODELS_WITHOUT_BACKGROUND: 
    122         if oldpars.pop('background', 0.0) != 0.0: 
    123             warnings.warn("parameter background not used in sasview %s"%name) 
    124     elif getattr(model_definition, 'category', None) == 'structure-factor': 
    125         if oldpars.pop('scale', 1.0) != 1.0: 
    126             warnings.warn("parameter scale not used in sasview %s"%name) 
    127         if oldpars.pop('background', 0.0) != 0.0: 
    128             warnings.warn("parameter background not used in sasview %s"%name) 
    129     elif name == 'pearl_necklace': 
    130         _remove_pd(oldpars, 'num_pearls', name) 
    131         _remove_pd(oldpars, 'thick_string', name) 
    132     elif name == 'rpa': 
    133         # convert scattering lengths from femtometers to centimeters 
    134         for p in "La", "Lb", "Lc", "Ld": 
    135             if p in oldpars: oldpars[p] *= 1e-13 
    136  
    137     return oldname, oldpars 
    138  
    139 def constrain_new_to_old(model_definition, pars): 
    140     """ 
    141     Restrict parameter values to those that will match sasview. 
    142     """ 
    143     # Note: update convert.revert_model to match 
    144     name = model_definition.name 
    145     if name in MODELS_WITHOUT_SCALE: 
    146         pars['scale'] = 1 
    147     elif name in MODELS_WITHOUT_BACKGROUND: 
    148         pars['background'] = 0 
    149     elif name == 'pearl_necklace': 
    150         pars['string_thickness_pd_n'] = 0 
    151         pars['number_of_pearls_pd_n'] = 0 
    152     elif name == 'rpa': 
    153         pars['case_num'] = int(pars['case_num']) 
    154     elif getattr(model_definition, 'category', None) == 'structure-factor': 
    155         pars['scale'], pars['background'] = 1, 0 
    156  
     1 
     2 
     3 
     4 
     5<!DOCTYPE html> 
     6<html lang="en" class=" is-copy-enabled is-u2f-enabled"> 
     7  <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# object: http://ogp.me/ns/object# article: http://ogp.me/ns/article# profile: http://ogp.me/ns/profile#"> 
     8    <meta charset='utf-8'> 
     9 
     10    <link crossorigin="anonymous" href="https://assets-cdn.github.com/assets/github-e3dd2ae433414e240167f740f90ff2599e28804648787933de7c0183fae81c29.css" integrity="sha256-490q5DNBTiQBZ/dA+Q/yWZ4ogEZIeHkz3nwBg/roHCk=" media="all" rel="stylesheet" /> 
     11    <link crossorigin="anonymous" href="https://assets-cdn.github.com/assets/github2-fd8d48abb9063f51f186b0da98caa88d32b7ca8baecaa10d8a91c18a6f129b7f.css" integrity="sha256-/Y1Iq7kGP1HxhrDamMqojTK3youuyqENipHBim8Sm38=" media="all" rel="stylesheet" /> 
     12     
     13     
     14     
     15 
     16    <link as="script" href="https://assets-cdn.github.com/assets/frameworks-ee521b8e9facac68ff27e93fc3ae0f8ed811d7bf9e434e84f4b9ea227780b084.js" rel="preload" /> 
     17    <link as="script" href="https://assets-cdn.github.com/assets/github-696336964b7c42e4c6f4dfbaf1f8e57f425cd9a9d18a12f3fe6e3dd744fd7d13.js" rel="preload" /> 
     18 
     19    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
     20    <meta http-equiv="Content-Language" content="en"> 
     21    <meta name="viewport" content="width=1020"> 
     22     
     23     
     24    <title>sasmodels/convert.py at master · SasView/sasmodels · GitHub</title> 
     25    <link rel="search" type="application/opensearchdescription+xml" href="/opensearch.xml" title="GitHub"> 
     26    <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub"> 
     27    <link rel="apple-touch-icon" href="/apple-touch-icon.png"> 
     28    <link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-57x57.png"> 
     29    <link rel="apple-touch-icon" sizes="60x60" href="/apple-touch-icon-60x60.png"> 
     30    <link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-72x72.png"> 
     31    <link rel="apple-touch-icon" sizes="76x76" href="/apple-touch-icon-76x76.png"> 
     32    <link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icon-114x114.png"> 
     33    <link rel="apple-touch-icon" sizes="120x120" href="/apple-touch-icon-120x120.png"> 
     34    <link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon-144x144.png"> 
     35    <link rel="apple-touch-icon" sizes="152x152" href="/apple-touch-icon-152x152.png"> 
     36    <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon-180x180.png"> 
     37    <meta property="fb:app_id" content="1401488693436528"> 
     38 
     39      <meta content="https://avatars1.githubusercontent.com/u/10882470?v=3&amp;s=400" name="twitter:image:src" /><meta content="@github" name="twitter:site" /><meta content="summary" name="twitter:card" /><meta content="SasView/sasmodels" name="twitter:title" /><meta content="sasmodels - Package for calculation of small angle scattering models using OpenCL. Builds here: https://jenkins.esss.dk/sasview/view/Sasmodels-Builds/" name="twitter:description" /> 
     40      <meta content="https://avatars1.githubusercontent.com/u/10882470?v=3&amp;s=400" property="og:image" /><meta content="GitHub" property="og:site_name" /><meta content="object" property="og:type" /><meta content="SasView/sasmodels" property="og:title" /><meta content="https://github.com/SasView/sasmodels" property="og:url" /><meta content="sasmodels - Package for calculation of small angle scattering models using OpenCL. Builds here: https://jenkins.esss.dk/sasview/view/Sasmodels-Builds/" property="og:description" /> 
     41      <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats"> 
     42    <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors"> 
     43    <link rel="assets" href="https://assets-cdn.github.com/"> 
     44     
     45    <meta name="pjax-timeout" content="1000"> 
     46     
     47 
     48    <meta name="msapplication-TileImage" content="/windows-tile.png"> 
     49    <meta name="msapplication-TileColor" content="#ffffff"> 
     50    <meta name="selected-link" value="repo_source" data-pjax-transient> 
     51 
     52    <meta name="google-site-verification" content="KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU"> 
     53<meta name="google-site-verification" content="ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA"> 
     54    <meta name="google-analytics" content="UA-3769691-2"> 
     55 
     56<meta content="collector.githubapp.com" name="octolytics-host" /><meta content="github" name="octolytics-app-id" /><meta content="32FD15EB:517B:95519E0:56B61366" name="octolytics-dimension-request_id" /> 
     57<meta content="/&lt;user-name&gt;/&lt;repo-name&gt;/blob/show" data-pjax-transient="true" name="analytics-location" /> 
     58 
     59 
     60 
     61  <meta class="js-ga-set" name="dimension1" content="Logged Out"> 
     62 
     63 
     64 
     65        <meta name="hostname" content="github.com"> 
     66    <meta name="user-login" content=""> 
     67 
     68        <meta name="expected-hostname" content="github.com"> 
     69 
     70      <link rel="mask-icon" href="https://assets-cdn.github.com/pinned-octocat.svg" color="#4078c0"> 
     71      <link rel="icon" type="image/x-icon" href="https://assets-cdn.github.com/favicon.ico"> 
     72 
     73    <meta content="ed1699ee8f88e1fc0f2738f860d9b53cf2d34560" name="form-nonce" /> 
     74 
     75    <meta http-equiv="x-pjax-version" content="2330245d99bfcba85ea2b6d282c0cb53"> 
     76 
     77       
     78  <meta name="description" content="sasmodels - Package for calculation of small angle scattering models using OpenCL. Builds here: https://jenkins.esss.dk/sasview/view/Sasmodels-Builds/"> 
     79  <meta name="go-import" content="github.com/SasView/sasmodels git https://github.com/SasView/sasmodels.git"> 
     80 
     81  <meta content="10882470" name="octolytics-dimension-user_id" /><meta content="SasView" name="octolytics-dimension-user_login" /><meta content="30761174" name="octolytics-dimension-repository_id" /><meta content="SasView/sasmodels" name="octolytics-dimension-repository_nwo" /><meta content="true" name="octolytics-dimension-repository_public" /><meta content="false" name="octolytics-dimension-repository_is_fork" /><meta content="30761174" name="octolytics-dimension-repository_network_root_id" /><meta content="SasView/sasmodels" name="octolytics-dimension-repository_network_root_nwo" /> 
     82  <link href="https://github.com/SasView/sasmodels/commits/master.atom" rel="alternate" title="Recent Commits to sasmodels:master" type="application/atom+xml"> 
     83 
     84 
     85      <link rel="canonical" href="https://github.com/SasView/sasmodels/blob/master/sasmodels/convert.py" data-pjax-transient> 
     86  </head> 
     87 
     88 
     89  <body class="logged_out   env-production windows vis-public page-blob"> 
     90    <a href="#start-of-content" tabindex="1" class="accessibility-aid js-skip-to-content">Skip to content</a> 
     91 
     92     
     93     
     94     
     95 
     96 
     97 
     98       
     99      <div class="header header-logged-out" role="banner"> 
     100  <div class="container clearfix"> 
     101 
     102    <a class="header-logo-wordmark" href="https://github.com/" data-ga-click="(Logged out) Header, go to homepage, icon:logo-wordmark"> 
     103      <svg aria-hidden="true" class="octicon octicon-logo-github" height="28" role="img" version="1.1" viewBox="0 0 45 16" width="78"><path d="M8.64 5.19H4.88c-0.11 0-0.19 0.08-0.19 0.17v1.84c0 0.09 0.08 0.17 0.19 0.17h1.47v2.3s-0.33 0.11-1.25 0.11c-1.08 0-2.58-0.39-2.58-3.7s1.58-3.73 3.05-3.73c1.27 0 1.81 0.22 2.17 0.33 0.11 0.03 0.2-0.08 0.2-0.17l0.42-1.78c0-0.05-0.02-0.09-0.06-0.14-0.14-0.09-1.02-0.58-3.2-0.58C2.58 0 0 1.06 0 6.2s2.95 5.92 5.44 5.92c2.06 0 3.31-0.89 3.31-0.89 0.05-0.02 0.06-0.09 0.06-0.13V5.36c0-0.09-0.08-0.17-0.19-0.17h0.02zM27.7 0.44h-2.13c-0.09 0-0.17 0.08-0.17 0.17v4.09h-3.31V0.61c0-0.09-0.08-0.17-0.17-0.17h-2.13c-0.09 0-0.17 0.08-0.17 0.17v11.11c0 0.09 0.09 0.17 0.17 0.17h2.13c0.09 0 0.17-0.08 0.17-0.17V6.97h3.31l-0.02 4.75c0 0.09 0.08 0.17 0.17 0.17h2.13c0.09 0 0.17-0.08 0.17-0.17V0.61c0-0.09-0.08-0.17-0.17-0.17h0.02zM11.19 0.69c-0.77 0-1.38 0.61-1.38 1.38s0.61 1.38 1.38 1.38c0.75 0 1.36-0.61 1.36-1.38s-0.61-1.38-1.36-1.38z m1.22 3.55c0-0.09-0.08-0.17-0.17-0.17H10.11c-0.09 0-0.17 0.09-0.17 0.2 0 0 0 6.17 0 7.34 0 0.2 0.13 0.27 0.3 0.27 0 0 0.91 0 1.92 0 0.2 0 0.25-0.09 0.25-0.27 0-0.39 0-7.36 0-7.36v-0.02z m23.52-0.16h-2.09c-0.11 0-0.17 0.08-0.17 0.19v5.44s-0.55 0.39-1.3 0.39-0.97-0.34-0.97-1.09c0-0.73 0-4.75 0-4.75 0-0.09-0.08-0.17-0.17-0.17h-2.14c-0.09 0-0.17 0.08-0.17 0.17 0 0 0 2.91 0 5.11s1.23 2.75 2.92 2.75c1.39 0 2.52-0.77 2.52-0.77s0.05 0.39 0.08 0.45c0.02 0.05 0.09 0.09 0.16 0.09h1.34c0.11 0 0.17-0.08 0.17-0.17l0.02-7.47c0-0.09-0.08-0.17-0.19-0.17z m5.77-0.25c-1.2 0-2.02 0.53-2.02 0.53V0.59c0-0.09-0.08-0.17-0.17-0.17h-2.13c-0.09 0-0.17 0.08-0.17 0.17l-0.02 11.11c0 0.09 0.09 0.17 0.19 0.17h1.48c0.06 0 0.11-0.02 0.14-0.08 0.05-0.06 0.09-0.52 0.09-0.52s0.88 0.83 2.52 0.83c1.94 0 3.05-0.98 3.05-4.41s-1.77-3.88-2.97-3.88z m-0.83 6.27c-0.73-0.02-1.22-0.36-1.22-0.36V6.22s0.48-0.3 1.08-0.34c0.77-0.08 1.5 0.16 1.5 1.97 0 1.91-0.33 2.28-1.36 2.25z m-22.33-0.05c-0.09 0-0.33 0.05-0.58 0.05-0.78 0-1.05-0.36-1.05-0.83s0-3.13 0-3.13h1.59c0.09 0 0.16-0.08 0.16-0.19V4.25c0-0.09-0.08-0.17-0.16-0.17h-1.59V1.97c0-0.08-0.05-0.13-0.14-0.13H14.61c-0.09 0-0.14 0.05-0.14 0.13v2.17s-1.09 0.27-1.16 0.28c-0.08 0.02-0.13 0.09-0.13 0.17v1.36c0 0.11 0.08 0.19 0.17 0.19h1.11s0 1.44 0 3.28c0 2.44 1.7 2.69 2.86 2.69 0.53 0 1.17-0.17 1.27-0.22 0.06-0.02 0.09-0.09 0.09-0.16v-1.5c0-0.11-0.08-0.19-0.17-0.19h0.02z"></path></svg> 
     104    </a> 
     105 
     106    <div class="header-actions" role="navigation"> 
     107        <a class="btn btn-primary" href="/join?source=header-repo" data-ga-click="(Logged out) Header, clicked Sign up, text:sign-up">Sign up</a> 
     108      <a class="btn" href="/login?return_to=%2FSasView%2Fsasmodels%2Fblob%2Fmaster%2Fsasmodels%2Fconvert.py" data-ga-click="(Logged out) Header, clicked Sign in, text:sign-in">Sign in</a> 
     109    </div> 
     110 
     111    <div class="site-search repo-scope js-site-search" role="search"> 
     112      <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="/SasView/sasmodels/search" class="js-site-search-form" data-global-search-url="/search" data-repo-search-url="/SasView/sasmodels/search" method="get"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /></div> 
     113  <label class="js-chromeless-input-container form-control"> 
     114    <div class="scope-badge">This repository</div> 
     115    <input type="text" 
     116      class="js-site-search-focus js-site-search-field is-clearable chromeless-input" 
     117      data-hotkey="s" 
     118      name="q" 
     119      placeholder="Search" 
     120      aria-label="Search this repository" 
     121      data-global-scope-placeholder="Search GitHub" 
     122      data-repo-scope-placeholder="Search" 
     123      tabindex="1" 
     124      autocapitalize="off"> 
     125  </label> 
     126</form> 
     127    </div> 
     128 
     129      <ul class="header-nav left" role="navigation"> 
     130          <li class="header-nav-item"> 
     131            <a class="header-nav-link" href="/explore" data-ga-click="(Logged out) Header, go to explore, text:explore">Explore</a> 
     132          </li> 
     133          <li class="header-nav-item"> 
     134            <a class="header-nav-link" href="/features" data-ga-click="(Logged out) Header, go to features, text:features">Features</a> 
     135          </li> 
     136          <li class="header-nav-item"> 
     137            <a class="header-nav-link" href="https://enterprise.github.com/" data-ga-click="(Logged out) Header, go to enterprise, text:enterprise">Enterprise</a> 
     138          </li> 
     139          <li class="header-nav-item"> 
     140            <a class="header-nav-link" href="/pricing" data-ga-click="(Logged out) Header, go to pricing, text:pricing">Pricing</a> 
     141          </li> 
     142      </ul> 
     143 
     144  </div> 
     145</div> 
     146 
     147 
     148 
     149    <div id="start-of-content" class="accessibility-aid"></div> 
     150 
     151      <div id="js-flash-container"> 
     152</div> 
     153 
     154 
     155    <div role="main" class="main-content"> 
     156        <div itemscope itemtype="http://schema.org/WebPage"> 
     157    <div id="js-repo-pjax-container" class="context-loader-container js-repo-nav-next" data-pjax-container> 
     158       
     159<div class="pagehead repohead instapaper_ignore readability-menu experiment-repo-nav"> 
     160  <div class="container repohead-details-container"> 
     161 
     162     
     163 
     164<ul class="pagehead-actions"> 
     165 
     166  <li> 
     167      <a href="/login?return_to=%2FSasView%2Fsasmodels" 
     168    class="btn btn-sm btn-with-count tooltipped tooltipped-n" 
     169    aria-label="You must be signed in to watch a repository" rel="nofollow"> 
     170    <svg aria-hidden="true" class="octicon octicon-eye" height="16" role="img" version="1.1" viewBox="0 0 16 16" width="16"><path d="M8.06 2C3 2 0 8 0 8s3 6 8.06 6c4.94 0 7.94-6 7.94-6S13 2 8.06 2z m-0.06 10c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4z m2-4c0 1.11-0.89 2-2 2s-2-0.89-2-2 0.89-2 2-2 2 0.89 2 2z"></path></svg> 
     171    Watch 
     172  </a> 
     173  <a class="social-count" href="/SasView/sasmodels/watchers"> 
     174    16 
     175  </a> 
     176 
     177  </li> 
     178 
     179  <li> 
     180      <a href="/login?return_to=%2FSasView%2Fsasmodels" 
     181    class="btn btn-sm btn-with-count tooltipped tooltipped-n" 
     182    aria-label="You must be signed in to star a repository" rel="nofollow"> 
     183    <svg aria-hidden="true" class="octicon octicon-star" height="16" role="img" version="1.1" viewBox="0 0 14 16" width="14"><path d="M14 6l-4.9-0.64L7 1 4.9 5.36 0 6l3.6 3.26L2.67 14l4.33-2.33 4.33 2.33L10.4 9.26 14 6z"></path></svg> 
     184    Star 
     185  </a> 
     186 
     187    <a class="social-count js-social-count" href="/SasView/sasmodels/stargazers"> 
     188      0 
     189    </a> 
     190 
     191  </li> 
     192 
     193  <li> 
     194      <a href="/login?return_to=%2FSasView%2Fsasmodels" 
     195        class="btn btn-sm btn-with-count tooltipped tooltipped-n" 
     196        aria-label="You must be signed in to fork a repository" rel="nofollow"> 
     197        <svg aria-hidden="true" class="octicon octicon-repo-forked" height="16" role="img" version="1.1" viewBox="0 0 10 16" width="10"><path d="M8 1c-1.11 0-2 0.89-2 2 0 0.73 0.41 1.38 1 1.72v1.28L5 8 3 6v-1.28c0.59-0.34 1-0.98 1-1.72 0-1.11-0.89-2-2-2S0 1.89 0 3c0 0.73 0.41 1.38 1 1.72v1.78l3 3v1.78c-0.59 0.34-1 0.98-1 1.72 0 1.11 0.89 2 2 2s2-0.89 2-2c0-0.73-0.41-1.38-1-1.72V9.5l3-3V4.72c0.59-0.34 1-0.98 1-1.72 0-1.11-0.89-2-2-2zM2 4.2c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z m3 10c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z m3-10c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z"></path></svg> 
     198        Fork 
     199      </a> 
     200 
     201    <a href="/SasView/sasmodels/network" class="social-count"> 
     202      0 
     203    </a> 
     204  </li> 
     205</ul> 
     206 
     207    <h1 itemscope itemtype="http://data-vocabulary.org/Breadcrumb" class="entry-title public "> 
     208  <svg aria-hidden="true" class="octicon octicon-repo" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M4 9h-1v-1h1v1z m0-3h-1v1h1v-1z m0-2h-1v1h1v-1z m0-2h-1v1h1v-1z m8-1v12c0 0.55-0.45 1-1 1H6v2l-1.5-1.5-1.5 1.5V14H1c-0.55 0-1-0.45-1-1V1C0 0.45 0.45 0 1 0h10c0.55 0 1 0.45 1 1z m-1 10H1v2h2v-1h3v1h5V11z m0-10H2v9h9V1z"></path></svg> 
     209  <span class="author"><a href="/SasView" class="url fn" itemprop="url" rel="author"><span itemprop="title">SasView</span></a></span><!-- 
     210--><span class="path-divider">/</span><!-- 
     211--><strong><a href="/SasView/sasmodels" data-pjax="#js-repo-pjax-container">sasmodels</a></strong> 
     212 
     213  <span class="page-context-loader"> 
     214    <img alt="" height="16" src="https://assets-cdn.github.com/images/spinners/octocat-spinner-32.gif" width="16" /> 
     215  </span> 
     216 
     217</h1> 
     218 
     219  </div> 
     220  <div class="container"> 
     221     
     222<nav class="reponav js-repo-nav js-sidenav-container-pjax js-octicon-loaders" 
     223     role="navigation" 
     224     data-pjax="#js-repo-pjax-container"> 
     225 
     226  <a href="/SasView/sasmodels" aria-label="Code" aria-selected="true" class="js-selected-navigation-item selected reponav-item" data-hotkey="g c" data-selected-links="repo_source repo_downloads repo_commits repo_releases repo_tags repo_branches /SasView/sasmodels"> 
     227    <svg aria-hidden="true" class="octicon octicon-code" height="16" role="img" version="1.1" viewBox="0 0 14 16" width="14"><path d="M9.5 3l-1.5 1.5 3.5 3.5L8 11.5l1.5 1.5 4.5-5L9.5 3zM4.5 3L0 8l4.5 5 1.5-1.5L2.5 8l3.5-3.5L4.5 3z"></path></svg> 
     228    Code 
     229</a> 
     230 
     231  <a href="/SasView/sasmodels/pulls" class="js-selected-navigation-item reponav-item" data-hotkey="g p" data-selected-links="repo_pulls /SasView/sasmodels/pulls"> 
     232    <svg aria-hidden="true" class="octicon octicon-git-pull-request" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M11 11.28c0-1.73 0-6.28 0-6.28-0.03-0.78-0.34-1.47-0.94-2.06s-1.28-0.91-2.06-0.94c0 0-1.02 0-1 0V0L4 3l3 3V4h1c0.27 0.02 0.48 0.11 0.69 0.31s0.3 0.42 0.31 0.69v6.28c-0.59 0.34-1 0.98-1 1.72 0 1.11 0.89 2 2 2s2-0.89 2-2c0-0.73-0.41-1.38-1-1.72z m-1 2.92c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2zM4 3c0-1.11-0.89-2-2-2S0 1.89 0 3c0 0.73 0.41 1.38 1 1.72 0 1.55 0 5.56 0 6.56-0.59 0.34-1 0.98-1 1.72 0 1.11 0.89 2 2 2s2-0.89 2-2c0-0.73-0.41-1.38-1-1.72V4.72c0.59-0.34 1-0.98 1-1.72z m-0.8 10c0 0.66-0.55 1.2-1.2 1.2s-1.2-0.55-1.2-1.2 0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2z m-1.2-8.8c-0.66 0-1.2-0.55-1.2-1.2s0.55-1.2 1.2-1.2 1.2 0.55 1.2 1.2-0.55 1.2-1.2 1.2z"></path></svg> 
     233    Pull requests 
     234    <span class="counter">0</span> 
     235</a> 
     236 
     237  <a href="/SasView/sasmodels/pulse" class="js-selected-navigation-item reponav-item" data-selected-links="pulse /SasView/sasmodels/pulse"> 
     238    <svg aria-hidden="true" class="octicon octicon-pulse" height="16" role="img" version="1.1" viewBox="0 0 14 16" width="14"><path d="M11.5 8L8.8 5.4 6.6 8.5 5.5 1.6 2.38 8H0V10h3.6L4.5 8.2l0.9 5.4L9 8.5l1.6 1.5H14V8H11.5z"></path></svg> 
     239    Pulse 
     240</a> 
     241  <a href="/SasView/sasmodels/graphs" class="js-selected-navigation-item reponav-item" data-selected-links="repo_graphs repo_contributors /SasView/sasmodels/graphs"> 
     242    <svg aria-hidden="true" class="octicon octicon-graph" height="16" role="img" version="1.1" viewBox="0 0 16 16" width="16"><path d="M16 14v1H0V0h1v14h15z m-11-1H3V8h2v5z m4 0H7V3h2v10z m4 0H11V6h2v7z"></path></svg> 
     243    Graphs 
     244</a> 
     245 
     246</nav> 
     247 
     248  </div> 
     249</div> 
     250 
     251<div class="container new-discussion-timeline experiment-repo-nav"> 
     252  <div class="repository-content"> 
     253 
     254     
     255 
     256<a href="/SasView/sasmodels/blob/d5e650da432c58f8cd7c4d86e8ecb26828e17a21/sasmodels/convert.py" class="hidden js-permalink-shortcut" data-hotkey="y">Permalink</a> 
     257 
     258<!-- blob contrib key: blob_contributors:v21:db8856a43e364dee3a304855aa1d4b41 --> 
     259 
     260<div class="file-navigation js-zeroclipboard-container"> 
     261   
     262<div class="select-menu js-menu-container js-select-menu left"> 
     263  <button class="btn btn-sm select-menu-button js-menu-target css-truncate" data-hotkey="w" 
     264    title="master" 
     265    type="button" aria-label="Switch branches or tags" tabindex="0" aria-haspopup="true"> 
     266    <i>Branch:</i> 
     267    <span class="js-select-button css-truncate-target">master</span> 
     268  </button> 
     269 
     270  <div class="select-menu-modal-holder js-menu-content js-navigation-container" data-pjax aria-hidden="true"> 
     271 
     272    <div class="select-menu-modal"> 
     273      <div class="select-menu-header"> 
     274        <svg aria-label="Close" class="octicon octicon-x js-menu-close" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M7.48 8l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75-1.48-1.48 3.75-3.75L0.77 4.25l1.48-1.48 3.75 3.75 3.75-3.75 1.48 1.48-3.75 3.75z"></path></svg> 
     275        <span class="select-menu-title">Switch branches/tags</span> 
     276      </div> 
     277 
     278      <div class="select-menu-filters"> 
     279        <div class="select-menu-text-filter"> 
     280          <input type="text" aria-label="Filter branches/tags" id="context-commitish-filter-field" class="js-filterable-field js-navigation-enable" placeholder="Filter branches/tags"> 
     281        </div> 
     282        <div class="select-menu-tabs"> 
     283          <ul> 
     284            <li class="select-menu-tab"> 
     285              <a href="#" data-tab-filter="branches" data-filter-placeholder="Filter branches/tags" class="js-select-menu-tab" role="tab">Branches</a> 
     286            </li> 
     287            <li class="select-menu-tab"> 
     288              <a href="#" data-tab-filter="tags" data-filter-placeholder="Find a tag
" class="js-select-menu-tab" role="tab">Tags</a> 
     289            </li> 
     290          </ul> 
     291        </div> 
     292      </div> 
     293 
     294      <div class="select-menu-list select-menu-tab-bucket js-select-menu-tab-bucket" data-tab-filter="branches" role="menu"> 
     295 
     296        <div data-filterable-for="context-commitish-filter-field" data-filterable-type="substring"> 
     297 
     298 
     299            <a class="select-menu-item js-navigation-item js-navigation-open " 
     300               href="/SasView/sasmodels/blob/develop_ric/sasmodels/convert.py" 
     301               data-name="develop_ric" 
     302               data-skip-pjax="true" 
     303               rel="nofollow"> 
     304              <svg aria-hidden="true" class="octicon octicon-check select-menu-item-icon" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 5L4 13 0 9l1.5-1.5 2.5 2.5 6.5-6.5 1.5 1.5z"></path></svg> 
     305              <span class="select-menu-item-text css-truncate-target" title="develop_ric"> 
     306                develop_ric 
     307              </span> 
     308            </a> 
     309            <a class="select-menu-item js-navigation-item js-navigation-open " 
     310               href="/SasView/sasmodels/blob/gh-pages/sasmodels/convert.py" 
     311               data-name="gh-pages" 
     312               data-skip-pjax="true" 
     313               rel="nofollow"> 
     314              <svg aria-hidden="true" class="octicon octicon-check select-menu-item-icon" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 5L4 13 0 9l1.5-1.5 2.5 2.5 6.5-6.5 1.5 1.5z"></path></svg> 
     315              <span class="select-menu-item-text css-truncate-target" title="gh-pages"> 
     316                gh-pages 
     317              </span> 
     318            </a> 
     319            <a class="select-menu-item js-navigation-item js-navigation-open selected" 
     320               href="/SasView/sasmodels/blob/master/sasmodels/convert.py" 
     321               data-name="master" 
     322               data-skip-pjax="true" 
     323               rel="nofollow"> 
     324              <svg aria-hidden="true" class="octicon octicon-check select-menu-item-icon" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M12 5L4 13 0 9l1.5-1.5 2.5 2.5 6.5-6.5 1.5 1.5z"></path></svg> 
     325              <span class="select-menu-item-text css-truncate-target" title="master"> 
     326                master 
     327              </span> 
     328            </a> 
     329        </div> 
     330 
     331          <div class="select-menu-no-results">Nothing to show</div> 
     332      </div> 
     333 
     334      <div class="select-menu-list select-menu-tab-bucket js-select-menu-tab-bucket" data-tab-filter="tags"> 
     335        <div data-filterable-for="context-commitish-filter-field" data-filterable-type="substring"> 
     336 
     337 
     338        </div> 
     339 
     340        <div class="select-menu-no-results">Nothing to show</div> 
     341      </div> 
     342 
     343    </div> 
     344  </div> 
     345</div> 
     346 
     347  <div class="btn-group right"> 
     348    <a href="/SasView/sasmodels/find/master" 
     349          class="js-show-file-finder btn btn-sm" 
     350          data-pjax 
     351          data-hotkey="t"> 
     352      Find file 
     353    </a> 
     354    <button aria-label="Copy file path to clipboard" class="js-zeroclipboard btn btn-sm zeroclipboard-button tooltipped tooltipped-s" data-copied-hint="Copied!" type="button">Copy path</button> 
     355  </div> 
     356  <div class="breadcrumb js-zeroclipboard-target"> 
     357    <span class="repo-root js-repo-root"><span itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb"><a href="/SasView/sasmodels" class="" data-branch="master" data-pjax="true" itemscope="url"><span itemprop="title">sasmodels</span></a></span></span><span class="separator">/</span><span itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb"><a href="/SasView/sasmodels/tree/master/sasmodels" class="" data-branch="master" data-pjax="true" itemscope="url"><span itemprop="title">sasmodels</span></a></span><span class="separator">/</span><strong class="final-path">convert.py</strong> 
     358  </div> 
     359</div> 
     360 
     361<include-fragment class="commit-tease" src="/SasView/sasmodels/contributors/master/sasmodels/convert.py"> 
     362  <div> 
     363    Fetching contributors&hellip; 
     364  </div> 
     365 
     366  <div class="commit-tease-contributors"> 
     367    <img alt="" class="loader-loading left" height="16" src="https://assets-cdn.github.com/images/spinners/octocat-spinner-32-EAF2F5.gif" width="16" /> 
     368    <span class="loader-error">Cannot retrieve contributors at this time</span> 
     369  </div> 
     370</include-fragment> 
     371<div class="file"> 
     372  <div class="file-header"> 
     373  <div class="file-actions"> 
     374 
     375    <div class="btn-group"> 
     376      <a href="/SasView/sasmodels/raw/master/sasmodels/convert.py" class="btn btn-sm " id="raw-url">Raw</a> 
     377        <a href="/SasView/sasmodels/blame/master/sasmodels/convert.py" class="btn btn-sm js-update-url-with-hash">Blame</a> 
     378      <a href="/SasView/sasmodels/commits/master/sasmodels/convert.py" class="btn btn-sm " rel="nofollow">History</a> 
     379    </div> 
     380 
     381        <a class="btn-octicon tooltipped tooltipped-nw" 
     382           href="https://windows.github.com" 
     383           aria-label="Open this file in GitHub Desktop" 
     384           data-ga-click="Repository, open with desktop, type:windows"> 
     385            <svg aria-hidden="true" class="octicon octicon-device-desktop" height="16" role="img" version="1.1" viewBox="0 0 16 16" width="16"><path d="M15 2H1c-0.55 0-1 0.45-1 1v9c0 0.55 0.45 1 1 1h5.34c-0.25 0.61-0.86 1.39-2.34 2h8c-1.48-0.61-2.09-1.39-2.34-2h5.34c0.55 0 1-0.45 1-1V3c0-0.55-0.45-1-1-1z m0 9H1V3h14v8z"></path></svg> 
     386        </a> 
     387 
     388        <button type="button" class="btn-octicon disabled tooltipped tooltipped-nw" 
     389          aria-label="You must be signed in to make or propose changes"> 
     390          <svg aria-hidden="true" class="octicon octicon-pencil" height="16" role="img" version="1.1" viewBox="0 0 14 16" width="14"><path d="M0 12v3h3l8-8-3-3L0 12z m3 2H1V12h1v1h1v1z m10.3-9.3l-1.3 1.3-3-3 1.3-1.3c0.39-0.39 1.02-0.39 1.41 0l1.59 1.59c0.39 0.39 0.39 1.02 0 1.41z"></path></svg> 
     391        </button> 
     392        <button type="button" class="btn-octicon btn-octicon-danger disabled tooltipped tooltipped-nw" 
     393          aria-label="You must be signed in to make or propose changes"> 
     394          <svg aria-hidden="true" class="octicon octicon-trashcan" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M10 2H8c0-0.55-0.45-1-1-1H4c-0.55 0-1 0.45-1 1H1c-0.55 0-1 0.45-1 1v1c0 0.55 0.45 1 1 1v9c0 0.55 0.45 1 1 1h7c0.55 0 1-0.45 1-1V5c0.55 0 1-0.45 1-1v-1c0-0.55-0.45-1-1-1z m-1 12H2V5h1v8h1V5h1v8h1V5h1v8h1V5h1v9z m1-10H1v-1h9v1z"></path></svg> 
     395        </button> 
     396  </div> 
     397 
     398  <div class="file-info"> 
     399      157 lines (141 sloc) 
     400      <span class="file-info-divider"></span> 
     401    5.04 KB 
     402  </div> 
     403</div> 
     404 
     405   
     406 
     407  <div class="blob-wrapper data type-python"> 
     408      <table class="highlight tab-size js-file-line-container" data-tab-size="8"> 
     409      <tr> 
     410        <td id="L1" class="blob-num js-line-number" data-line-number="1"></td> 
     411        <td id="LC1" class="blob-code blob-code-inner js-file-line"><span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     412      </tr> 
     413      <tr> 
     414        <td id="L2" class="blob-num js-line-number" data-line-number="2"></td> 
     415        <td id="LC2" class="blob-code blob-code-inner js-file-line"><span class="pl-s">Convert models to and from sasview.</span></td> 
     416      </tr> 
     417      <tr> 
     418        <td id="L3" class="blob-num js-line-number" data-line-number="3"></td> 
     419        <td id="LC3" class="blob-code blob-code-inner js-file-line"><span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     420      </tr> 
     421      <tr> 
     422        <td id="L4" class="blob-num js-line-number" data-line-number="4"></td> 
     423        <td id="LC4" class="blob-code blob-code-inner js-file-line"><span class="pl-k">import</span> warnings</td> 
     424      </tr> 
     425      <tr> 
     426        <td id="L5" class="blob-num js-line-number" data-line-number="5"></td> 
     427        <td id="LC5" class="blob-code blob-code-inner js-file-line"> 
     428</td> 
     429      </tr> 
     430      <tr> 
     431        <td id="L6" class="blob-num js-line-number" data-line-number="6"></td> 
     432        <td id="LC6" class="blob-code blob-code-inner js-file-line"><span class="pl-c"># List of models which SasView versions don&#39;t contain the explicit &#39;scale&#39; argument.</span></td> 
     433      </tr> 
     434      <tr> 
     435        <td id="L7" class="blob-num js-line-number" data-line-number="7"></td> 
     436        <td id="LC7" class="blob-code blob-code-inner js-file-line"><span class="pl-c"># When converting such a model, please update this list.</span></td> 
     437      </tr> 
     438      <tr> 
     439        <td id="L8" class="blob-num js-line-number" data-line-number="8"></td> 
     440        <td id="LC8" class="blob-code blob-code-inner js-file-line"><span class="pl-c1">MODELS_WITHOUT_SCALE</span> <span class="pl-k">=</span> [</td> 
     441      </tr> 
     442      <tr> 
     443        <td id="L9" class="blob-num js-line-number" data-line-number="9"></td> 
     444        <td id="LC9" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>teubner_strey<span class="pl-pds">&#39;</span></span>,</td> 
     445      </tr> 
     446      <tr> 
     447        <td id="L10" class="blob-num js-line-number" data-line-number="10"></td> 
     448        <td id="LC10" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>broad_peak<span class="pl-pds">&#39;</span></span>,</td> 
     449      </tr> 
     450      <tr> 
     451        <td id="L11" class="blob-num js-line-number" data-line-number="11"></td> 
     452        <td id="LC11" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>two_lorentzian<span class="pl-pds">&#39;</span></span>,</td> 
     453      </tr> 
     454      <tr> 
     455        <td id="L12" class="blob-num js-line-number" data-line-number="12"></td> 
     456        <td id="LC12" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>gel_fit<span class="pl-pds">&#39;</span></span>,</td> 
     457      </tr> 
     458      <tr> 
     459        <td id="L13" class="blob-num js-line-number" data-line-number="13"></td> 
     460        <td id="LC13" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>gauss_lorentz_gel<span class="pl-pds">&#39;</span></span>,</td> 
     461      </tr> 
     462      <tr> 
     463        <td id="L14" class="blob-num js-line-number" data-line-number="14"></td> 
     464        <td id="LC14" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>be_polyelectrolyte<span class="pl-pds">&#39;</span></span>,</td> 
     465      </tr> 
     466      <tr> 
     467        <td id="L15" class="blob-num js-line-number" data-line-number="15"></td> 
     468        <td id="LC15" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>correlation_length<span class="pl-pds">&#39;</span></span>,</td> 
     469      </tr> 
     470      <tr> 
     471        <td id="L16" class="blob-num js-line-number" data-line-number="16"></td> 
     472        <td id="LC16" class="blob-code blob-code-inner js-file-line">]</td> 
     473      </tr> 
     474      <tr> 
     475        <td id="L17" class="blob-num js-line-number" data-line-number="17"></td> 
     476        <td id="LC17" class="blob-code blob-code-inner js-file-line"> 
     477</td> 
     478      </tr> 
     479      <tr> 
     480        <td id="L18" class="blob-num js-line-number" data-line-number="18"></td> 
     481        <td id="LC18" class="blob-code blob-code-inner js-file-line"><span class="pl-c"># List of models which SasView versions don&#39;t contain the explicit &#39;background&#39; argument.</span></td> 
     482      </tr> 
     483      <tr> 
     484        <td id="L19" class="blob-num js-line-number" data-line-number="19"></td> 
     485        <td id="LC19" class="blob-code blob-code-inner js-file-line"><span class="pl-c"># When converting such a model, please update this list.</span></td> 
     486      </tr> 
     487      <tr> 
     488        <td id="L20" class="blob-num js-line-number" data-line-number="20"></td> 
     489        <td id="LC20" class="blob-code blob-code-inner js-file-line"><span class="pl-c1">MODELS_WITHOUT_BACKGROUND</span> <span class="pl-k">=</span> [</td> 
     490      </tr> 
     491      <tr> 
     492        <td id="L21" class="blob-num js-line-number" data-line-number="21"></td> 
     493        <td id="LC21" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&#39;</span>guinier<span class="pl-pds">&#39;</span></span>,</td> 
     494      </tr> 
     495      <tr> 
     496        <td id="L22" class="blob-num js-line-number" data-line-number="22"></td> 
     497        <td id="LC22" class="blob-code blob-code-inner js-file-line">]</td> 
     498      </tr> 
     499      <tr> 
     500        <td id="L23" class="blob-num js-line-number" data-line-number="23"></td> 
     501        <td id="LC23" class="blob-code blob-code-inner js-file-line"> 
     502</td> 
     503      </tr> 
     504      <tr> 
     505        <td id="L24" class="blob-num js-line-number" data-line-number="24"></td> 
     506        <td id="LC24" class="blob-code blob-code-inner js-file-line"><span class="pl-c1">PD_DOT</span> <span class="pl-k">=</span> [</td> 
     507      </tr> 
     508      <tr> 
     509        <td id="L25" class="blob-num js-line-number" data-line-number="25"></td> 
     510        <td id="LC25" class="blob-code blob-code-inner js-file-line">    (<span class="pl-s"><span class="pl-pds">&quot;</span><span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span><span class="pl-pds">&quot;</span></span>),</td> 
     511      </tr> 
     512      <tr> 
     513        <td id="L26" class="blob-num js-line-number" data-line-number="26"></td> 
     514        <td id="LC26" class="blob-code blob-code-inner js-file-line">    (<span class="pl-s"><span class="pl-pds">&quot;</span>_pd<span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span>.width<span class="pl-pds">&quot;</span></span>),</td> 
     515      </tr> 
     516      <tr> 
     517        <td id="L27" class="blob-num js-line-number" data-line-number="27"></td> 
     518        <td id="LC27" class="blob-code blob-code-inner js-file-line">    (<span class="pl-s"><span class="pl-pds">&quot;</span>_pd_n<span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span>.npts<span class="pl-pds">&quot;</span></span>),</td> 
     519      </tr> 
     520      <tr> 
     521        <td id="L28" class="blob-num js-line-number" data-line-number="28"></td> 
     522        <td id="LC28" class="blob-code blob-code-inner js-file-line">    (<span class="pl-s"><span class="pl-pds">&quot;</span>_pd_nsigma<span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span>.nsigmas<span class="pl-pds">&quot;</span></span>),</td> 
     523      </tr> 
     524      <tr> 
     525        <td id="L29" class="blob-num js-line-number" data-line-number="29"></td> 
     526        <td id="LC29" class="blob-code blob-code-inner js-file-line">    (<span class="pl-s"><span class="pl-pds">&quot;</span>_pd_type<span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span>.type<span class="pl-pds">&quot;</span></span>),</td> 
     527      </tr> 
     528      <tr> 
     529        <td id="L30" class="blob-num js-line-number" data-line-number="30"></td> 
     530        <td id="LC30" class="blob-code blob-code-inner js-file-line">    ]</td> 
     531      </tr> 
     532      <tr> 
     533        <td id="L31" class="blob-num js-line-number" data-line-number="31"></td> 
     534        <td id="LC31" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">_convert_pars</span>(<span class="pl-smi">pars</span>, <span class="pl-smi">mapping</span>):</td> 
     535      </tr> 
     536      <tr> 
     537        <td id="L32" class="blob-num js-line-number" data-line-number="32"></td> 
     538        <td id="LC32" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     539      </tr> 
     540      <tr> 
     541        <td id="L33" class="blob-num js-line-number" data-line-number="33"></td> 
     542        <td id="LC33" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    Rename the parameters and any associated polydispersity attributes.</span></td> 
     543      </tr> 
     544      <tr> 
     545        <td id="L34" class="blob-num js-line-number" data-line-number="34"></td> 
     546        <td id="LC34" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     547      </tr> 
     548      <tr> 
     549        <td id="L35" class="blob-num js-line-number" data-line-number="35"></td> 
     550        <td id="LC35" class="blob-code blob-code-inner js-file-line">    newpars <span class="pl-k">=</span> pars.copy()</td> 
     551      </tr> 
     552      <tr> 
     553        <td id="L36" class="blob-num js-line-number" data-line-number="36"></td> 
     554        <td id="LC36" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">for</span> new, old <span class="pl-k">in</span> mapping.items():</td> 
     555      </tr> 
     556      <tr> 
     557        <td id="L37" class="blob-num js-line-number" data-line-number="37"></td> 
     558        <td id="LC37" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">if</span> old <span class="pl-k">==</span> new: <span class="pl-k">continue</span></td> 
     559      </tr> 
     560      <tr> 
     561        <td id="L38" class="blob-num js-line-number" data-line-number="38"></td> 
     562        <td id="LC38" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">for</span> pd, dot <span class="pl-k">in</span> <span class="pl-c1">PD_DOT</span>:</td> 
     563      </tr> 
     564      <tr> 
     565        <td id="L39" class="blob-num js-line-number" data-line-number="39"></td> 
     566        <td id="LC39" class="blob-code blob-code-inner js-file-line">            <span class="pl-k">if</span> old<span class="pl-k">+</span>dot <span class="pl-k">in</span> newpars:</td> 
     567      </tr> 
     568      <tr> 
     569        <td id="L40" class="blob-num js-line-number" data-line-number="40"></td> 
     570        <td id="LC40" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">if</span> new <span class="pl-k">is</span> <span class="pl-k">not</span> <span class="pl-c1">None</span>:</td> 
     571      </tr> 
     572      <tr> 
     573        <td id="L41" class="blob-num js-line-number" data-line-number="41"></td> 
     574        <td id="LC41" class="blob-code blob-code-inner js-file-line">                    newpars[new<span class="pl-k">+</span>pd] <span class="pl-k">=</span> pars[old<span class="pl-k">+</span>dot]</td> 
     575      </tr> 
     576      <tr> 
     577        <td id="L42" class="blob-num js-line-number" data-line-number="42"></td> 
     578        <td id="LC42" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">del</span> newpars[old<span class="pl-k">+</span>dot]</td> 
     579      </tr> 
     580      <tr> 
     581        <td id="L43" class="blob-num js-line-number" data-line-number="43"></td> 
     582        <td id="LC43" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">return</span> newpars</td> 
     583      </tr> 
     584      <tr> 
     585        <td id="L44" class="blob-num js-line-number" data-line-number="44"></td> 
     586        <td id="LC44" class="blob-code blob-code-inner js-file-line"> 
     587</td> 
     588      </tr> 
     589      <tr> 
     590        <td id="L45" class="blob-num js-line-number" data-line-number="45"></td> 
     591        <td id="LC45" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">_rescale_sld</span>(<span class="pl-smi">pars</span>):</td> 
     592      </tr> 
     593      <tr> 
     594        <td id="L46" class="blob-num js-line-number" data-line-number="46"></td> 
     595        <td id="LC46" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     596      </tr> 
     597      <tr> 
     598        <td id="L47" class="blob-num js-line-number" data-line-number="47"></td> 
     599        <td id="LC47" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    rescale all sld parameters in the new model definition by 1e6 so the</span></td> 
     600      </tr> 
     601      <tr> 
     602        <td id="L48" class="blob-num js-line-number" data-line-number="48"></td> 
     603        <td id="LC48" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    numbers are nicer.  Relies on the fact that all sld parameters in the</span></td> 
     604      </tr> 
     605      <tr> 
     606        <td id="L49" class="blob-num js-line-number" data-line-number="49"></td> 
     607        <td id="LC49" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    new model definition end with sld.</span></td> 
     608      </tr> 
     609      <tr> 
     610        <td id="L50" class="blob-num js-line-number" data-line-number="50"></td> 
     611        <td id="LC50" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     612      </tr> 
     613      <tr> 
     614        <td id="L51" class="blob-num js-line-number" data-line-number="51"></td> 
     615        <td id="LC51" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">return</span> <span class="pl-c1">dict</span>((p, (v<span class="pl-k">*</span><span class="pl-c1">1e6</span> <span class="pl-k">if</span> p.endswith(<span class="pl-s"><span class="pl-pds">&#39;</span>sld<span class="pl-pds">&#39;</span></span>) <span class="pl-k">else</span> v))</td> 
     616      </tr> 
     617      <tr> 
     618        <td id="L52" class="blob-num js-line-number" data-line-number="52"></td> 
     619        <td id="LC52" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">for</span> p, v <span class="pl-k">in</span> pars.items())</td> 
     620      </tr> 
     621      <tr> 
     622        <td id="L53" class="blob-num js-line-number" data-line-number="53"></td> 
     623        <td id="LC53" class="blob-code blob-code-inner js-file-line"> 
     624</td> 
     625      </tr> 
     626      <tr> 
     627        <td id="L54" class="blob-num js-line-number" data-line-number="54"></td> 
     628        <td id="LC54" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">convert_model</span>(<span class="pl-smi">name</span>, <span class="pl-smi">pars</span>):</td> 
     629      </tr> 
     630      <tr> 
     631        <td id="L55" class="blob-num js-line-number" data-line-number="55"></td> 
     632        <td id="LC55" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     633      </tr> 
     634      <tr> 
     635        <td id="L56" class="blob-num js-line-number" data-line-number="56"></td> 
     636        <td id="LC56" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    Convert model from old style parameter names to new style.</span></td> 
     637      </tr> 
     638      <tr> 
     639        <td id="L57" class="blob-num js-line-number" data-line-number="57"></td> 
     640        <td id="LC57" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     641      </tr> 
     642      <tr> 
     643        <td id="L58" class="blob-num js-line-number" data-line-number="58"></td> 
     644        <td id="LC58" class="blob-code blob-code-inner js-file-line">    _, _ <span class="pl-k">=</span> name, pars <span class="pl-c"># lint</span></td> 
     645      </tr> 
     646      <tr> 
     647        <td id="L59" class="blob-num js-line-number" data-line-number="59"></td> 
     648        <td id="LC59" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">raise</span> <span class="pl-c1">NotImplementedError</span></td> 
     649      </tr> 
     650      <tr> 
     651        <td id="L60" class="blob-num js-line-number" data-line-number="60"></td> 
     652        <td id="LC60" class="blob-code blob-code-inner js-file-line">    <span class="pl-c"># need to load all new models in order to determine old=&gt;new</span></td> 
     653      </tr> 
     654      <tr> 
     655        <td id="L61" class="blob-num js-line-number" data-line-number="61"></td> 
     656        <td id="LC61" class="blob-code blob-code-inner js-file-line">    <span class="pl-c"># model name mapping</span></td> 
     657      </tr> 
     658      <tr> 
     659        <td id="L62" class="blob-num js-line-number" data-line-number="62"></td> 
     660        <td id="LC62" class="blob-code blob-code-inner js-file-line"> 
     661</td> 
     662      </tr> 
     663      <tr> 
     664        <td id="L63" class="blob-num js-line-number" data-line-number="63"></td> 
     665        <td id="LC63" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">_unscale_sld</span>(<span class="pl-smi">pars</span>):</td> 
     666      </tr> 
     667      <tr> 
     668        <td id="L64" class="blob-num js-line-number" data-line-number="64"></td> 
     669        <td id="LC64" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     670      </tr> 
     671      <tr> 
     672        <td id="L65" class="blob-num js-line-number" data-line-number="65"></td> 
     673        <td id="LC65" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    rescale all sld parameters in the new model definition by 1e6 so the</span></td> 
     674      </tr> 
     675      <tr> 
     676        <td id="L66" class="blob-num js-line-number" data-line-number="66"></td> 
     677        <td id="LC66" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    numbers are nicer.  Relies on the fact that all sld parameters in the</span></td> 
     678      </tr> 
     679      <tr> 
     680        <td id="L67" class="blob-num js-line-number" data-line-number="67"></td> 
     681        <td id="LC67" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    new model definition end with sld.</span></td> 
     682      </tr> 
     683      <tr> 
     684        <td id="L68" class="blob-num js-line-number" data-line-number="68"></td> 
     685        <td id="LC68" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     686      </tr> 
     687      <tr> 
     688        <td id="L69" class="blob-num js-line-number" data-line-number="69"></td> 
     689        <td id="LC69" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">return</span> <span class="pl-c1">dict</span>((p, (v<span class="pl-k">*</span><span class="pl-c1">1e-6</span> <span class="pl-k">if</span> p.endswith(<span class="pl-s"><span class="pl-pds">&#39;</span>sld<span class="pl-pds">&#39;</span></span>) <span class="pl-k">else</span> v))</td> 
     690      </tr> 
     691      <tr> 
     692        <td id="L70" class="blob-num js-line-number" data-line-number="70"></td> 
     693        <td id="LC70" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">for</span> p, v <span class="pl-k">in</span> pars.items())</td> 
     694      </tr> 
     695      <tr> 
     696        <td id="L71" class="blob-num js-line-number" data-line-number="71"></td> 
     697        <td id="LC71" class="blob-code blob-code-inner js-file-line"> 
     698</td> 
     699      </tr> 
     700      <tr> 
     701        <td id="L72" class="blob-num js-line-number" data-line-number="72"></td> 
     702        <td id="LC72" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">_remove_pd</span>(<span class="pl-smi">pars</span>, <span class="pl-smi">key</span>, <span class="pl-smi">name</span>):</td> 
     703      </tr> 
     704      <tr> 
     705        <td id="L73" class="blob-num js-line-number" data-line-number="73"></td> 
     706        <td id="LC73" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     707      </tr> 
     708      <tr> 
     709        <td id="L74" class="blob-num js-line-number" data-line-number="74"></td> 
     710        <td id="LC74" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    Remove polydispersity from the parameter list.</span></td> 
     711      </tr> 
     712      <tr> 
     713        <td id="L75" class="blob-num js-line-number" data-line-number="75"></td> 
     714        <td id="LC75" class="blob-code blob-code-inner js-file-line"><span class="pl-s"></span></td> 
     715      </tr> 
     716      <tr> 
     717        <td id="L76" class="blob-num js-line-number" data-line-number="76"></td> 
     718        <td id="LC76" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    Note: operates in place</span></td> 
     719      </tr> 
     720      <tr> 
     721        <td id="L77" class="blob-num js-line-number" data-line-number="77"></td> 
     722        <td id="LC77" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     723      </tr> 
     724      <tr> 
     725        <td id="L78" class="blob-num js-line-number" data-line-number="78"></td> 
     726        <td id="LC78" class="blob-code blob-code-inner js-file-line">    <span class="pl-c"># Bumps style parameter names</span></td> 
     727      </tr> 
     728      <tr> 
     729        <td id="L79" class="blob-num js-line-number" data-line-number="79"></td> 
     730        <td id="LC79" class="blob-code blob-code-inner js-file-line">    pd <span class="pl-k">=</span> pars.pop(key<span class="pl-k">+</span><span class="pl-s"><span class="pl-pds">&quot;</span>.width<span class="pl-pds">&quot;</span></span>, <span class="pl-c1">0.0</span>)</td> 
     731      </tr> 
     732      <tr> 
     733        <td id="L80" class="blob-num js-line-number" data-line-number="80"></td> 
     734        <td id="LC80" class="blob-code blob-code-inner js-file-line">    pd_n <span class="pl-k">=</span> pars.pop(key<span class="pl-k">+</span><span class="pl-s"><span class="pl-pds">&quot;</span>.npts<span class="pl-pds">&quot;</span></span>, <span class="pl-c1">0</span>)</td> 
     735      </tr> 
     736      <tr> 
     737        <td id="L81" class="blob-num js-line-number" data-line-number="81"></td> 
     738        <td id="LC81" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">if</span> pd <span class="pl-k">!=</span> <span class="pl-c1">0.0</span> <span class="pl-k">and</span> pd_n <span class="pl-k">!=</span> <span class="pl-c1">0</span>:</td> 
     739      </tr> 
     740      <tr> 
     741        <td id="L82" class="blob-num js-line-number" data-line-number="82"></td> 
     742        <td id="LC82" class="blob-code blob-code-inner js-file-line">        warnings.warn(<span class="pl-s"><span class="pl-pds">&quot;</span>parameter <span class="pl-c1">%s</span> not polydisperse in sasview <span class="pl-c1">%s</span><span class="pl-pds">&quot;</span></span><span class="pl-k">%</span>(key, name))</td> 
     743      </tr> 
     744      <tr> 
     745        <td id="L83" class="blob-num js-line-number" data-line-number="83"></td> 
     746        <td id="LC83" class="blob-code blob-code-inner js-file-line">    pars.pop(key<span class="pl-k">+</span><span class="pl-s"><span class="pl-pds">&quot;</span>.nsigmas<span class="pl-pds">&quot;</span></span>, <span class="pl-c1">None</span>)</td> 
     747      </tr> 
     748      <tr> 
     749        <td id="L84" class="blob-num js-line-number" data-line-number="84"></td> 
     750        <td id="LC84" class="blob-code blob-code-inner js-file-line">    pars.pop(key<span class="pl-k">+</span><span class="pl-s"><span class="pl-pds">&quot;</span>.type<span class="pl-pds">&quot;</span></span>, <span class="pl-c1">None</span>)</td> 
     751      </tr> 
     752      <tr> 
     753        <td id="L85" class="blob-num js-line-number" data-line-number="85"></td> 
     754        <td id="LC85" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">return</span> pars</td> 
     755      </tr> 
     756      <tr> 
     757        <td id="L86" class="blob-num js-line-number" data-line-number="86"></td> 
     758        <td id="LC86" class="blob-code blob-code-inner js-file-line"> 
     759</td> 
     760      </tr> 
     761      <tr> 
     762        <td id="L87" class="blob-num js-line-number" data-line-number="87"></td> 
     763        <td id="LC87" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">_revert_pars</span>(<span class="pl-smi">pars</span>, <span class="pl-smi">mapping</span>):</td> 
     764      </tr> 
     765      <tr> 
     766        <td id="L88" class="blob-num js-line-number" data-line-number="88"></td> 
     767        <td id="LC88" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     768      </tr> 
     769      <tr> 
     770        <td id="L89" class="blob-num js-line-number" data-line-number="89"></td> 
     771        <td id="LC89" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    Rename the parameters and any associated polydispersity attributes.</span></td> 
     772      </tr> 
     773      <tr> 
     774        <td id="L90" class="blob-num js-line-number" data-line-number="90"></td> 
     775        <td id="LC90" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     776      </tr> 
     777      <tr> 
     778        <td id="L91" class="blob-num js-line-number" data-line-number="91"></td> 
     779        <td id="LC91" class="blob-code blob-code-inner js-file-line">    newpars <span class="pl-k">=</span> pars.copy()</td> 
     780      </tr> 
     781      <tr> 
     782        <td id="L92" class="blob-num js-line-number" data-line-number="92"></td> 
     783        <td id="LC92" class="blob-code blob-code-inner js-file-line"> 
     784</td> 
     785      </tr> 
     786      <tr> 
     787        <td id="L93" class="blob-num js-line-number" data-line-number="93"></td> 
     788        <td id="LC93" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">for</span> new, old <span class="pl-k">in</span> mapping.items():</td> 
     789      </tr> 
     790      <tr> 
     791        <td id="L94" class="blob-num js-line-number" data-line-number="94"></td> 
     792        <td id="LC94" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">for</span> pd, dot <span class="pl-k">in</span> <span class="pl-c1">PD_DOT</span>:</td> 
     793      </tr> 
     794      <tr> 
     795        <td id="L95" class="blob-num js-line-number" data-line-number="95"></td> 
     796        <td id="LC95" class="blob-code blob-code-inner js-file-line">            <span class="pl-k">if</span> old <span class="pl-k">and</span> old<span class="pl-k">+</span>pd <span class="pl-k">==</span> new<span class="pl-k">+</span>dot:</td> 
     797      </tr> 
     798      <tr> 
     799        <td id="L96" class="blob-num js-line-number" data-line-number="96"></td> 
     800        <td id="LC96" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">continue</span></td> 
     801      </tr> 
     802      <tr> 
     803        <td id="L97" class="blob-num js-line-number" data-line-number="97"></td> 
     804        <td id="LC97" class="blob-code blob-code-inner js-file-line">            <span class="pl-k">if</span> new<span class="pl-k">+</span>pd <span class="pl-k">in</span> newpars:</td> 
     805      </tr> 
     806      <tr> 
     807        <td id="L98" class="blob-num js-line-number" data-line-number="98"></td> 
     808        <td id="LC98" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">if</span> old <span class="pl-k">is</span> <span class="pl-k">not</span> <span class="pl-c1">None</span>:</td> 
     809      </tr> 
     810      <tr> 
     811        <td id="L99" class="blob-num js-line-number" data-line-number="99"></td> 
     812        <td id="LC99" class="blob-code blob-code-inner js-file-line">                    newpars[old<span class="pl-k">+</span>dot] <span class="pl-k">=</span> pars[new<span class="pl-k">+</span>pd]</td> 
     813      </tr> 
     814      <tr> 
     815        <td id="L100" class="blob-num js-line-number" data-line-number="100"></td> 
     816        <td id="LC100" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">del</span> newpars[new<span class="pl-k">+</span>pd]</td> 
     817      </tr> 
     818      <tr> 
     819        <td id="L101" class="blob-num js-line-number" data-line-number="101"></td> 
     820        <td id="LC101" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">for</span> k <span class="pl-k">in</span> <span class="pl-c1">list</span>(newpars.keys()):</td> 
     821      </tr> 
     822      <tr> 
     823        <td id="L102" class="blob-num js-line-number" data-line-number="102"></td> 
     824        <td id="LC102" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">for</span> pd, dot <span class="pl-k">in</span> <span class="pl-c1">PD_DOT</span>[<span class="pl-c1">1</span>:]:  <span class="pl-c"># skip &quot;&quot; =&gt; &quot;&quot;</span></td> 
     825      </tr> 
     826      <tr> 
     827        <td id="L103" class="blob-num js-line-number" data-line-number="103"></td> 
     828        <td id="LC103" class="blob-code blob-code-inner js-file-line">            <span class="pl-k">if</span> k.endswith(pd):</td> 
     829      </tr> 
     830      <tr> 
     831        <td id="L104" class="blob-num js-line-number" data-line-number="104"></td> 
     832        <td id="LC104" class="blob-code blob-code-inner js-file-line">                newpars[k[:<span class="pl-k">-</span><span class="pl-c1">len</span>(pd)]<span class="pl-k">+</span>dot] <span class="pl-k">=</span> newpars[k]</td> 
     833      </tr> 
     834      <tr> 
     835        <td id="L105" class="blob-num js-line-number" data-line-number="105"></td> 
     836        <td id="LC105" class="blob-code blob-code-inner js-file-line">                <span class="pl-k">del</span> newpars[k]</td> 
     837      </tr> 
     838      <tr> 
     839        <td id="L106" class="blob-num js-line-number" data-line-number="106"></td> 
     840        <td id="LC106" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">return</span> newpars</td> 
     841      </tr> 
     842      <tr> 
     843        <td id="L107" class="blob-num js-line-number" data-line-number="107"></td> 
     844        <td id="LC107" class="blob-code blob-code-inner js-file-line"> 
     845</td> 
     846      </tr> 
     847      <tr> 
     848        <td id="L108" class="blob-num js-line-number" data-line-number="108"></td> 
     849        <td id="LC108" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">revert_model</span>(<span class="pl-smi">model_definition</span>, <span class="pl-smi">pars</span>):</td> 
     850      </tr> 
     851      <tr> 
     852        <td id="L109" class="blob-num js-line-number" data-line-number="109"></td> 
     853        <td id="LC109" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     854      </tr> 
     855      <tr> 
     856        <td id="L110" class="blob-num js-line-number" data-line-number="110"></td> 
     857        <td id="LC110" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    Convert model from new style parameter names to old style.</span></td> 
     858      </tr> 
     859      <tr> 
     860        <td id="L111" class="blob-num js-line-number" data-line-number="111"></td> 
     861        <td id="LC111" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     862      </tr> 
     863      <tr> 
     864        <td id="L112" class="blob-num js-line-number" data-line-number="112"></td> 
     865        <td id="LC112" class="blob-code blob-code-inner js-file-line">    mapping <span class="pl-k">=</span> model_definition.oldpars</td> 
     866      </tr> 
     867      <tr> 
     868        <td id="L113" class="blob-num js-line-number" data-line-number="113"></td> 
     869        <td id="LC113" class="blob-code blob-code-inner js-file-line">    oldname <span class="pl-k">=</span> model_definition.oldname</td> 
     870      </tr> 
     871      <tr> 
     872        <td id="L114" class="blob-num js-line-number" data-line-number="114"></td> 
     873        <td id="LC114" class="blob-code blob-code-inner js-file-line">    oldpars <span class="pl-k">=</span> _revert_pars(_unscale_sld(pars), mapping)</td> 
     874      </tr> 
     875      <tr> 
     876        <td id="L115" class="blob-num js-line-number" data-line-number="115"></td> 
     877        <td id="LC115" class="blob-code blob-code-inner js-file-line"> 
     878</td> 
     879      </tr> 
     880      <tr> 
     881        <td id="L116" class="blob-num js-line-number" data-line-number="116"></td> 
     882        <td id="LC116" class="blob-code blob-code-inner js-file-line">    <span class="pl-c"># Note: update compare.constrain_pars to match</span></td> 
     883      </tr> 
     884      <tr> 
     885        <td id="L117" class="blob-num js-line-number" data-line-number="117"></td> 
     886        <td id="LC117" class="blob-code blob-code-inner js-file-line">    name <span class="pl-k">=</span> model_definition.name</td> 
     887      </tr> 
     888      <tr> 
     889        <td id="L118" class="blob-num js-line-number" data-line-number="118"></td> 
     890        <td id="LC118" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">if</span> name <span class="pl-k">in</span> <span class="pl-c1">MODELS_WITHOUT_SCALE</span>:</td> 
     891      </tr> 
     892      <tr> 
     893        <td id="L119" class="blob-num js-line-number" data-line-number="119"></td> 
     894        <td id="LC119" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">if</span> oldpars.pop(<span class="pl-s"><span class="pl-pds">&#39;</span>scale<span class="pl-pds">&#39;</span></span>, <span class="pl-c1">1.0</span>) <span class="pl-k">!=</span> <span class="pl-c1">1.0</span>:</td> 
     895      </tr> 
     896      <tr> 
     897        <td id="L120" class="blob-num js-line-number" data-line-number="120"></td> 
     898        <td id="LC120" class="blob-code blob-code-inner js-file-line">            warnings.warn(<span class="pl-s"><span class="pl-pds">&quot;</span>parameter scale not used in sasview <span class="pl-c1">%s</span><span class="pl-pds">&quot;</span></span><span class="pl-k">%</span>name)</td> 
     899      </tr> 
     900      <tr> 
     901        <td id="L121" class="blob-num js-line-number" data-line-number="121"></td> 
     902        <td id="LC121" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> name <span class="pl-k">in</span> <span class="pl-c1">MODELS_WITHOUT_BACKGROUND</span>:</td> 
     903      </tr> 
     904      <tr> 
     905        <td id="L122" class="blob-num js-line-number" data-line-number="122"></td> 
     906        <td id="LC122" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">if</span> oldpars.pop(<span class="pl-s"><span class="pl-pds">&#39;</span>background<span class="pl-pds">&#39;</span></span>, <span class="pl-c1">0.0</span>) <span class="pl-k">!=</span> <span class="pl-c1">0.0</span>:</td> 
     907      </tr> 
     908      <tr> 
     909        <td id="L123" class="blob-num js-line-number" data-line-number="123"></td> 
     910        <td id="LC123" class="blob-code blob-code-inner js-file-line">            warnings.warn(<span class="pl-s"><span class="pl-pds">&quot;</span>parameter background not used in sasview <span class="pl-c1">%s</span><span class="pl-pds">&quot;</span></span><span class="pl-k">%</span>name)</td> 
     911      </tr> 
     912      <tr> 
     913        <td id="L124" class="blob-num js-line-number" data-line-number="124"></td> 
     914        <td id="LC124" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> <span class="pl-c1">getattr</span>(model_definition, <span class="pl-s"><span class="pl-pds">&#39;</span>category<span class="pl-pds">&#39;</span></span>, <span class="pl-c1">None</span>) <span class="pl-k">==</span> <span class="pl-s"><span class="pl-pds">&#39;</span>structure-factor<span class="pl-pds">&#39;</span></span>:</td> 
     915      </tr> 
     916      <tr> 
     917        <td id="L125" class="blob-num js-line-number" data-line-number="125"></td> 
     918        <td id="LC125" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">if</span> oldpars.pop(<span class="pl-s"><span class="pl-pds">&#39;</span>scale<span class="pl-pds">&#39;</span></span>, <span class="pl-c1">1.0</span>) <span class="pl-k">!=</span> <span class="pl-c1">1.0</span>:</td> 
     919      </tr> 
     920      <tr> 
     921        <td id="L126" class="blob-num js-line-number" data-line-number="126"></td> 
     922        <td id="LC126" class="blob-code blob-code-inner js-file-line">            warnings.warn(<span class="pl-s"><span class="pl-pds">&quot;</span>parameter scale not used in sasview <span class="pl-c1">%s</span><span class="pl-pds">&quot;</span></span><span class="pl-k">%</span>name)</td> 
     923      </tr> 
     924      <tr> 
     925        <td id="L127" class="blob-num js-line-number" data-line-number="127"></td> 
     926        <td id="LC127" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">if</span> oldpars.pop(<span class="pl-s"><span class="pl-pds">&#39;</span>background<span class="pl-pds">&#39;</span></span>, <span class="pl-c1">0.0</span>) <span class="pl-k">!=</span> <span class="pl-c1">0.0</span>:</td> 
     927      </tr> 
     928      <tr> 
     929        <td id="L128" class="blob-num js-line-number" data-line-number="128"></td> 
     930        <td id="LC128" class="blob-code blob-code-inner js-file-line">            warnings.warn(<span class="pl-s"><span class="pl-pds">&quot;</span>parameter background not used in sasview <span class="pl-c1">%s</span><span class="pl-pds">&quot;</span></span><span class="pl-k">%</span>name)</td> 
     931      </tr> 
     932      <tr> 
     933        <td id="L129" class="blob-num js-line-number" data-line-number="129"></td> 
     934        <td id="LC129" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> name <span class="pl-k">==</span> <span class="pl-s"><span class="pl-pds">&#39;</span>pearl_necklace<span class="pl-pds">&#39;</span></span>:</td> 
     935      </tr> 
     936      <tr> 
     937        <td id="L130" class="blob-num js-line-number" data-line-number="130"></td> 
     938        <td id="LC130" class="blob-code blob-code-inner js-file-line">        _remove_pd(oldpars, <span class="pl-s"><span class="pl-pds">&#39;</span>num_pearls<span class="pl-pds">&#39;</span></span>, name)</td> 
     939      </tr> 
     940      <tr> 
     941        <td id="L131" class="blob-num js-line-number" data-line-number="131"></td> 
     942        <td id="LC131" class="blob-code blob-code-inner js-file-line">        _remove_pd(oldpars, <span class="pl-s"><span class="pl-pds">&#39;</span>thick_string<span class="pl-pds">&#39;</span></span>, name)</td> 
     943      </tr> 
     944      <tr> 
     945        <td id="L132" class="blob-num js-line-number" data-line-number="132"></td> 
     946        <td id="LC132" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> name <span class="pl-k">==</span> <span class="pl-s"><span class="pl-pds">&#39;</span>rpa<span class="pl-pds">&#39;</span></span>:</td> 
     947      </tr> 
     948      <tr> 
     949        <td id="L133" class="blob-num js-line-number" data-line-number="133"></td> 
     950        <td id="LC133" class="blob-code blob-code-inner js-file-line">        <span class="pl-c"># convert scattering lengths from femtometers to centimeters</span></td> 
     951      </tr> 
     952      <tr> 
     953        <td id="L134" class="blob-num js-line-number" data-line-number="134"></td> 
     954        <td id="LC134" class="blob-code blob-code-inner js-file-line">        <span class="pl-k">for</span> p <span class="pl-k">in</span> <span class="pl-s"><span class="pl-pds">&quot;</span>La<span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span>Lb<span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span>Lc<span class="pl-pds">&quot;</span></span>, <span class="pl-s"><span class="pl-pds">&quot;</span>Ld<span class="pl-pds">&quot;</span></span>:</td> 
     955      </tr> 
     956      <tr> 
     957        <td id="L135" class="blob-num js-line-number" data-line-number="135"></td> 
     958        <td id="LC135" class="blob-code blob-code-inner js-file-line">            <span class="pl-k">if</span> p <span class="pl-k">in</span> oldpars: oldpars[p] <span class="pl-k">*=</span> <span class="pl-c1">1e-13</span></td> 
     959      </tr> 
     960      <tr> 
     961        <td id="L136" class="blob-num js-line-number" data-line-number="136"></td> 
     962        <td id="LC136" class="blob-code blob-code-inner js-file-line"> 
     963</td> 
     964      </tr> 
     965      <tr> 
     966        <td id="L137" class="blob-num js-line-number" data-line-number="137"></td> 
     967        <td id="LC137" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">return</span> oldname, oldpars</td> 
     968      </tr> 
     969      <tr> 
     970        <td id="L138" class="blob-num js-line-number" data-line-number="138"></td> 
     971        <td id="LC138" class="blob-code blob-code-inner js-file-line"> 
     972</td> 
     973      </tr> 
     974      <tr> 
     975        <td id="L139" class="blob-num js-line-number" data-line-number="139"></td> 
     976        <td id="LC139" class="blob-code blob-code-inner js-file-line"><span class="pl-k">def</span> <span class="pl-en">constrain_new_to_old</span>(<span class="pl-smi">model_definition</span>, <span class="pl-smi">pars</span>):</td> 
     977      </tr> 
     978      <tr> 
     979        <td id="L140" class="blob-num js-line-number" data-line-number="140"></td> 
     980        <td id="LC140" class="blob-code blob-code-inner js-file-line">    <span class="pl-s"><span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     981      </tr> 
     982      <tr> 
     983        <td id="L141" class="blob-num js-line-number" data-line-number="141"></td> 
     984        <td id="LC141" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    Restrict parameter values to those that will match sasview.</span></td> 
     985      </tr> 
     986      <tr> 
     987        <td id="L142" class="blob-num js-line-number" data-line-number="142"></td> 
     988        <td id="LC142" class="blob-code blob-code-inner js-file-line"><span class="pl-s">    <span class="pl-pds">&quot;&quot;&quot;</span></span></td> 
     989      </tr> 
     990      <tr> 
     991        <td id="L143" class="blob-num js-line-number" data-line-number="143"></td> 
     992        <td id="LC143" class="blob-code blob-code-inner js-file-line">    <span class="pl-c"># Note: update convert.revert_model to match</span></td> 
     993      </tr> 
     994      <tr> 
     995        <td id="L144" class="blob-num js-line-number" data-line-number="144"></td> 
     996        <td id="LC144" class="blob-code blob-code-inner js-file-line">    name <span class="pl-k">=</span> model_definition.name</td> 
     997      </tr> 
     998      <tr> 
     999        <td id="L145" class="blob-num js-line-number" data-line-number="145"></td> 
     1000        <td id="LC145" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">if</span> name <span class="pl-k">in</span> <span class="pl-c1">MODELS_WITHOUT_SCALE</span>:</td> 
     1001      </tr> 
     1002      <tr> 
     1003        <td id="L146" class="blob-num js-line-number" data-line-number="146"></td> 
     1004        <td id="LC146" class="blob-code blob-code-inner js-file-line">        pars[<span class="pl-s"><span class="pl-pds">&#39;</span>scale<span class="pl-pds">&#39;</span></span>] <span class="pl-k">=</span> <span class="pl-c1">1</span></td> 
     1005      </tr> 
     1006      <tr> 
     1007        <td id="L147" class="blob-num js-line-number" data-line-number="147"></td> 
     1008        <td id="LC147" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> name <span class="pl-k">in</span> <span class="pl-c1">MODELS_WITHOUT_BACKGROUND</span>:</td> 
     1009      </tr> 
     1010      <tr> 
     1011        <td id="L148" class="blob-num js-line-number" data-line-number="148"></td> 
     1012        <td id="LC148" class="blob-code blob-code-inner js-file-line">        pars[<span class="pl-s"><span class="pl-pds">&#39;</span>background<span class="pl-pds">&#39;</span></span>] <span class="pl-k">=</span> <span class="pl-c1">0</span></td> 
     1013      </tr> 
     1014      <tr> 
     1015        <td id="L149" class="blob-num js-line-number" data-line-number="149"></td> 
     1016        <td id="LC149" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> name <span class="pl-k">==</span> <span class="pl-s"><span class="pl-pds">&#39;</span>pearl_necklace<span class="pl-pds">&#39;</span></span>:</td> 
     1017      </tr> 
     1018      <tr> 
     1019        <td id="L150" class="blob-num js-line-number" data-line-number="150"></td> 
     1020        <td id="LC150" class="blob-code blob-code-inner js-file-line">        pars[<span class="pl-s"><span class="pl-pds">&#39;</span>string_thickness_pd_n<span class="pl-pds">&#39;</span></span>] <span class="pl-k">=</span> <span class="pl-c1">0</span></td> 
     1021      </tr> 
     1022      <tr> 
     1023        <td id="L151" class="blob-num js-line-number" data-line-number="151"></td> 
     1024        <td id="LC151" class="blob-code blob-code-inner js-file-line">        pars[<span class="pl-s"><span class="pl-pds">&#39;</span>number_of_pearls_pd_n<span class="pl-pds">&#39;</span></span>] <span class="pl-k">=</span> <span class="pl-c1">0</span></td> 
     1025      </tr> 
     1026      <tr> 
     1027        <td id="L152" class="blob-num js-line-number" data-line-number="152"></td> 
     1028        <td id="LC152" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> name <span class="pl-k">==</span> <span class="pl-s"><span class="pl-pds">&#39;</span>rpa<span class="pl-pds">&#39;</span></span>:</td> 
     1029      </tr> 
     1030      <tr> 
     1031        <td id="L153" class="blob-num js-line-number" data-line-number="153"></td> 
     1032        <td id="LC153" class="blob-code blob-code-inner js-file-line">        pars[<span class="pl-s"><span class="pl-pds">&#39;</span>case_num<span class="pl-pds">&#39;</span></span>] <span class="pl-k">=</span> <span class="pl-c1">int</span>(pars[<span class="pl-s"><span class="pl-pds">&#39;</span>case_num<span class="pl-pds">&#39;</span></span>])</td> 
     1033      </tr> 
     1034      <tr> 
     1035        <td id="L154" class="blob-num js-line-number" data-line-number="154"></td> 
     1036        <td id="LC154" class="blob-code blob-code-inner js-file-line">    <span class="pl-k">elif</span> <span class="pl-c1">getattr</span>(model_definition, <span class="pl-s"><span class="pl-pds">&#39;</span>category<span class="pl-pds">&#39;</span></span>, <span class="pl-c1">None</span>) <span class="pl-k">==</span> <span class="pl-s"><span class="pl-pds">&#39;</span>structure-factor<span class="pl-pds">&#39;</span></span>:</td> 
     1037      </tr> 
     1038      <tr> 
     1039        <td id="L155" class="blob-num js-line-number" data-line-number="155"></td> 
     1040        <td id="LC155" class="blob-code blob-code-inner js-file-line">        pars[<span class="pl-s"><span class="pl-pds">&#39;</span>scale<span class="pl-pds">&#39;</span></span>], pars[<span class="pl-s"><span class="pl-pds">&#39;</span>background<span class="pl-pds">&#39;</span></span>] <span class="pl-k">=</span> <span class="pl-c1">1</span>, <span class="pl-c1">0</span></td> 
     1041      </tr> 
     1042      <tr> 
     1043        <td id="L156" class="blob-num js-line-number" data-line-number="156"></td> 
     1044        <td id="LC156" class="blob-code blob-code-inner js-file-line"> 
     1045</td> 
     1046      </tr> 
     1047</table> 
     1048 
     1049  </div> 
     1050 
     1051</div> 
     1052 
     1053<a href="#jump-to-line" rel="facebox[.linejump]" data-hotkey="l" style="display:none">Jump to Line</a> 
     1054<div id="jump-to-line" style="display:none"> 
     1055  <!-- </textarea> --><!-- '"` --><form accept-charset="UTF-8" action="" class="js-jump-to-line-form" method="get"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713;" /></div> 
     1056    <input class="linejump-input js-jump-to-line-field" type="text" placeholder="Jump to line&hellip;" aria-label="Jump to line" autofocus> 
     1057    <button type="submit" class="btn">Go</button> 
     1058</form></div> 
     1059 
     1060  </div> 
     1061  <div class="modal-backdrop"></div> 
     1062</div> 
     1063 
     1064    </div> 
     1065  </div> 
     1066 
     1067    </div> 
     1068 
     1069        <div class="container"> 
     1070  <div class="site-footer" role="contentinfo"> 
     1071    <ul class="site-footer-links right"> 
     1072        <li><a href="https://status.github.com/" data-ga-click="Footer, go to status, text:status">Status</a></li> 
     1073      <li><a href="https://developer.github.com" data-ga-click="Footer, go to api, text:api">API</a></li> 
     1074      <li><a href="https://training.github.com" data-ga-click="Footer, go to training, text:training">Training</a></li> 
     1075      <li><a href="https://shop.github.com" data-ga-click="Footer, go to shop, text:shop">Shop</a></li> 
     1076        <li><a href="https://github.com/blog" data-ga-click="Footer, go to blog, text:blog">Blog</a></li> 
     1077        <li><a href="https://github.com/about" data-ga-click="Footer, go to about, text:about">About</a></li> 
     1078        <li><a href="https://github.com/pricing" data-ga-click="Footer, go to pricing, text:pricing">Pricing</a></li> 
     1079 
     1080    </ul> 
     1081 
     1082    <a href="https://github.com" aria-label="Homepage"> 
     1083      <svg aria-hidden="true" class="octicon octicon-mark-github" height="24" role="img" title="GitHub " version="1.1" viewBox="0 0 16 16" width="24"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59 0.4 0.07 0.55-0.17 0.55-0.38 0-0.19-0.01-0.82-0.01-1.49-2.01 0.37-2.53-0.49-2.69-0.94-0.09-0.23-0.48-0.94-0.82-1.13-0.28-0.15-0.68-0.52-0.01-0.53 0.63-0.01 1.08 0.58 1.23 0.82 0.72 1.21 1.87 0.87 2.33 0.66 0.07-0.52 0.28-0.87 0.51-1.07-1.78-0.2-3.64-0.89-3.64-3.95 0-0.87 0.31-1.59 0.82-2.15-0.08-0.2-0.36-1.02 0.08-2.12 0 0 0.67-0.21 2.2 0.82 0.64-0.18 1.32-0.27 2-0.27 0.68 0 1.36 0.09 2 0.27 1.53-1.04 2.2-0.82 2.2-0.82 0.44 1.1 0.16 1.92 0.08 2.12 0.51 0.56 0.82 1.27 0.82 2.15 0 3.07-1.87 3.75-3.65 3.95 0.29 0.25 0.54 0.73 0.54 1.48 0 1.07-0.01 1.93-0.01 2.2 0 0.21 0.15 0.46 0.55 0.38C13.71 14.53 16 11.53 16 8 16 3.58 12.42 0 8 0z"></path></svg> 
     1084</a> 
     1085    <ul class="site-footer-links"> 
     1086      <li>&copy; 2016 <span title="0.05637s from github-fe127-cp1-prd.iad.github.net">GitHub</span>, Inc.</li> 
     1087        <li><a href="https://github.com/site/terms" data-ga-click="Footer, go to terms, text:terms">Terms</a></li> 
     1088        <li><a href="https://github.com/site/privacy" data-ga-click="Footer, go to privacy, text:privacy">Privacy</a></li> 
     1089        <li><a href="https://github.com/security" data-ga-click="Footer, go to security, text:security">Security</a></li> 
     1090        <li><a href="https://github.com/contact" data-ga-click="Footer, go to contact, text:contact">Contact</a></li> 
     1091        <li><a href="https://help.github.com" data-ga-click="Footer, go to help, text:help">Help</a></li> 
     1092    </ul> 
     1093  </div> 
     1094</div> 
     1095 
     1096 
     1097 
     1098     
     1099     
     1100     
     1101 
     1102    <div id="ajax-error-message" class="flash flash-error"> 
     1103      <svg aria-hidden="true" class="octicon octicon-alert" height="16" role="img" version="1.1" viewBox="0 0 16 16" width="16"><path d="M15.72 12.5l-6.85-11.98C8.69 0.21 8.36 0.02 8 0.02s-0.69 0.19-0.87 0.5l-6.85 11.98c-0.18 0.31-0.18 0.69 0 1C0.47 13.81 0.8 14 1.15 14h13.7c0.36 0 0.69-0.19 0.86-0.5S15.89 12.81 15.72 12.5zM9 12H7V10h2V12zM9 9H7V5h2V9z"></path></svg> 
     1104      <button type="button" class="flash-close js-flash-close js-ajax-error-dismiss" aria-label="Dismiss error"> 
     1105        <svg aria-hidden="true" class="octicon octicon-x" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M7.48 8l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75-1.48-1.48 3.75-3.75L0.77 4.25l1.48-1.48 3.75 3.75 3.75-3.75 1.48 1.48-3.75 3.75z"></path></svg> 
     1106      </button> 
     1107      Something went wrong with that request. Please try again. 
     1108    </div> 
     1109 
     1110 
     1111       
     1112      <script crossorigin="anonymous" integrity="sha256-7lIbjp+srGj/J+k/w64PjtgR17+eQ06E9LnqIneAsIQ=" src="https://assets-cdn.github.com/assets/frameworks-ee521b8e9facac68ff27e93fc3ae0f8ed811d7bf9e434e84f4b9ea227780b084.js"></script> 
     1113      <script async="async" crossorigin="anonymous" integrity="sha256-aWM2lkt8QuTG9N+68fjlf0Jc2anRihLz/m4910T9fRM=" src="https://assets-cdn.github.com/assets/github-696336964b7c42e4c6f4dfbaf1f8e57f425cd9a9d18a12f3fe6e3dd744fd7d13.js"></script> 
     1114       
     1115       
     1116       
     1117    <div class="js-stale-session-flash stale-session-flash flash flash-warn flash-banner hidden"> 
     1118      <svg aria-hidden="true" class="octicon octicon-alert" height="16" role="img" version="1.1" viewBox="0 0 16 16" width="16"><path d="M15.72 12.5l-6.85-11.98C8.69 0.21 8.36 0.02 8 0.02s-0.69 0.19-0.87 0.5l-6.85 11.98c-0.18 0.31-0.18 0.69 0 1C0.47 13.81 0.8 14 1.15 14h13.7c0.36 0 0.69-0.19 0.86-0.5S15.89 12.81 15.72 12.5zM9 12H7V10h2V12zM9 9H7V5h2V9z"></path></svg> 
     1119      <span class="signed-in-tab-flash">You signed in with another tab or window. <a href="">Reload</a> to refresh your session.</span> 
     1120      <span class="signed-out-tab-flash">You signed out in another tab or window. <a href="">Reload</a> to refresh your session.</span> 
     1121    </div> 
     1122    <div class="facebox" id="facebox" style="display:none;"> 
     1123  <div class="facebox-popup"> 
     1124    <div class="facebox-content" role="dialog" aria-labelledby="facebox-header" aria-describedby="facebox-description"> 
     1125    </div> 
     1126    <button type="button" class="facebox-close js-facebox-close" aria-label="Close modal"> 
     1127      <svg aria-hidden="true" class="octicon octicon-x" height="16" role="img" version="1.1" viewBox="0 0 12 16" width="12"><path d="M7.48 8l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75-1.48-1.48 3.75-3.75L0.77 4.25l1.48-1.48 3.75 3.75 3.75-3.75 1.48 1.48-3.75 3.75z"></path></svg> 
     1128    </button> 
     1129  </div> 
     1130</div> 
     1131 
     1132  </body> 
     1133</html> 
     1134 
Note: See TracChangeset for help on using the changeset viewer.