Changes in sasmodels/product.py [b297ba9:8795b6f] in sasmodels


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • sasmodels/product.py

    rb297ba9 r8795b6f  
    3131# pylint: enable=unused-import 
    3232 
    33 # TODO: make estimates available to constraints 
     33# TODO: make shape averages available to constraints 
    3434#ESTIMATED_PARAMETERS = [ 
    35 #    ["est_radius_effective", "A", 0.0, [0, np.inf], "", "Estimated effective radius"], 
    36 #    ["est_volume_ratio", "", 1.0, [0, np.inf], "", "Estimated volume ratio"], 
     35#    ["mean_radius_effective", "A", 0.0, [0, np.inf], "", "mean effective radius"], 
     36#    ["mean_volume", "A", 0.0, [0, np.inf], "", "mean volume"], 
     37#    ["mean_volume_ratio", "", 1.0, [0, np.inf], "", "mean form: mean shell volume ratio"], 
    3738#] 
    38  
    3939STRUCTURE_MODE_ID = "structure_factor_mode" 
    4040RADIUS_MODE_ID = "radius_effective_mode" 
     
    4444    # type: (ModelInfo) -> List[Parameter] 
    4545    """ 
    46     Create parameters for structure_factor_mode and radius_effective_mode. 
     46    Create parameters for structure factor and effective radius modes. 
    4747    """ 
    4848    pars = [] 
     
    5656            "Structure factor calculation") 
    5757        pars.append(par) 
    58     if p_info.effective_radius_type is not None: 
     58    if p_info.radius_effective_modes is not None: 
    5959        par = parse_parameter( 
    6060            RADIUS_MODE_ID, 
    6161            "", 
    6262            1, 
    63             [["unconstrained"] + p_info.effective_radius_type], 
     63            [["unconstrained"] + p_info.radius_effective_modes], 
    6464            "", 
    6565            "Effective radius calculation") 
     
    177177        S,                # type: np.ndarray 
    178178        scale,            # type: float 
    179         effective_radius, # type: float 
     179        radius_effective, # type: float 
    180180        beta_mode,        # type: bool 
    181181    ): 
     
    193193            ("beta(Q)", F1**2 / F2), 
    194194            ("S_eff(Q)", 1 + (F1**2 / F2)*(S-1)), 
    195             ("effective_radius", effective_radius), 
     195            ("effective_radius", radius_effective), 
    196196            # ("I(Q)", scale*(F2 + (F1**2)*(S-1)) + bg), 
    197197        )) 
     
    200200            ("P(Q)", scale*F2), 
    201201            ("S(Q)", S), 
    202             ("effective_radius", effective_radius), 
     202            ("effective_radius", radius_effective), 
    203203        )) 
    204204    return parts 
     
    281281        # R_eff type parameter is the second parameter after P and S parameters 
    282282        # unless the model doesn't support beta mode, in which case it is first 
    283         have_radius_type = p_info.effective_radius_type is not None 
     283        have_radius_type = p_info.radius_effective_modes is not None 
     284        #print(p_npars,s_npars) 
    284285        radius_type_offset = 2+p_npars+s_npars + (1 if have_beta_mode else 0) 
     286        #print(values[radius_type_offset]) 
    285287        radius_type = int(values[radius_type_offset]) if have_radius_type else 0 
    286288 
     
    331333        # Call the form factor kernel to compute <F> and <F^2>. 
    332334        # If the model doesn't support Fq the returned <F> will be None. 
    333         F1, F2, effective_radius, shell_volume, volume_ratio = self.p_kernel.Fq( 
     335        F1, F2, radius_effective, shell_volume, volume_ratio = self.p_kernel.Fq( 
    334336            p_details, p_values, cutoff, magnetic, radius_type) 
    335337 
     
    341343        # implementation details in kernel_iq.c. 
    342344        #print("R_eff=%d:%g, volfrac=%g, volume ratio=%g" 
    343         #      % (radius_type, effective_radius, volfrac, volume_ratio)) 
     345        #      % (radius_type, radius_effective, volfrac, volume_ratio)) 
    344346        if radius_type > 0: 
    345347            # set the value to the model R_eff and set the weight to 1 
    346             s_values[2] = s_values[2+s_npars+s_offset[0]] = effective_radius 
     348            s_values[2] = s_values[2+s_npars+s_offset[0]] = radius_effective 
    347349            s_values[2+s_npars+s_offset[0]+nweights] = 1.0 
    348350        s_values[3] = s_values[2+s_npars+s_offset[1]] = volfrac*volume_ratio 
     
    370372        # the results directly rather than through a lazy evaluator. 
    371373        self.results = lambda: _intermediates( 
    372             F1, F2, S, combined_scale, effective_radius, beta_mode) 
     374            F1, F2, S, combined_scale, radius_effective, beta_mode) 
    373375 
    374376        return final_result 
Note: See TracChangeset for help on using the changeset viewer.