#!/usr/bin/env python """ Provide functionality for a C extension model WARNING: THIS FILE WAS GENERATED BY WRAPPERGENERATOR.PY DO NOT MODIFY THIS FILE, MODIFY core_shell.h AND RE-RUN THE GENERATOR SCRIPT @author: Mathieu Doucet / UTK @contact: mathieu.doucet@nist.gov """ from sans.models.BaseComponent import BaseComponent from sans_extension.c_models import CCoreShellModel import copy class CoreShellModel(CCoreShellModel, BaseComponent): """ Class that evaluates a CoreShellModel model. This file was auto-generated from core_shell.h. Refer to that file and the structure it contains for details of the model. List of default parameters: scale = 1.0 radius = 60.0 A thickness = 10.0 A core_sld = 1e-006 A-2 shell_sld = 2e-006 A-2 solvent_sld = 3e-006 A-2 background = 0.0 cm-1 """ def __init__(self): """ Initialization """ # Initialize BaseComponent first, then sphere BaseComponent.__init__(self) CCoreShellModel.__init__(self) ## Name of the model self.name = "CoreShellModel" ## Parameter details [units, min, max] self.details = {} self.details['scale'] = ['', None, None] self.details['radius'] = ['A', None, None] self.details['thickness'] = ['A', None, None] self.details['core_sld'] = ['A-2', None, None] self.details['shell_sld'] = ['A-2', None, None] self.details['solvent_sld'] = ['A-2', None, None] self.details['background'] = ['cm-1', None, None] def clone(self): """ Return a identical copy of self """ obj = CoreShellModel() obj.params = copy.deepcopy(self.params) return obj def run(self, x = 0.0): """ Evaluate the model @param x: input q, or [q,phi] @return: scattering function P(q) """ return CCoreShellModel.run(self, x) def runXY(self, x = 0.0): """ Evaluate the model in cartesian coordinates @param x: input q, or [qx, qy] @return: scattering function P(q) """ return CCoreShellModel.runXY(self, x) # End of file