Salome HOME
Minor improvements and fixes for internal variables
[modules/adao.git] / resources / ADAOSchemaCatalog.xml
index 6506dfa9a44688ecef7e004f37e22166f645f21a..c01b789c935256277b80f5358886a5e78d960199 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version='1.0' encoding='utf-8' ?>
 <!--
-  Copyright (C) 2008-2019 EDF R&D
+  Copyright (C) 2008-2021 EDF R&D
 
   This file is part of SALOME ADAO module
 
@@ -409,16 +409,20 @@ if sys.path.count(filepath)==0 or (sys.path.count(filepath)>0 and sys.path.index
 
   <inline name="CreateNumpyVectorFromDataFile">
     <script><code><![CDATA[
-import logging, sys, os
+import logging, sys, numpy
 logging.debug("CREATE YI Entering in CreateNumpyVectorFromDataFile")
 type = "Vector"
 
 if sys.version_info.major > 2: import adao
 from daCore.Interfaces import ImportFromFile as aif
-vector = aif(script).getvalue(columns)[1]
+if colmajor:
+    vector = numpy.ravel( numpy.transpose( aif(script).getvalue(columns)[1] ) )
+else:
+    vector = numpy.ravel( aif(script).getvalue(columns)[1] )
 ]]></code></script>
     <inport name="script" type="string"/>
     <inport name="columns" type="stringvec"/>
+    <inport name="colmajor" type="bool"/>
     <outport name="vector" type="pyobj"/>
     <outport name="type" type="string"/>
     <outport name="stored" type="bool"/>
@@ -428,8 +432,17 @@ vector = aif(script).getvalue(columns)[1]
     <script><code><![CDATA[
 import numpy, logging
 logging.debug("CREATE YI Entering in CreateNumpyVectorSerieFromString")
-vector_in_list = eval(str(vector_in_string),{},{})
-vector = numpy.matrix(vector_in_list)
+# vector_in_list = eval(str(vector_in_string),{},{})
+# vector = numpy.matrix(vector_in_list)
+if (vector_in_string.find("array")>-1) or (vector_in_string.find("matrix")>-1):
+    vector_in_string=vector_in_string.replace("array","numpy.array")
+    vector_in_string=vector_in_string.replace("matrix","numpy.matrix")
+    exec("vector="+vector_in_string)
+    vector = numpy.array(vector)
+else:
+    vector_in_string=vector_in_string.replace("'","").replace('"','')
+    vector_in_list = eval(str(vector_in_string),{},{})
+    vector = numpy.array(vector_in_list)
 type = "VectorSerie"
 logging.debug("VectorSerie is %s"%vector)
 ]]></code></script>
@@ -463,6 +476,28 @@ if sys.path.count(filepath)==0 or (sys.path.count(filepath)>0 and sys.path.index
     <outport name="stored" type="bool"/>
   </inline>
 
+  <inline name="CreateNumpyVectorSerieFromDataFile">
+    <script><code><![CDATA[
+import logging, sys, numpy
+logging.debug("CREATE YI Entering in CreateNumpyVectorSerieFromDataFile")
+type = "VectorSerie"
+
+if sys.version_info.major > 2: import adao
+from daCore.Interfaces import ImportFromFile as aif
+if len(columns) == 0: columns = None
+if colmajor:
+    aif(script).getvalue(columns)[1]
+else:
+    vector = numpy.transpose( aif(script).getvalue(columns)[1] )
+]]></code></script>
+    <inport name="script" type="string"/>
+    <inport name="columns" type="stringvec"/>
+    <inport name="colmajor" type="bool"/>
+    <outport name="vector" type="pyobj"/>
+    <outport name="type" type="string"/>
+    <outport name="stored" type="bool"/>
+  </inline>
+
   <inline name="SimpleExecuteDirectAlgorithm">
     <script><code><![CDATA[
 import logging