Changeset f2724b6 in sasview for src/sas/sascalc/dataloader/readers


Ignore:
Timestamp:
Dec 19, 2016 6:57:23 AM (8 years ago)
Author:
GitHub <noreply@…>
Branches:
master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
50f1477, 345e7e4
Parents:
67b0a99 (diff), 55bc5a7f (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
jhbakker <j.h.bakker@…> (12/19/16 06:57:23)
git-committer:
GitHub <noreply@…> (12/19/16 06:57:23)
Message:

Merge pull request #26 from SasView?/Jurtest2

Jurtest2

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sas/sascalc/dataloader/readers/sesans_reader.py

    r1c0e3b0 ra01af35  
    88import numpy 
    99import os 
    10 from sas.sascalc.dataloader.data_info import SESANSData1D 
     10from sas.sascalc.dataloader.data_info import Data1D 
    1111 
    1212# Check whether we have a converter available 
     
    5959                    raise  RuntimeError, "sesans_reader: cannot open %s" % path 
    6060                buff = input_f.read() 
    61 #                print buff 
    6261                lines = buff.splitlines() 
    63 #                print lines 
    64                 #Jae could not find python universal line spliter: 
    65                 #keep the below for now 
    66                 # some ascii data has \r line separator, 
    67                 # try it when the data is on only one long line 
    68 #                if len(lines) < 2 : 
    69 #                    lines = buff.split('\r') 
    70                   
    7162                x  = numpy.zeros(0) 
    7263                y  = numpy.zeros(0) 
     
    8374                tdlam = numpy.zeros(0) 
    8475                tdx = numpy.zeros(0) 
    85 #                print "all good" 
    86                 output = SESANSData1D(x=x, y=y, lam=lam, dy=dy, dx=dx, dlam=dlam) 
    87 #                print output                 
     76                output = Data1D(x=x, y=y, lam=lam, dy=dy, dx=dx, dlam=dlam, isSesans=True ) 
    8877                self.filename = output.filename = basename 
    8978 
    90 #                #Initialize counters for data lines and header lines. 
    91 #                is_data = False  # Has more than 5 lines 
    92 #                # More than "5" lines of data is considered as actual 
    93 #                # data unless that is the only data 
    94 #                mum_data_lines = 5 
    95 #                # To count # of current data candidate lines 
    96 #                i = -1 
    97 #                # To count total # of previous data candidate lines 
    98 #                i1 = -1 
    99 #                # To count # of header lines 
    100 #                j = -1 
    101 #                # Helps to count # of header lines 
    102 #                j1 = -1 
    103 #                #minimum required number of columns of data; ( <= 4). 
    104 #                lentoks = 2 
    10579                paramnames=[] 
    10680                paramvals=[] 
     
    11185                Pvals=[] 
    11286                dPvals=[] 
    113 #                print x 
    114 #                print zvals 
    11587                for line in lines: 
    11688                    # Initial try for CSV (split on ,) 
     
    12294                    if len(toks)>5: 
    12395                        zvals.append(toks[0]) 
    124                         dzvals.append(toks[1]) 
    125                         lamvals.append(toks[2]) 
    126                         dlamvals.append(toks[3]) 
    127                         Pvals.append(toks[4]) 
    128                         dPvals.append(toks[5]) 
     96                        dzvals.append(toks[3]) 
     97                        lamvals.append(toks[4]) 
     98                        dlamvals.append(toks[5]) 
     99                        Pvals.append(toks[1]) 
     100                        dPvals.append(toks[2]) 
    129101                    else: 
    130102                        continue 
     
    140112                default_z_unit = "A" 
    141113                data_conv_P = None 
    142                 default_p_unit = " " 
     114                default_p_unit = " " # Adjust unit for axis (L^-3) 
    143115                lam_unit = lam_header[1].replace("[","").replace("]","") 
     116                if lam_unit == 'AA': 
     117                    lam_unit = 'A' 
    144118                varheader=[zvals[0],dzvals[0],lamvals[0],dlamvals[0],Pvals[0],dPvals[0]] 
    145119                valrange=range(1, len(zvals)) 
     
    161135                output.x, output.x_unit = self._unit_conversion(x, lam_unit, default_z_unit) 
    162136                output.y = y 
     137                output.y_unit = '\AA^{-2} cm^{-1}' # output y_unit erbij 
    163138                output.dx, output.dx_unit = self._unit_conversion(dx, lam_unit, default_z_unit) 
    164139                output.dy = dy 
     
    166141                output.dlam, output.dlam_unit = self._unit_conversion(dlam, lam_unit, default_z_unit) 
    167142 
    168                 output.xaxis("\rm{z}", output.x_unit) 
    169                 output.yaxis("\\rm{P/P0}", output.y_unit) 
     143                output.xaxis("\\rm{z}", output.x_unit) 
     144                output.yaxis("\\rm{ln(P)/(t \lambda^2)}", output.y_unit) # Adjust label to ln P/(lam^2 t), remove lam column refs 
    170145                # Store loading process information 
    171146                output.meta_data['loader'] = self.type_name 
    172                 output.sample.thickness = float(paramvals[6]) 
     147                #output.sample.thickness = float(paramvals[6]) 
    173148                output.sample.name = paramvals[1] 
    174149                output.sample.ID = paramvals[0] 
    175150                zaccept_unit_split = paramnames[7].split("[") 
    176151                zaccept_unit = zaccept_unit_split[1].replace("]","") 
    177                 if zaccept_unit.strip() == '\AA^-1': 
     152                if zaccept_unit.strip() == '\AA^-1' or zaccept_unit.strip() == '\A^-1': 
    178153                    zaccept_unit = "1/A" 
    179154                output.sample.zacceptance=(float(paramvals[7]),zaccept_unit) 
Note: See TracChangeset for help on using the changeset viewer.