From 0c483e408af86358a77137d0c9f58d462a34e81d Mon Sep 17 00:00:00 2001
From: Yngve Inntjore Levinsen <Yngve.Levinsen@esss.se>
Date: Wed, 20 Apr 2016 14:09:33 +0200
Subject: [PATCH] fixes in ess.TraceWin.field_map

---
 ess/TraceWin.py | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/ess/TraceWin.py b/ess/TraceWin.py
index 5f31d20..54a909e 100644
--- a/ess/TraceWin.py
+++ b/ess/TraceWin.py
@@ -952,16 +952,27 @@ class field_map:
             raise ValueError("Cannot find file {}".format(filename))
         fin = file(filename,'r')
         l=fin.readline().split()
-        self.size=[]
+        self.start=[]
+        self.end=[]
         numindexes=[]
-        while len(l)==2:
+        while len(l)>1:
             numindexes.append(int(l[0])+1)
-            self.size.append(float(l[1]))
+            if len(l)==2:
+                self.start.append(0.0)
+                self.end.append(float(l[1]))
+            else:
+                self.start.append(float(l[1]))
+                self.end.append(float(l[2]))
             l=fin.readline().split()
 
+        self.z=numpy.arange(self.start[0],self.end[0],(self.end[0]-self.start[0])/numindexes[0])
+        if len(self.start)>1:
+            self.y=numpy.arange(self.start[1],self.end[1],(self.end[1]-self.start[1])/numindexes[1])
+        if len(self.start)>2:
+            self.x=numpy.arange(self.start[2],self.end[2],(self.end[2]-self.start[2])/(numindexes[2]))
+
         self.norm=float(l[0])
         self.map=numpy.loadtxt(fin).reshape(numindexes)
-        print self.map.shape
 
     def savemap(self, filename):
         fout=file(filename,'w')
@@ -974,3 +985,4 @@ class field_map:
         data=self.map.reshape(l)
         for j in data:
             fout.write('{}\n'.format(j))
+
-- 
GitLab