Changeset 1365 for trunk/GSASII.py


Ignore:
Timestamp:
May 28, 2014 11:57:03 AM (8 years ago)
Author:
vondreele
Message:

fix atmdata.py for Rh (& other anomalous b isotopes)
fix powder imports to include old style PRCF records in GSAS iparm files
format of penalty fxn. prints

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASII.py

    r1364 r1365  
    970970                    codes = [0,0,0,0,0,0]
    971971                data.extend(v)
    972                 v1 = Iparm['INS  1PRCF1 '].split()                                                 
    973                 v = Iparm['INS  1PRCF11'].split()
    974                 data.extend([float(v[0]),float(v[1]),float(v[2])])                  #get GU, GV & GW - always here
    975                 azm = float(Iparm.get('INS  1DETAZM','0.0'))
    976                 v = Iparm['INS  1PRCF12'].split()
    977                 if v1[0] == 3:
    978                     data.extend([float(v[0]),float(v[1]),float(v[2])+float(v[3],azm)])  #get LX, LY, S+H/L & azimuth
     972                if 'INS  1PRCF  ' in Iparm:
     973                    v1 = Iparm['INS  1PRCF  '].split()                                                 
     974                    v = Iparm['INS  1PRCF 1'].split()
     975                    data.extend([float(v[0]),float(v[1]),float(v[2])])                  #get GU, GV & GW - always here
     976                    azm = float(Iparm.get('INS  1DETAZM','0.0'))
     977                    v = Iparm['INS  1PRCF 2'].split()
     978                    if v1[0] == 3:
     979                        data.extend([float(v[0]),float(v[1]),float(v[2])+float(v[3],azm)])  #get LX, LY, S+H/L & azimuth
     980                    else:
     981                        data.extend([0.0,0.0,0.002,azm])                                      #OK defaults if fxn #3 not 1st in iprm file                   
    979982                else:
    980                     data.extend([0.0,0.0,0.002,azm])                                      #OK defaults if fxn #3 not 1st in iprm file
     983                    v1 = Iparm['INS  1PRCF1 '].split()                                                 
     984                    v = Iparm['INS  1PRCF11'].split()
     985                    data.extend([float(v[0]),float(v[1]),float(v[2])])                  #get GU, GV & GW - always here
     986                    azm = float(Iparm.get('INS  1DETAZM','0.0'))
     987                    v = Iparm['INS  1PRCF12'].split()
     988                    if v1[0] == 3:
     989                        data.extend([float(v[0]),float(v[1]),float(v[2])+float(v[3],azm)])  #get LX, LY, S+H/L & azimuth
     990                    else:
     991                        data.extend([0.0,0.0,0.002,azm])                                      #OK defaults if fxn #3 not 1st in iprm file
    981992                codes.extend([0,0,0,0,0,0,0])
    982993                return [G2IO.makeInstDict(names,data,codes),{}]
     
    9921003                s = Iparm['INS  1 ICONS'].split()
    9931004                data.extend([G2IO.sfloat(s[0]),G2IO.sfloat(s[1]),G2IO.sfloat(s[2])])    #difC, difA, Zero
    994                 s = Iparm['INS  1PRCF1 '].split()
    995                 pfType = int(s[0])
    996                 s = Iparm['INS  1PRCF11'].split()
    997                 if abs(pfType) == 1:
    998                     data.extend([G2IO.sfloat(s[1]),G2IO.sfloat(s[2]),G2IO.sfloat(s[3])])
    999                     s = Iparm['INS  1PRCF12'].split()
    1000                     data.extend([0.0,0.0,G2IO.sfloat(s[1]),0.0,0.0,0.0,azm])
    1001                 elif abs(pfType) in [3,4,5]:
    1002                     data.extend([G2IO.sfloat(s[0]),G2IO.sfloat(s[1]),G2IO.sfloat(s[2])])
    1003                     if abs(pfType) == 4:
    1004                         data.extend([0.0,0.0,G2IO.sfloat(s[3]),0.0,0.0,0.0,azm])
    1005                     else:
     1005                if 'INS  1PRCF  ' in Iparm:
     1006                    s = Iparm['INS  1PRCF  '].split()
     1007                    pfType = int(s[0])
     1008                    s = Iparm['INS  1PRCF 1'].split()
     1009                    if abs(pfType) == 1:
     1010                        data.extend([G2IO.sfloat(s[1]),G2IO.sfloat(s[2]),G2IO.sfloat(s[3])])
     1011                        s = Iparm['INS  1PRCF 2'].split()
     1012                        data.extend([0.0,0.0,G2IO.sfloat(s[1]),0.0,0.0,0.0,azm])
     1013                    elif abs(pfType) in [3,4,5]:
     1014                        data.extend([G2IO.sfloat(s[0]),G2IO.sfloat(s[1]),G2IO.sfloat(s[2])])
     1015                        if abs(pfType) == 4:
     1016                            data.extend([0.0,0.0,G2IO.sfloat(s[3]),0.0,0.0,0.0,azm])
     1017                        else:
     1018                            s = Iparm['INS  1PRCF 2'].split()
     1019                            data.extend([0.0,0.0,G2IO.sfloat(s[0]),0.0,0.0,0.0,azm])                       
     1020                else:
     1021                    s = Iparm['INS  1PRCF1 '].split()
     1022                    pfType = int(s[0])
     1023                    s = Iparm['INS  1PRCF11'].split()
     1024                    if abs(pfType) == 1:
     1025                        data.extend([G2IO.sfloat(s[1]),G2IO.sfloat(s[2]),G2IO.sfloat(s[3])])
    10061026                        s = Iparm['INS  1PRCF12'].split()
    1007                         data.extend([0.0,0.0,G2IO.sfloat(s[0]),0.0,0.0,0.0,azm])                       
     1027                        data.extend([0.0,0.0,G2IO.sfloat(s[1]),0.0,0.0,0.0,azm])
     1028                    elif abs(pfType) in [3,4,5]:
     1029                        data.extend([G2IO.sfloat(s[0]),G2IO.sfloat(s[1]),G2IO.sfloat(s[2])])
     1030                        if abs(pfType) == 4:
     1031                            data.extend([0.0,0.0,G2IO.sfloat(s[3]),0.0,0.0,0.0,azm])
     1032                        else:
     1033                            s = Iparm['INS  1PRCF12'].split()
     1034                            data.extend([0.0,0.0,G2IO.sfloat(s[0]),0.0,0.0,0.0,azm])                       
    10081035                Inst1 = G2IO.makeInstDict(names,data,codes)
    10091036                Inst2 = {}
Note: See TracChangeset for help on using the changeset viewer.