Beispiel #1
0
def Read_Pinp(NPSIJ):
    with open('NPSIJ.inp') as f:
        string=f.readlines()
    num=0
    PINF=np.zeros((6,NPSIJ))
    PINF[:]=0
    LIJ=gb.get_value('LIJ')
    for line in string:
        if('#' in line):
            pass
        else:
            result=line.strip('\n').split(' ')
            IPS=int(result[0])
            PINF[0,num]=IPS
            JPS=int(result[1])
            PINF[1,num]=JPS
            PCON=float(result[2])*9.81
            PINF[2,num]=PCON
            PID=result[3]
            PINF[3,num]=PID
            PL=LIJ[IPS][JPS]
            PINF[4,num]=PL
            PREND=result[4]
            PINF[5,num]=PREND
            num+=1
    gb.set_value('PINF',PINF)
Beispiel #2
0
def onReceiveWork(socket, params):
    params = params.decode("utf-8"); #解码
    params = getData(params);#去除头尾
    workParams = json.loads(params) #转为JSON
    print (workParams)
    if (workParams.get('type')):
        key = workParams.get('key')
        if (key != None and key != ''):

            if (gv.get_value('work-'+key) != None):
                print ('I am bussy.....')
                return
            clientKey = str(socket.client_address[0])+"-"+str(socket.client_address[1])
            arr = gv.get_value(clientKey)
            if (arr == None):
                arr = []
            arr.append(key)
            gv.set_value(clientKey, arr)


            workingNode = CWorkingNode()
            workingNode.socket = socket
            job = Job(target=onStartingStrategy, args=(socket, workParams, workingNode,))
            workingNode.job = job


            gv.set_value('work-'+key, workingNode)
            job.runThread();
            print ('my new work is starting......', workParams.get('key'))
    else:
        print ('start new work failed......', workParams.get('key'))
Beispiel #3
0
def Read_dxdy(IC,JC):
    '''
        读取网格信息文件 IC行数 JC列数 默认文件名:dxdy.inp
        return Dxp,Dyp,Hmp,Belv,Zbr
    '''
    Dxp=np.zeros((IC,JC))
    Dyp=np.zeros((IC,JC))
    Hmp=np.zeros((IC,JC))
    Belv=np.zeros((IC,JC))
    Zbr=np.zeros((IC,JC))

    pattern=re.compile(r'\s+')

    with open('dxdy.inp','r') as f:
        for line in f:
            if('#' in line):
                pass
            else:
                string=line.lstrip().strip('\n')
                result=np.array(pattern.sub(' ',string).split(' '),dtype=np.float)
                I=int(result[1])-1
                J=int(result[0])-1
                Dxp[I,J]=result[2]
                Dyp[I,J]=result[3]
                Hmp[I,J]=result[4]
                Belv[I,J]=result[5]
                Zbr[I,J]=result[6]
    gb.set_value('Dxp',Dxp)
    gb.set_value('Dyp',Dyp)
    gb.set_value('Hmp',Hmp)
    gb.set_value('Belv',Belv)
    gb.set_value('Zbr',Zbr)
Beispiel #4
0
def Read_Qinp(NQSIJ):
    with open('NQSIJ.inp') as f:
        string=f.readlines()
    num=0
    QINF=np.zeros((6,NQSIJ))
    QINF[:]=0
    LIJ=gb.get_value('LIJ')
    for line in string:
        if('#' in line):
            pass
        else:
            result=line.strip('\n').split(' ')
            IQS=int(result[0])
            QINF[0,num]=IQS
            JQS=int(result[1])
            QINF[1,num]=JQS
            QCON=result[2]
            QINF[2,num]=QCON
            QSFACTOR=result[3]
            QINF[3,num]=QSFACTOR
            QID=result[4]
            QINF[4,num]=QID
            QL=LIJ[IQS][JQS]
            QINF[5,num]=QL
            num+=1
    gb.set_value('QINF',QINF)
Beispiel #5
0
def Read_Pser(Pnum):
    '''
        读取压力边界条件 Pnum 压力边界个数 KC 层数 MPSER 个数 TAPSER 时间序列编号
        PSER 每一个序列对应的时间
        return:PSER MPSER
    '''
    pattern=re.compile(r'\s+')
    MPSER=np.zeros((1,Pnum))
    PSER=np.zeros((1,2))
    with open(r'C:\Users\sky\Desktop\EFDC-MPI-master\SampleModels\CurvilinearHarbourGrid\pser.inp','r') as f:
        string=f.readlines()
    num=0
    for i in range(Pnum):
        while True:
            line=string[num]
            if('#' in line):
                pass
            else:
                break
            num+=1
        stringL=line.lstrip().strip('\n').split("\'")
        result=np.array(pattern.sub(' ',stringL[0].strip()).split(' '),dtype=np.float)
        lineNum=int(result[0])
        MPSER[0][i]=lineNum
        for j in range(lineNum):
            num+=1
            line=string[num]
            stringL=line.lstrip().strip('\n').strip()
            result=np.array(pattern.sub(' ',stringL).split(' '),dtype=np.float)
            PSER=np.vstack((PSER,result))
        num+=1
    np.delete(PSER,0,axis=0)#0删不掉
    gb.set_value('PSER',PSER)
    gb.set_value('MPSER',MPSER)
