Changeset 345e7e4 in sasview for src/sas/sascalc/dataloader/readers
- Timestamp:
- Dec 19, 2016 7:23:36 AM (8 years ago)
- 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:
- b61bd57
- Parents:
- f2724b6
- git-author:
- jhbakker <j.h.bakker@…> (12/19/16 07:23:36)
- git-committer:
- GitHub <noreply@…> (12/19/16 07:23:36)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/sascalc/dataloader/readers/sesans_reader.py
ra01af35 r345e7e4 8 8 import numpy 9 9 import os 10 from sas.sascalc.dataloader.data_info import Data1D10 from sas.sascalc.dataloader.data_info import SESANSData1D 11 11 12 12 # Check whether we have a converter available … … 59 59 raise RuntimeError, "sesans_reader: cannot open %s" % path 60 60 buff = input_f.read() 61 # print buff 61 62 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 62 71 x = numpy.zeros(0) 63 72 y = numpy.zeros(0) … … 74 83 tdlam = numpy.zeros(0) 75 84 tdx = numpy.zeros(0) 76 output = Data1D(x=x, y=y, lam=lam, dy=dy, dx=dx, dlam=dlam, isSesans=True ) 85 # print "all good" 86 output = SESANSData1D(x=x, y=y, lam=lam, dy=dy, dx=dx, dlam=dlam) 87 # print output 77 88 self.filename = output.filename = basename 78 89 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 79 105 paramnames=[] 80 106 paramvals=[] … … 85 111 Pvals=[] 86 112 dPvals=[] 113 # print x 114 # print zvals 87 115 for line in lines: 88 116 # Initial try for CSV (split on ,) … … 94 122 if len(toks)>5: 95 123 zvals.append(toks[0]) 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])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]) 101 129 else: 102 130 continue … … 112 140 default_z_unit = "A" 113 141 data_conv_P = None 114 default_p_unit = " " # Adjust unit for axis (L^-3)142 default_p_unit = " " 115 143 lam_unit = lam_header[1].replace("[","").replace("]","") 116 if lam_unit == 'AA':117 lam_unit = 'A'118 144 varheader=[zvals[0],dzvals[0],lamvals[0],dlamvals[0],Pvals[0],dPvals[0]] 119 145 valrange=range(1, len(zvals)) … … 135 161 output.x, output.x_unit = self._unit_conversion(x, lam_unit, default_z_unit) 136 162 output.y = y 137 output.y_unit = '\AA^{-2} cm^{-1}' # output y_unit erbij138 163 output.dx, output.dx_unit = self._unit_conversion(dx, lam_unit, default_z_unit) 139 164 output.dy = dy … … 141 166 output.dlam, output.dlam_unit = self._unit_conversion(dlam, lam_unit, default_z_unit) 142 167 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 refs168 output.xaxis("\rm{z}", output.x_unit) 169 output.yaxis("\\rm{P/P0}", output.y_unit) 145 170 # Store loading process information 146 171 output.meta_data['loader'] = self.type_name 147 #output.sample.thickness = float(paramvals[6])172 output.sample.thickness = float(paramvals[6]) 148 173 output.sample.name = paramvals[1] 149 174 output.sample.ID = paramvals[0] 150 175 zaccept_unit_split = paramnames[7].split("[") 151 176 zaccept_unit = zaccept_unit_split[1].replace("]","") 152 if zaccept_unit.strip() == '\AA^-1' or zaccept_unit.strip() == '\A^-1':177 if zaccept_unit.strip() == '\AA^-1': 153 178 zaccept_unit = "1/A" 154 179 output.sample.zacceptance=(float(paramvals[7]),zaccept_unit)
Note: See TracChangeset
for help on using the changeset viewer.