Commit aa064dfb authored by Andreas Freise's avatar Andreas Freise
Browse files

trying to make more example files work:

- extending SIfloat to work with lists
- adding SIfloat to axis conversion.
parent a77ef735
import os
import re
"""
class SIfloat(value):
def __init__(self, value):
self.__value = value
"""
#staticmethod
def SIfloat(value):
value=str(value)
if type(value)==list:
return [convertToFloat(s) for s in value]
else:
return convertToFloat(value)
def convertToFloat(value):
__prefix = {'y': 1e-24, # yocto
'z': 1e-21, # zepto
'a': 1e-18, # atto
......@@ -30,7 +28,7 @@ def SIfloat(value):
'Z': 1e21, # zetta
'Y': 1e24, # yotta
}
value = str(value)
for i, j in __prefix.iteritems():
value=value.replace(i, str(j))
return float(value)
......@@ -83,7 +83,7 @@ class xaxis(Command):
if numpy.size(limits) != 2 :
raise exceptions.ValueError("limits input should be a 2x1 vector of limits for the xaxis")
self.limits = numpy.array(limits).astype(float)
self.limits = numpy.array(SIfloat(limits)).astype(float)
if steps <= 0 :
raise exceptions.ValueError("steps value should be > 0")
......@@ -128,4 +128,4 @@ class xaxis(Command):
comp_name, param_name, self.scale,
min(self.limits), max(self.limits), self.steps);
\ No newline at end of file
......@@ -71,7 +71,7 @@ class Component(object) :
class Param(float):
def __new__(self,name,value):
return float.__new__(self,value)
return float.__new__(self,SIfloat(value))
def __init__(self,name,value):
self.__name = name
......
......@@ -122,7 +122,7 @@ class kat(object):
def parseKatCode(self, code):
#commands = code.split("\n")
self.parseCommands(commands)
self.parseCommands(code)
def parseCommands(self, commands):
blockComment = False
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment