<?xml version='1.0' encoding='utf-8' ?>
<!--
- Copyright (C) 2008-2017 EDF R&D
+ Copyright (C) 2008-2021 EDF R&D
This file is part of SALOME ADAO module
<script><code>
<![CDATA[
-import numpy, logging
+import sys, numpy, logging
logging.debug("CREATE YI Entering in CreateAssimilationStudy")
-print "Entering in the assimilation study"
-print "Name is set to........:", Name
-print "Algorithm is set to...:", Algorithm
+print("Entering in the assimilation study")
+print("Name is set to........:", Name)
+print("Algorithm is set to...:", Algorithm)
try:
# Create Assimilation study
+ if sys.version_info.major > 2: import adao
from daYacsIntegration.daStudy import *
assim_study = daStudy(Name, Algorithm, Debug)
exec("matrix="+matrix_in_string)
matrix = numpy.matrix(matrix)
else:
+ matrix_in_string=matrix_in_string.replace("'","").replace('"','')
matrix = numpy.matrix(matrix_in_string)
type = "Matrix"
logging.debug("CREATE YI Matrix is %s"%matrix)
exec("matrix="+matrix_in_string)
matrix = numpy.matrix(matrix)
else:
+ matrix_in_string=matrix_in_string.replace("'","").replace('"','')
matrix = numpy.matrix(matrix_in_string)
type = "ScalarSparseMatrix"
logging.debug("CREATE YI ScalarSparseMatrix is %s"%matrix)
exec("matrix="+matrix_in_string)
matrix = numpy.matrix(matrix)
else:
+ matrix_in_string=matrix_in_string.replace("'","").replace('"','')
matrix = numpy.matrix(matrix_in_string)
type = "DiagonalSparseMatrix"
logging.debug("CREATE YI DiagonalSparseMatrix is %s"%matrix)
exec("vector="+vector_in_string)
vector = numpy.matrix(vector)
else:
+ vector_in_string=vector_in_string.replace("'","").replace('"','')
vector = numpy.matrix(vector_in_string)
type = "Vector"
logging.debug("Vector is %s"%vector)
<outport name="stored" type="bool"/>
</inline>
+ <inline name="CreateNumpyVectorFromDataFile">
+ <script><code><![CDATA[
+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
+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"/>
+ </inline>
+
<inline name="CreateNumpyVectorSerieFromString">
<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>
<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
<inline name="SimpleUserAnalysis">
<script><code><![CDATA[
#-*- coding: utf-8 -*-
-import logging
+import sys, logging
logging.debug("TERMINATE Entering in SimpleUserAnalysis")
-ADD = Study.getResults()
+if sys.version_info.major < 3:
+ ADD = Study.getResults()
+else:
+ ADD = Study
# User code is below
]]></code></script>
</inline>
<inline name="ReadForSwitchNode">
- <script><code><![CDATA[
-import logging
+ <script><code><![CDATA[import sys, logging, codecs, pickle
+if sys.version_info.major > 2: import adao
+def loads( data ):
+ return pickle.loads(codecs.decode(data.encode(), "base64"))
logging.debug("CREATE YI Entering in ReadForSwitchNode")
-logging.debug(" with input data : "+str(data["specificParameters"]))
+# logging.debug(" with input data : ",list(data["specificParameters"]))
switch_value = -1
for param in data["specificParameters"]:
+ # logging.debug(" ReadForSwitchNode specificParameters : ",param)
if param["name"] == "switch_value":
- switch_value = int(param["value"])
+ switch_value = int(loads(param["value"]))
logging.debug(" switching to value : "+str(switch_value))
]]></code></script>
<inport name="data" type="SALOME_TYPES/ParametricInput"/>
</inline>
<inline name="ExtractDataNode">
- <script><code><![CDATA[
-import logging
-logging.debug("TERMINATE Entering in ExtractDataNode")
-import cPickle
+ <script><code><![CDATA[import sys, logging, codecs, pickle
+if sys.version_info.major > 2: import adao
+def loads( data ):
+ return pickle.loads(codecs.decode(data.encode(), "base64"))
+logging.debug("TERMINATE Entering in ExtractData/Node")
from daCore.AssimilationStudy import AssimilationStudy
var = None
info = None
for param in data["specificParameters"]:
if param["name"] == "var":
- var = cPickle.loads(param["value"])
+ var = loads(param["value"])
if param["name"] == "info":
- info = param["value"]
+ info = loads(param["value"])
]]></code></script>
<inport name="data" type="SALOME_TYPES/ParametricInput"/>
<outport name="var" type="pyobj"/>
</inline>
<inline name="ObservationNodeFile">
- <script><code><![CDATA[execfile(script)]]></code></script>
+ <script><code><![CDATA[with open(script, 'rb') as file: exec(file.read())]]></code></script>
<inport name="var" type="pyobj"/>
<inport name="info" type="pyobj"/>
<inport name="script" type="string"/>
<inline name="SetObserversNode">
<script><code><![CDATA[
-#print "Setting observers"
+#print("Setting observers")
]]></code></script>
<outport name="has_observers" type="bool"/>
<outport name="observers" type="pyobj"/>