1#! /usr/bin/env python 2 3from __future__ import print_function 4import openturns as ot 5 6 7dim = 2 8 9# We create an empty series 10ts1 = ot.TimeSeries(0, dim) 11ts1.setName('Ts1') 12 13# We populate the empty ts 14for p in range(3): 15 pt = ot.Point(dim) 16 for i in range(dim): 17 pt[i] = 10. * (p + 1) + i 18 ts1.add(pt) 19 20print('ts1=', ts1) 21print('len=', len(ts1)) 22 23# We get the second element of the ts 24secondElement = ts1[1] 25print('second element=', secondElement) 26 27# We set the third element to a valid new element 28newPoint = ot.Point(dim + 1) 29for i in range(dim): 30 newPoint[i + 1] = 1000. * (i + 1) 31ts1[2] = newPoint 32print('ts1=', ts1) 33 34# We get the values of the second element of the ts 35values1 = ts1.getValueAtIndex(1) 36print('values of the second element=', values1) 37 38# We set new values for the second element of the ts 39newValues = values1 * 2. 40ts1.setValueAtIndex(1, newValues) 41values2 = ts1.getValueAtIndex(1) 42print('ts1=', ts1) 43print('modified values of the second element=', 44 values2, ' should be ', newValues) 45 46# We get the values of the second element of the ts 47tree = ot.KDTree(ts1.getMesh().getVertices()) 48values3 = ts1.getValueAtIndex(tree.query([-1.0])) 49print('values at t=-1.0 =', values3) 50values4 = ts1.getValueAtIndex(tree.query([1.45])) 51print('values at t=1.45 =', values4) 52values5 = ts1.getValueAtIndex(tree.query([1.54])) 53print('values at t=1.54 =', values5) 54values6 = ts1.getValueAtIndex(tree.query([14.5])) 55print('values at t=14.5 =', values6) 56 57# We set new values for the third element of the ts 58ts1.setValueAtIndex(tree.query([1.54]), values6 * -1.0) 59print('ts1=', ts1) 60 61ts2 = ot.TimeSeries(10, dim) 62print('ts2=', ts2) 63 64# ts2[5] = point2 65# print 'ts2=', ts2 66 67try: 68 # We get the tenth element of the ts 69 # THIS SHOULD NORMALLY FAIL 70 tenthElement = ts1.at(9) 71except: 72 print('Expected failure') 73 74tg1 = ot.RegularGrid(0.0, 0.1, 11) 75ts3 = ot.TimeSeries(tg1, dim) 76print('ts3=', ts3) 77 78tg2 = ot.RegularGrid(0.0, 0.2, 6) 79ts4 = ot.TimeSeries(tg2, dim) 80print('ts4=', ts4) 81 82# We append a sample to a time series 83ts5 = ot.TimeSeries(3, dim) 84ns1 = ot.Sample(3, [99.9] * dim) 85print('ts5=', ts5) 86ts5.add(ns1) 87print('ts5=', ts5) 88 89# We retrieve the values of the time series as a sample 90ns2 = ts5.getValues() 91print('ns2=', ns2) 92 93# We build a time series from a time grid and a sample 94ns3 = ts4.getValues() 95ts6 = ot.TimeSeries(tg2, ns3) 96print('ts6=', ts6) 97