Beispiel #6
0
def Read_cell(IC,JC):
    '''
        网格读取文件 IC行数 JC列数 默认文件名:cell.inp
        CCell 倒置的网格
    '''

    Cell=np.zeros((IC,JC))
    CCell=np.zeros((IC,JC))
    rull=r'\d{%d}'%(1)
    pattern=re.compile(rull)
    I=0
    with open('cell.inp','r') as f:
        for line in f:
            if('#' in line):
                pass
            else:
                string=line.lstrip().strip('\n').split('  ')
                result=np.array(pattern.findall(string[1]),dtype=np.int16)
                Cell[I]=result
                I+=1
    for i in range(IC-1,-1,-1):
        CCell[i]=Cell[IC-i-1].copy()
    CCCell=np.zeros((IC+1,JC+1))
    for i in range(IC):
        CCCell[i+1][1:]=CCell[i]
    gb.set_value('Cell',CCell)
    gb.set_value('CCell',CCCell)
Beispiel #7
0
def Read_Qser(Qnum,KC):
    '''
        读取流量边界条件 Qnum 流量边界个数 KC 层数 MQSER 时间序列的个数
        return:QSER MQSER
    '''
    pattern=re.compile(r'\s+')
    MQSER=np.arange(Qnum)
    QSER=np.zeros((1,KC+1))
    with open(r'qser.inp','r') as f:
        string=f.readlines()
    num=0
    for i in range(Qnum):
        while True:
            line=string[num]
            if('#' in line):
                pass
            else:
                break
            num+=1
        stringL=line.lstrip().strip('\n').split("\'")
        result=np.array(pattern.sub(' ',stringL[0].strip()).split(' '),dtype=np.float)

        lineNum=int(result[1])
        MQSER[i]=lineNum
        for j in range(lineNum):
            num+=1
            line=string[num]
            stringL=line.lstrip().strip('\n').strip()
            result=np.array(pattern.sub(' ',stringL).split(' '),dtype=np.float)
            QSER=np.vstack((QSER,result))
        num+=1
    gb.set_value('QSER',QSER)
    gb.set_value('MQSER',MQSER)
Beispiel #8
0
def getUserStrategyFromMemory(content):
    tf = re.match(r'^http?:/{2}\w.+$', content.file)
    if tf:
        data = getHtml(content.file)
        if (data == None or len(data) < 10):
            return None
        fileName = '../tmp/' + str(random.randint(10, 100))
        fileitem = fileItem(content.version, fileName)
        gv.set_value(content.scriptId, fileitem)
        import utils
        return utils.import_from_string(data, 'B')
    else:
        return imp.load_source('B', content.file)
Beispiel #9
0
 def doStopJob(self, key):
     workingNode = gv.get_value('work-' + key)
     if (workingNode != None):
         print('I am stoping....:' + key)
         gv.remove_key('work-' + key)
         clientKey = str(workingNode.socket.client_address[0]) + "-" + str(workingNode.socket.client_address[1])
         arr = gv.get_value(clientKey)
         workingNode.job.stop()
         if (arr != None):
             for i in range(len(arr)):
                 if (arr[i] == key):
                     del arr[i]
                     gv.set_value(clientKey, arr)
                     return
Beispiel #10
0
def getUserStrategy(content):
    tf = re.match(r'^http?:/{2}\w.+$', content.file)

    if tf:
        data = getHtml(content.file)
        # 保存到临时文件
        if (data == None or len(data) < 10):
            return None
        fileName = '../tmp/' + str(random.randint(10, 100))
        save_to_file(fileName, data)
        fileitem = fileItem(content.version, fileName)
        gv.set_value(content.scriptId, fileitem)

        return imp.load_source('B', fileName)
    else:
        return imp.load_source('B', content.file)
