Changeset 13043af in sasview for src/sas/sascalc/dataloader/readers


Ignore:
Timestamp:
Feb 28, 2017 1:20:34 PM (8 years ago)
Author:
GitHub <noreply@…>
Parents:
46f798f (diff), 0d64713 (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:
Jeff Krzywon <krzywon@…> (02/28/17 13:20:34)
git-committer:
GitHub <noreply@…> (02/28/17 13:20:34)
Message:

Merge pull request #38 from SasView?/revert-31-sesans41

Revert changes to merge master into branch first before pulling.

Location:
src/sas/sascalc/dataloader/readers
Files:
3 edited

Legend:

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

    rad4632c r0d64713  
    133133               "variable" : None, 
    134134               "children" : {"Idata" : SASDATA_IDATA, 
    135                              "Sesans": {"storeas": "content"}, 
    136                              "zacceptance": {"storeas": "float"}, 
    137135                             "<any>" : ANY 
    138136                            } 
  • src/sas/sascalc/dataloader/readers/cansas_reader.py

    rc221349 r0d64713  
    261261                # I and Q - 1D data 
    262262                elif tagname == 'I' and isinstance(self.current_dataset, plottable_1D): 
    263                     unit_list = unit.split("|") 
    264                     if len(unit_list) > 1: 
    265                         self.current_dataset.yaxis(unit_list[0].strip(), 
    266                                                    unit_list[1].strip()) 
    267                     else: 
    268                         self.current_dataset.yaxis("Intensity", unit) 
     263                    self.current_dataset.yaxis("Intensity", unit) 
    269264                    self.current_dataset.y = np.append(self.current_dataset.y, data_point) 
    270265                elif tagname == 'Idev' and isinstance(self.current_dataset, plottable_1D): 
    271266                    self.current_dataset.dy = np.append(self.current_dataset.dy, data_point) 
    272267                elif tagname == 'Q': 
    273                     unit_list = unit.split("|") 
    274                     if len(unit_list) > 1: 
    275                         self.current_dataset.xaxis(unit_list[0].strip(), 
    276                                                    unit_list[1].strip()) 
    277                     else: 
    278                         self.current_dataset.xaxis("Q", unit) 
     268                    self.current_dataset.xaxis("Q", unit) 
    279269                    self.current_dataset.x = np.append(self.current_dataset.x, data_point) 
    280270                elif tagname == 'Qdev': 
     
    288278                elif tagname == 'Shadowfactor': 
    289279                    pass 
    290                 elif tagname == 'Sesans': 
    291                     self.current_datainfo.isSesans = bool(data_point) 
    292                 elif tagname == 'zacceptance': 
    293                     self.current_datainfo.sample.zacceptance = (data_point, unit) 
    294280 
    295281                # I and Qx, Qy - 2D data 
     
    10341020            node.append(point) 
    10351021            self.write_node(point, "Q", datainfo.x[i], 
    1036                             {'unit': datainfo._xaxis + " | " + datainfo._xunit}) 
     1022                            {'unit': datainfo.x_unit}) 
    10371023            if len(datainfo.y) >= i: 
    10381024                self.write_node(point, "I", datainfo.y[i], 
    1039                                 {'unit': datainfo._yaxis + " | " + datainfo._yunit}) 
     1025                                {'unit': datainfo.y_unit}) 
    10401026            if datainfo.dy is not None and len(datainfo.dy) > i: 
    10411027                self.write_node(point, "Idev", datainfo.dy[i], 
    1042                                 {'unit': datainfo._yaxis + " | " + datainfo._yunit}) 
     1028                                {'unit': datainfo.y_unit}) 
    10431029            if datainfo.dx is not None and len(datainfo.dx) > i: 
    10441030                self.write_node(point, "Qdev", datainfo.dx[i], 
    1045                                 {'unit': datainfo._xaxis + " | " + datainfo._xunit}) 
     1031                                {'unit': datainfo.x_unit}) 
    10461032            if datainfo.dxw is not None and len(datainfo.dxw) > i: 
    10471033                self.write_node(point, "dQw", datainfo.dxw[i], 
    1048                                 {'unit': datainfo._xaxis + " | " + datainfo._xunit}) 
     1034                                {'unit': datainfo.x_unit}) 
    10491035            if datainfo.dxl is not None and len(datainfo.dxl) > i: 
    10501036                self.write_node(point, "dQl", datainfo.dxl[i], 
    1051                                 {'unit': datainfo._xaxis + " | " + datainfo._xunit}) 
    1052         if datainfo.isSesans: 
    1053             sesans = self.create_element("Sesans") 
    1054             sesans.text = str(datainfo.isSesans) 
    1055             node.append(sesans) 
    1056             self.write_node(node, "zacceptance", datainfo.sample.zacceptance[0], 
    1057                              {'unit': datainfo.sample.zacceptance[1]}) 
    1058  
     1037                                {'unit': datainfo.x_unit}) 
    10591038 
    10601039    def _write_data_2d(self, datainfo, entry_node): 
  • src/sas/sascalc/dataloader/readers/sesans_reader.py

    r7caf3e5 r0d64713  
    88import numpy 
    99import os 
    10 from sas.sascalc.dataloader.data_info import Data1D 
     10from sas.sascalc.dataloader.data_info import SESANSData1D 
    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 
    6162                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                  
    6271                x  = numpy.zeros(0) 
    6372                y  = numpy.zeros(0) 
     
    7483                tdlam = numpy.zeros(0) 
    7584                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                 
    7788                self.filename = output.filename = basename 
    7889 
     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 
    79105                paramnames=[] 
    80106                paramvals=[] 
     
    85111                Pvals=[] 
    86112                dPvals=[] 
    87  
     113#                print x 
     114#                print zvals 
    88115                for line in lines: 
    89116                    # Initial try for CSV (split on ,) 
     
    95122                    if len(toks)>5: 
    96123                        zvals.append(toks[0]) 
    97                         dzvals.append(toks[3]) 
    98                         lamvals.append(toks[4]) 
    99                         dlamvals.append(toks[5]) 
    100                         Pvals.append(toks[1]) 
    101                         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]) 
    102129                    else: 
    103130                        continue 
     
    113140                default_z_unit = "A" 
    114141                data_conv_P = None 
    115                 default_p_unit = " " # Adjust unit for axis (L^-3) 
     142                default_p_unit = " " 
    116143                lam_unit = lam_header[1].replace("[","").replace("]","") 
    117                 if lam_unit == 'AA': 
    118                     lam_unit = 'A' 
    119144                varheader=[zvals[0],dzvals[0],lamvals[0],dlamvals[0],Pvals[0],dPvals[0]] 
    120145                valrange=range(1, len(zvals)) 
     
    136161                output.x, output.x_unit = self._unit_conversion(x, lam_unit, default_z_unit) 
    137162                output.y = y 
    138                 output.y_unit = r'\AA^{-2} cm^{-1}'  # output y_unit added 
    139163                output.dx, output.dx_unit = self._unit_conversion(dx, lam_unit, default_z_unit) 
    140164                output.dy = dy 
    141165                output.lam, output.lam_unit = self._unit_conversion(lam, lam_unit, default_z_unit) 
    142166                output.dlam, output.dlam_unit = self._unit_conversion(dlam, lam_unit, default_z_unit) 
    143                  
     167 
    144168                output.xaxis(r"\rm{z}", output.x_unit) 
    145                 output.yaxis(r"\rm{ln(P)/(t \lambda^2)}", output.y_unit)  # Adjust label to ln P/(lam^2 t), remove lam column refs 
    146  
     169                output.yaxis(r"\rm{P/P0}", output.y_unit) 
    147170                # Store loading process information 
    148171                output.meta_data['loader'] = self.type_name 
    149                 #output.sample.thickness = float(paramvals[6]) 
     172                output.sample.thickness = float(paramvals[6]) 
    150173                output.sample.name = paramvals[1] 
    151174                output.sample.ID = paramvals[0] 
    152175                zaccept_unit_split = paramnames[7].split("[") 
    153176                zaccept_unit = zaccept_unit_split[1].replace("]","") 
    154                 if zaccept_unit.strip() == r'\AA^-1' or zaccept_unit.strip() == r'\A^-1': 
     177                if zaccept_unit.strip() == r'\AA^-1': 
    155178                    zaccept_unit = "1/A" 
    156179                output.sample.zacceptance=(float(paramvals[7]),zaccept_unit) 
    157                 output.vars = varheader 
     180                output.vars=varheader 
    158181 
    159182                if len(output.x) < 1: 
Note: See TracChangeset for help on using the changeset viewer.