Changeset 990 for trunk/exports


Ignore:
Timestamp:
Jul 15, 2013 1:47:25 PM (8 years ago)
Author:
toby
Message:

mac fix for gltext; update docs

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/exports/G2cif.py

    r989 r990  
    216216                    s += s1
    217217            return s
     218        def FormatBackground(bkg):
     219            '''Display the Background information as a descriptive text string.
     220           
     221            TODO: this needs to be expanded to show the diffuse peak and
     222            Debye term information as well.
     223
     224            :returns: the text description (str)
     225            '''
     226            fxn, bkgdict = bkg
     227            terms = fxn[2]
     228            txt = 'Background function: "'+fxn[0]+'" function with '+str(terms)+' terms:\n'
     229            l = "   "
     230            for v in fxn[3:]:
     231                if len(l) > 60:
     232                    txt += l + '\n'
     233                    l = '   '
     234                l += G2mth.ValEsd(v,-.009)+', '
     235            txt += l
     236            return txt
    218237
    219238        def FormatInstProfile(instparmdict):
     
    586605            refprx = '_refln_' # normal
    587606
    588             WriteCIFitem('\n# SCATTERING FACTOR INFO')
    589607            if 'Lam1' in inst:
    590608                ratio = self.parmDict.get('I(L2)/I(L1)',inst['I(L2)/I(L1)'][1])
     
    645663                            )
    646664
    647             # this will need help from Bob
     665            # TODO: this will need help from Bob
    648666            # WriteCIFitem('_pd_proc_ls_prof_R_factor','?')
    649667            # WriteCIFitem('_pd_proc_ls_prof_wR_factor','?')
     
    651669            # WriteCIFitem('_refine_ls_R_Fsqd_factor','?')
    652670
     671            print histblk['Instrument Parameters'][0]['Type']
     672           
     673            if histblk['Instrument Parameters'][0]['Type'][1][1] == 'X':
     674                WriteCIFitem('_diffrn_radiation_probe','x-ray')
     675                pola = histblk['Instrument Parameters'][0].get('Polariz.')
     676                if pola:
     677                    pfx = ':' + str(hId) + ':'
     678                    sig = self.sigDict.get(pfx+'Polariz.',-0.0009)
     679                    txt = G2mth.ValEsd(pola[1],sig)
     680                    WriteCIFitem('_diffrn_radiation_polarisn_ratio',txt)
     681            elif histblk['Instrument Parameters'][0]['Type'][1][1] == 'N':
     682                WriteCIFitem('_diffrn_radiation_probe','neutron')
     683            # TOF (note that this may not be defined)
     684            #if histblk['Instrument Parameters'][0]['Type'][1][2] == 'T':
     685            #    WriteCIFitem('_pd_meas_2theta_fixed',text)
     686           
     687
     688            # TODO: this will need help from Bob
     689            #if not oneblock:
     690            #WriteCIFitem('\n# SCATTERING FACTOR INFO')
     691            #WriteCIFitem('loop_  _atom_type_symbol')
     692            #if histblk['Instrument Parameters'][0]['Type'][1][1] == 'X':
     693            #    WriteCIFitem('      _atom_type_scat_dispersion_real')
     694            #    WriteCIFitem('      _atom_type_scat_dispersion_imag')
     695            #    for lbl in ('a1','a2','a3', 'a4', 'b1', 'b2', 'b3', 'b4', 'c'):
     696            #        WriteCIFitem('      _atom_type_scat_Cromer_Mann_'+lbl)
     697            #elif histblk['Instrument Parameters'][0]['Type'][1][1] == 'N':
     698            #    WriteCIFitem('      _atom_type_scat_length_neutron')
     699            #WriteCIFitem('      _atom_type_scat_source')
     700
     701            WriteCIFitem('_pd_proc_ls_background_function',FormatBackground(histblk['Background']))
     702
     703            #WriteCIFitem('_exptl_absorpt_process_details','?')
     704            #WriteCIFitem('_exptl_absorpt_correction_T_min','?')
     705            #WriteCIFitem('_exptl_absorpt_correction_T_max','?')
     706            #C extinction
     707            #WRITE(IUCIF,'(A)') '# Extinction correction'
     708            #CALL WRVAL(IUCIF,'_gsas_exptl_extinct_corr_T_min',TEXT(1:10))
     709            #CALL WRVAL(IUCIF,'_gsas_exptl_extinct_corr_T_max',TEXT(11:20))
     710
     711            if not oneblock:
     712                # instrumental profile terms go here
     713                WriteCIFitem('_pd_proc_ls_profile_function','?')
     714
     715            raise Exception, "testing"
    653716            phasenam = self.Phases.keys()[0]
    654717            for key in self.Phases[phasenam]['Histograms']:
     
    656719                print '------------'
    657720                print self.Phases[phasenam]['Histograms'][key]
    658             raise Exception, "testing"
    659721            print histblk.keys()
    660722            for key in histblk:
     
    663725            #print self.parmDict.keys()
    664726            #print self.sigDict.keys()
    665            
    666             #WriteCIFitem('_pd_meas_2theta_fixed',text)
    667             WriteCIFitem('_diffrn_radiation_probe','x-ray')
    668             WriteCIFitem('_diffrn_radiation_probe','neutron')
    669             WriteCIFitem('_diffrn_radiation_polarisn_ratio','?')
    670            
    671             WriteCIFitem('loop_  _atom_type_symbol')
    672             if oneblock:
    673                 WriteCIFitem('       _atom_type_number_in_cell')
    674             #IF (HTYP(2:2) .eq. 'X' .AND. HTYP(3:3) .ne. 'E') THEN
    675             WriteCIFitem('      _atom_type_scat_dispersion_real')
    676             WriteCIFitem('      _atom_type_scat_dispersion_imag')
    677             for lbl in ('a1','a2','a3', 'a4', 'b1', 'b2', 'b3', 'b4', 'c'):
    678                 WriteCIFitem('      _atom_type_scat_Cromer_Mann_'+lbl)
    679             #ELSEIF (HTYP(2:2) .eq. 'N') THEN
    680             WriteCIFitem('      _atom_type_scat_length_neutron')
    681             #ENDIF
    682             WriteCIFitem('      _atom_type_scat_source')
    683 
    684             #C document the background function used
    685             WriteCIFitem('_pd_proc_ls_background_function','?')
    686 
    687             WriteCIFitem('_exptl_absorpt_process_details','?')
    688             WriteCIFitem('_exptl_absorpt_correction_T_min','?')
    689             WriteCIFitem('_exptl_absorpt_correction_T_max','?')
    690             #C extinction
    691             #WRITE(IUCIF,'(A)') '# Extinction correction'
    692             #CALL WRVAL(IUCIF,'_gsas_exptl_extinct_corr_T_min',TEXT(1:10))
    693             #CALL WRVAL(IUCIF,'_gsas_exptl_extinct_corr_T_max',TEXT(11:20))
    694 
    695             if not oneblock:
    696                 # instrumental profile terms go here
    697                 WriteCIFitem('_pd_proc_ls_profile_function','?')
    698727
    699728            #print 'Data'
Note: See TracChangeset for help on using the changeset viewer.