1.1.1. 06.2.1.2 "put" and "putSlice" functions

putputSlice
IMAS Python :: put
# coding: utf8
#system libraries
import sys
import numpy
import os

#UAL library
import imas
from imas.imasdef import *

# Gets user name and data (major) version
user = os.environ['USER']
imasVersion = os.environ['IMAS_VERSION'][:1]
database = 'test'

# Create a new instance of database
imas_obj = imas.ids(11, 22)
imas_obj.create_env(user, database, imasVersion)  # Create a new instance of database
 
ids = imas_obj.core_profiles

# Mandatory to define this property
ids.ids_properties.homogeneous_time = IDS_TIME_MODE_HOMOGENEOUS

# allocate the IDS structures
ids.global_quantities.ip.resize(10)
ids.time.resize(10)

# Filling fields with TIME-INDEPENDENT  data
ids.ids_properties.comment = 'IDS created by PUT'

# STORE VECTORS OF SIZE N
for i in range(10):
    # Setting values of time depended data
    ids.global_quantities.ip[i] = 2*i
    
    #Do not forget time!!
    ids.time[i] = i
    
#Save data in the database
ids.put() # <= Called outside the loop

#close the pulse file
imas_obj.close()
IMAS Python :: putSlice
#system libraries
import sys
import numpy
import os
 
# UAL library
import imas
from imas.imasdef import *
 
 # Gets user name and data (major) version
user = os.environ['USER']
imasVersion = os.environ['IMAS_VERSION'][:1]
database = 'test'

# Create a new instance of database
imas_obj = imas.ids(11, 22)
imas_obj.create_env(user, database, imasVersion)  # Create a new instance of database
 
ids = imas_obj.core_profiles
 
# Mandatory to define this property
ids.ids_properties.homogeneous_time = IDS_TIME_MODE_HOMOGENEOUS
 
# Filling fields with TIME-INDEPENDENT  data
ids.ids_properties.comment = 'IDS created by putSlice'
 
# Allocate all variables, time coordinate of size 1
time_1 = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0]
vect1DDouble_1 = time_1

ids.time.resize(1)
ids.profiles_1d.resize(1)
ids.global_quantities.ip.resize(1)

# Setting values of time depended data
for i in range(len(time_1)):
    ids.global_quantities.ip[0] = 10*vect1DDouble_1[i]
    
    #Do not forget time!!
    ids.time[0] = time_1[i]
    
    # STORING  DATA 
    if i == 0:
        ids.put()
    else:
        #Append this slice in the database
        ids.putSlice()

#close the pulse file
imas_obj.close()

1.1.2. 06.2.1.2 "get" and "getSlice" functions

getgetSlice
IMAS Python :: get
#system libraries
import sys
import numpy
import os
 
#UAL library
import imas

# Gets user name and data (major) version
user = os.environ['USER']
imasVersion = os.environ['IMAS_VERSION'][:1]
database = 'test'

#Open a database
imas_obj = imas.ids(11, 22)
imas_obj.open_env(user, database, imasVersion) 

ids = imas_obj.core_profiles

#Get data
ids.get()

# VECTORS OF SIZE N
print ('Time  = '  + str(ids.time))
print ('Value  = ' + str(ids.global_quantities.ip))

#close the pulse file
imas_obj.close()
IMAS Python :: getSlice
#system libraries
import sys
import numpy
import os
 
#UAL library
import imas
 
 # Gets user name and data (major) version
user = os.environ['USER']
imasVersion = os.environ['IMAS_VERSION'][:1]
database = 'test'

#Open a database
imas_obj = imas.ids(11,22)
imas_obj.open_env(user, database, imasVersion) 
 
ids = imas_obj.core_profiles
 
#Get data
ids.getSlice(3, 2)
 
#VECTORS of SIZE 1 (!)
print ('Time : ' + str(ids.time))
print ('VALUE = ' + str(ids.global_quantities.ip))
 
#close the pulse file
imas_obj.close()



  • No labels