1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- #!/usr/bin/env python3
- # -*- coding: utf-8 -*-
- """
- Created on Tue Feb 23 10:04:55 2021
- @author: Oscar Portoles
- """
- import numpy as np
- import myKAOctrl_basic as udp
- import time
- import matplotlib.pyplot as pl
- import sys
- tRun = 1000
- tDisc = 200
- nModel = 25
- localC = np.arange(0.1, 1.6, 0.1)
- globalC = np.arange(0,2.,0.05)
- pathSave = './dataSave/Globals_v5ms_grid_globalC_co_.npz'
- gMet = np.zeros((len(localC), len(globalC)))
- lMet = np.zeros((len(localC), len(globalC)))
- gMetT = np.zeros((len(localC), len(globalC), (tRun-tDisc)*100, nModel), dtype=np.float16)
- for iXlC, lC in enumerate(localC):
- for iXgC, gC in enumerate(globalC):
- kao = udp.KAOmodel()
- kao.tMax = tRun
- kao.tDiscard = tDisc
- kao.nModel = nModel
- kao.globalC = np.float64(gC)
- kao.localC = np.float64(lC)
- kao.interHsc = 1
- kao.velocity = 5
- kao.iniCond = 1 # random
- kao.runModel()
- z_abs = udp.KAOmodel._absZ(kao.z[:, int(tDisc*kao.fs):,:])
- z_norm = kao.z[:, int(tDisc*kao.fs):,:] / z_abs # makes all modulus equal to one
- # global ordedr with local order == 1 at time t
- kop = np.abs( np.mean( z_norm, axis = 0 ))
- gMetT[iXlC, iXgC,:,:] = np.float16(kop)
- # orders, metaL = kao.doKuramotoOrder(kao.z[:, int(tDisc*kao.fs):,:])
- gMet[iXlC, iXgC] = np.mean(np.std(kop, axis=0))
- lMet[iXlC, iXgC] = np.mean(np.std(z_abs,axis=1))
- np.savez(pathSave, gMet=gMet, lMet=lMet, localC=localC, globalC=globalC, gMetT=gMetT)
|