Changeset 928


Ignore:
Timestamp:
Apr 20, 2020 11:47:18 AM (2 years ago)
Author:
ilavsky
Message:

Nika fixes for nxcanSAS

Location:
trunk/User Procedures
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/User Procedures/Indra 2/Readme.txt

    r853 r928  
    1313Modification history:
    1414_____________________________________________________________________________________
     151.971 beta 4/20/2020
     16no change in main code.
     17
     18
    15191.97 2/9/2020
    1620Many tools - changed code compiler instruction to rtGLobals=3, this is less forgiving compile which prevents more accidental bugs, but may generate new errors in old code. Report as many errors as possible to author, please. 
  • trunk/User Procedures/Irena/Modification history.txt

    r889 r928  
    1414Fractals - added optional use of Unified Fit Sphere form factor. This removes high-q Bessel function oscillations which are nto reasonable for most cases.
    1515Added Multi Data Plot tool, new tool to plot quickly many data sets. New ipf file...
    16 Added Simple fits tool, new tool and new capabilities. Guinier, Porod, Sphere and Spheroid, more to coem as needed
     16Added Metadata Browser tool, enables relatively easy extraction of values from metadata in wave notes.
     17Added Basic fits tool, new tool and new capabilities. Guinier, Porod, Sphere and Spheroid, more to coem as needed
    1718Added group of bioSAS tools - specialized simple import, data averaging and buffer subtraction, etc. Linked to menu also some existing tools for other functions bioSAS needs.
     19tools: Import ASCII, Average/Subtract/Scale tool, and PDDF + Molecular weight calculator. Uses ATSAS to get PDDF.
    1820
    1921
  • trunk/User Procedures/Nika/Modification history.txt

    r903 r928  
    1313Modification history:
    1414********************************************
    15 1.83 - TBA
     151.821 beta 4/20/2020
    1616Main panel - change sorting option "_001". This will now look from the end of name for first number. This si to help with NSLS samples names MyName_00001_waxs.ext etc. Will work for normal files Myname_0001.ext also.
    17 
     17Attempt to fix NXcanSAS data importer. WIP, no data to test against.
     18Fixed problem with Sector graph sometimes looking weird - apparently ImageLineProfile sometimes makes different point numbers and this needs to be accounted for.
     19Add Sector graph which accounts for tilts, requested by Josh.
    1820
    19211.82 - 2/9/2020
  • trunk/User Procedures/Nika/NI1_FileLoaders.ipf

    r927 r928  
    39413941        UsedQXY = 0
    39423942        UsedAzimAngle = 0
     3943        string QUnits = "1/Angstrom"
    39433944        //Abort "Need finishing NI1_ReadCalibCanSASNexusFile"
    39443945        if (stringmatch(NewWaveName,"CCDImageToConvert"))
    3945                 //DataIdentification = "DataWv:"+TempDataPath+";"+"QWv:"+TempQPath+";"+"IdevWv:"+TempIdevPath+";"+"MaskWv:"+TempMaskPath+";"
    3946                 //  DataWv:/sasentry01/sasdata01/I;QWv:/sasentry01/sasdata01/Q;IdevWv:;MaskWv:;
     3946                        //DataIdentification = "DataWv:"+TempDataPath+";"+"QWv:"+TempQPath+";"+"IdevWv:"+TempIdevPath+";"+"MaskWv:"+TempMaskPath+";"
     3947                        //  DataWv:/sasentry01/sasdata01/I;QWv:/sasentry01/sasdata01/Q;IdevWv:;MaskWv:;
    39473948                        HDF5OpenFile/P=$(PathName)/R fileID as FileNameToLoad
    39483949                        //load data - Intensity
     
    39683969                                UsedQXY=1       
    39693970                        endif
     3971                        QUnits =  StringByKey("QUnits", FileContent, ":", ",")
    39703972                        TempStr = StringByKey("IdevWv", FileContent, ":", ",")
    39713973                        if(strlen(TempStr)>2)   //only Q wave
     
    40034005                                Wave Qx2D
    40044006                                Wave Qy2D
     4007                                //convert Q in appropriate units...
     4008                                strswitch(QUnits)       
     4009                                        case "1/Angstrom":     
     4010                                                //this is OK, nothing to do...
     4011                                                break
     4012                                        case "1/nm":
     4013                                                MatrixOp /O Qx2D = Qx2D/10
     4014                                                MatrixOp /O Qy2D = Qy2D/10
     4015                                                break
     4016                                        case "1/m":
     4017                                                MatrixOp /O Qx2D = Qx2D/(1e10)
     4018                                                MatrixOp /O Qy2D = Qy2D/(1e10)
     4019                                                break
     4020                                endswitch
    40054021                                if(!UsedAzimAngle)
    40064022                                        MatrixOP/O AnglesWave = atan(Qy2D/Qx2D)
     
    40174033                        else            //used just Q, need to create AzimuthalWave
    40184034                                Wave Q2Dwave
    4019                                 Wave Qvector
     4035                                //Wave Qvector
     4036                                //convert Q in appropriate units...
     4037                                strswitch(QUnits)       
     4038                                        case "1/Angstrom":     
     4039                                                //this is OK, nothing to do...
     4040                                                break
     4041                                        case "1/nm":
     4042                                                MatrixOp /O Q2Dwave = Q2Dwave/10
     4043                                                break
     4044                                        case "1/m":
     4045                                                MatrixOp /O Q2Dwave = Q2Dwave/(1e10)
     4046                                                break
     4047                                endswitch
    40204048                                Wavestats/Q Q2DWave
    40214049                                BeamCenterX = V_minRowLoc
    40224050                                BeamCenterY = V_minColLoc
    40234051                                if(!UsedAzimAngle)
    4024                                         Duplicate/O Qvector, AnglesWave
     4052                                        Duplicate/O Q2Dwave, AnglesWave
    40254053                                        Multithread AnglesWave = abs(atan2((BeamCenterY-q),(BeamCenterX-p))-pi)         
    40264054                                endif   
    40274055                        endif
     4056                       
     4057                       
    40284058                        Redimension/S AnglesWave
    40294059                        Wave CCDImageToConvert
     
    41464176        OrigQyPath=" "
    41474177        DataIdentification=" "
     4178        string QUnits="1/angstrom"             
     4179        string tempStrUnits, tempStr65
    41484180       
    41494181        HDF5OpenFile/P=$(PathName)/R fileID as FileNameToLoad
     
    41694201                        SignalNameAtrr=stringByKey("signal",AttribList)
    41704202                        QNamesAtrr=stringByKey("I_axes",AttribList)
    4171                         print ListOfDataSets
    41724203                        TempDataPath = RemoveEnding(GrepList(ListOfDataSets, "I$",0,";"), ";")
    41734204                        if(StringMatch(QNamesAtrr, "Q,Q" ))
    41744205                                TempQPath = RemoveEnding(GrepList(ListOfDataSets, "Q$",0,";"), ";")
     4206                                //need to locate Q units here also... QUnits
     4207                                tempStrUnits = NI1_HdfReadAllAttributes(fileID, TempQPath,1)
     4208                                QUnits = StringByKey("units", tempStrUnits, ":", ";")
     4209                        elseif(StringMatch(QNamesAtrr, "Qx,Qy" ))
     4210                                        tempStr65 = RemoveEnding(GrepList(ListOfDataSets, "Qx$",0,";"), ";")
     4211                                        TempQPath = tempStr65+";"
     4212                                        TempQPath += RemoveEnding(GrepList(ListOfDataSets, "Qy$",0,";"), ";")+";"
     4213                                        //need to locate Q units here also... QUnits
     4214                                        tempStrUnits = NI1_HdfReadAllAttributes(fileID, tempStr65,1)                   
     4215                                        QUnits = StringByKey("units", tempStrUnits, ":", ";")
    41754216                        endif
    41764217                        TempAzAPath  =   RemoveEnding(GrepList(ListOfDataSets, "AzimAngles",0,";"), ";")
     
    41794220
    41804221                        DataIdentification = "DataWv:"+TempDataPath+","+"QWv:"+TempQPath+","+"IdevWv:"+TempIdevPath+","
    4181                         DataIdentification += "MaskWv:"+TempMaskPath+","+"AzimAngles:"+TempAzAPath+","
     4222                        DataIdentification += "MaskWv:"+TempMaskPath+","+"AzimAngles:"+TempAzAPath+","+"QUnits:"+QUnits+";"
    41824223                        //DataIdentification += "UnbinnedQx:"+OrigQxPath+","+"UnbinnedQy:"+OrigQyPath+","
    41834224                        break
Note: See TracChangeset for help on using the changeset viewer.