Ignore:
Timestamp:
Sep 19, 2017 3:12:12 PM (4 years ago)
Author:
odonnell
Message:

more refinement specifier documentation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIscriptable.py

    r3085 r3090  
    4242--------------------
    4343
    44 This table describes the dictionaries supplied to :func:`~G2PwdrData.set_refinement`
    45 and :func:`~G2PwdrData.clear_refinement`.
     44This table describes the dictionaries supplied to :func:`~G2PwdrData.set_refinements`
     45and :func:`~G2PwdrData.clear_refinements`.
    4646
    4747.. tabularcolumns:: |l|p|
     
    8989----------------
    9090
    91 This table describes the dictionaries supplied to :func:`~G2Phase.set_refinement`
    92 and :func:`~G2Phase.clear_refinement`.
    93 
     91This table describes the dictionaries supplied to :func:`~G2Phase.set_refinements`
     92and :func:`~G2Phase.clear_refinements`.
     93
     94===================== ====================
     95key                   explanation
     96===================== ====================
     97Cell                  Whether or not to refine the unit cell.
     98Atoms                 Dictionary of atoms and refinement flags.
     99                      Each key should be an atom label, e.g.
     100                      'O3', 'Mn5', and each value should be
     101                      a string defining what values to refine.
     102                      Values can be any combination of 'F'
     103                      for fractional occupancy, 'X' for position,
     104                      and 'U' for Debye-Waller factor
     105LeBail                Enables LeBail intensity extraction.
     106===================== ====================
    94107
    95108.. _HAP_parameters_table:
     
    99112------------------------------
    100113
    101 This table describes the dictionaries supplied to :func:`~G2Phase.set_HAP_refinement`
    102 and :func:`~G2Phase.clear_HAP_refinement`.
    103 
     114This table describes the dictionaries supplied to :func:`~G2Phase.set_HAP_refinements`
     115and :func:`~G2Phase.clear_HAP_refinements`.
     116
     117===================== ===================== ====================
     118key                   subkey                explanation
     119===================== ===================== ====================
     120Babinet                                     Should be a **list** of the following
     121                                            subkeys. If not, assumes both
     122                                            BabA and BabU
     123\                     BabA
     124\                     BabU
     125Extinction                                  Should be boolean, whether or not to
     126                                            refine.
     127HStrain                                     Should be boolean, whether or not to
     128                                            refine.
     129Mustrain
     130\                     type                  Mustrain model. One of 'isotropic',
     131                                            'uniaxial', or 'generalized'
     132\                     direction             For uniaxial. A list of three integers,
     133                                            the [hkl] direction of the axis.
     134\                     refine                Usually boolean, whether or not to refine.
     135                                            When in doubt, set it to true.
     136                                            For uniaxial model, can specify list
     137                                            of 'axial' or 'equatorial'. If boolean
     138                                            given sets both axial and equatorial.
     139Pref.Ori.                                   Boolean, whether to refine
     140Show                                        Boolean, whether to refine
     141Size                                        Not implemented
     142Use                                         Boolean, whether to refine
     143Scale                                       Boolean, whether to refine
     144===================== ===================== ====================
    104145
    105146============================
     
    18171858        for key, value in refs.items():
    18181859            if key == "Cell":
    1819                 self.data['General']['Cell'][0] = True
     1860                self.data['General']['Cell'][0] = value
     1861
    18201862            elif key == "Atoms":
    1821                 cx, ct, cs, cia = self.data['General']['AtomPtrs']
    1822 
    18231863                for atomlabel, atomrefinement in value.items():
    18241864                    if atomlabel == 'all':
     
    18301870                            raise ValueError("No such atom: " + atomlabel)
    18311871                        atom.refinement_flags = atomrefinement
     1872
    18321873            elif key == "LeBail":
    18331874                hists = self.data['Histograms']
    18341875                for hname, hoptions in hists.items():
    18351876                    if 'LeBail' not in hoptions:
    1836                         hoptions['newLeBail'] = True
     1877                        hoptions['newLeBail'] = bool(True)
    18371878                    hoptions['LeBail'] = bool(value)
    18381879            else:
     
    18941935                elif key == 'Extinction':
    18951936                    for h in histograms:
    1896                         h['Extinction'][1] = True
     1937                        h['Extinction'][1] = bool(val)
    18971938                elif key == 'HStrain':
    18981939                    for h in histograms:
    1899                         hist['HStrain'][1] = [True for p in hist['Hstrain'][0]]
     1940                        hist['HStrain'][1] = [bool(val) for p in hist['Hstrain'][0]]
    19001941                elif key == 'Mustrain':
    19011942                    for h in histograms:
     
    19211962                                    if isinstance(types, (unicode, str)):
    19221963                                        types = [types]
     1964                                    elif isinstance(types, bool):
     1965                                        mustrain[2][0] = types
     1966                                        mustrain[2][1] = types
     1967                                        types = []
     1968                                    else:
     1969                                        raise ValueError("Not sure what to do with: "
     1970                                                         + str(types))
    19231971                                else:
    19241972                                    types = []
     
    19421990                elif key == 'Pref.Ori.':
    19431991                    for h in histograms:
    1944                         h['Pref.Ori.'][2] = True
     1992                        h['Pref.Ori.'][2] = bool(val)
    19451993                elif key == 'Show':
    19461994                    for h in histograms:
    1947                         h['Show'] = True
     1995                        h['Show'] = bool(val)
    19481996                elif key == 'Size':
     1997                    # TODO
    19491998                    raise NotImplementedError()
    19501999                elif key == 'Use':
    19512000                    for h in histograms:
    1952                         h['Use'] = True
     2001                        h['Use'] = bool(val)
    19532002                elif key == 'Scale':
    19542003                    for h in histograms:
    1955                         h['Scale'][1] = False
     2004                        h['Scale'][1] = bool(val)
    19562005
    19572006    def clear_HAP_refinements(self, refs, histograms='all'):
Note: See TracChangeset for help on using the changeset viewer.