Beispiel #11
0
UV = np.arange(LC, dtype=np.float)
U1V = np.arange(LC, dtype=np.float)
VU = np.arange(LC, dtype=np.float)
V1U = np.arange(LC, dtype=np.float)
AH = np.zeros((LC, KC), dtype=np.float)
SNLT = 1
Du = np.zeros((LC, KC), dtype=np.float)
Dv = np.zeros((LC, KC), dtype=np.float)
CDZR = np.arange(KC, dtype=np.float)
CDZD = np.arange(KC, dtype=np.float)
SPB = np.arange(LC)
SPB[:] = 1
LBERC = np.arange(NPSIJ + NQSIJ)
LBNRC = np.arange(NPSIJ + NQSIJ)
gb._init()
gb.set_value('LBERC', LBERC)
gb.set_value('LBNRC', LBNRC)
gb.set_value('SPB', SPB)
gb.set_value('CDZR', CDZR)
gb.set_value('CDZD', CDZD)
gb.set_value('Du', Du)
gb.set_value('Dv', Dv)
gb.set_value('SNLT', SNLT)
gb.set_value('KC', KC)
gb.set_value('N', N)
gb.set_value('NQSIJ', NQSIJ)
gb.set_value('NPSIJ', NPSIJ)
gb.set_value('AH', AH)
gb.set_value('AHD', AHD)
gb.set_value('Cell', Cell)
gb.set_value('IC', IC)
Beispiel #12
0
    content.OPEN.insert(0,data.get('open'))
    content.DATE.insert(0,data.get('date'))
    content.HIGH.insert(0, data.get('high'))
    content.LOW.insert(0, data.get('low'))


    content.CLOSE.insert(0,data.get("close"))

    if (data.get('volume')==None):
        content.VOL.insert(0,0)
    else:
        content.VOL.insert(0, data.get('volume'))

    if (data.get('amount')==None):
        content.AMOUNT.insert(0,0)
    else:
        content.AMOUNT.insert(0, data.get('amount'))

print (content.OPEN)
print (content.DATE)
print (content.VOL)
print (content.AMOUNT)
print (datas)
gv._init()
gv.set_value('n1','22222222222222')
B.handle_bar(content)
r = redis.Redis(host='192.168.1.182',password='******',port=6379)
r.set('strategy_key','hello')
print (r.get('strategy_key'))
print (content.a)
print (content.b)
Beispiel #13
0
        print(111111111111)
        print(222222222222)
        print(333333333333)
        print(444444444444)
        print(555555555555)
        print(666666666666)
        time.sleep(1)
        print(777777777777777777)
        print(8888888888888888888)
        print(99999999999999999999999999)
        time.sleep(1)
        print('n2:' + gv.get_value('n2'))


if __name__ == "__main__":
    t = Job(target=print_time)
    t.runThread()

    gv.set_value('n1', '112321312')

    print('n1:' + gv.get_value('n1'))
    gv.set_value('n2', '22222222222')
    i = 0
    while 1:
        time.sleep(1)
        print('im working{}', i)
        i = i + 1
        if (i == 3):
            t.stop()
            print("stoped")
        pass
Beispiel #14
0
def Read_lxly(IC,JC):
    '''
        读取网格节点信息 IC行数,JC列数 默认文件名:lxly.inp
        return Lxp,Lyp,Cue,Cun,Cve,Cvn
    '''
    Lxp=np.zeros((IC,JC))
    Lyp=np.zeros((IC,JC))
    Cue=np.zeros((IC,JC))
    Cve=np.zeros((IC,JC))
    Cun=np.zeros((IC,JC))
    Cvn=np.zeros((IC,JC))

    pattern=re.compile(r'\s+')

    with open('lxly.inp','r') as f:
        for line in f:
            if('#' in line):
                pass
            else:
                string=line.lstrip().strip('\n')
                result=np.array(pattern.sub(' ',string).split(' '),dtype=np.float)
                I=int(result[1])
                J=int(result[0])
                Lxp[I,J]=result[2]
                Lyp[I,J]=result[3]
                ANG1=math.atan2(result[4],result[5])
                ANG2=math.atan2(result[6],result[7])
                ANG=(ANG1+ANG2)/2
                if(sign(ANG1)<=sign(ANG2)):
                    if(abs(ANG1)>1.57 or abs(ANG2)>1.57):
                        ANG=ANG+math.acos(-1)
                Cue[I,J]=math.cos(ANG)
                Cun[I,J]=math.sin(ANG)*-1
                Cve[I,J]=math.sin(ANG)
                Cvn[I,J]=math.cos(ANG)
        gb.set_value('Lxp',Lxp)
        gb.set_value('Lyp',Lyp)
        gb.set_value('Cue',Cue)
        gb.set_value('Cun',Cun)
        gb.set_value('Cve',Cve)
        gb.set_value('Cvn',Cvn)
def send_data():

    gl._init()

    linear_velocity = random.uniform(-1.5, 1.5)
    angular_velocity = random.uniform(-2.4, 2.4)

    base_1 = random.uniform(-pi / 180, pi / 180)
    arm1_2 = random.uniform(-pi / 180, pi / 180)
    arm2_3 = random.uniform(-pi / 180, pi / 180)
    arm3_4 = random.uniform(-pi / 180, pi / 180)
    arm4_5 = random.uniform(-pi / 180, pi / 180)
    arm5_6 = random.uniform(-pi / 180, pi / 180)
    arm6_7 = random.uniform(-pi / 180, pi / 180)

    gl.set_value('l_x', linear_velocity)
    gl.set_value('a_z', angular_velocity)
    gl.set_value('j_s_1', base_1)
    gl.set_value('j_s_2', arm1_2)
    gl.set_value('j_s_3', arm2_3)
    gl.set_value('j_s_4', arm3_4)
    gl.set_value('j_s_5', arm4_5)
    gl.set_value('j_s_6', arm5_6)
    gl.set_value('j_s_7', arm6_7)