Beispiel #1
0
def run_analysis(filename,mode,method):
    click.echo('Reading file : %s'%filename)
    data = IOfile.parsing_input_file(filename)
    click.echo('Creating class...')
    theclass = TFC(data)
    click.echo('Calculating transfer function using %s method'%method)
    if method=='tf_kramer286_sh':
        theclass.tf_kramer286_sh()
    elif method=='tf_knopoff_sh':
        theclass.tf_knopoff_sh()
    elif method=='tf_knopoff_sh_adv':
        theclass.tf_knopoff_sh_adv()
        
    plt.plot(theclass.freq,np.abs(theclass.tf[0]),label=method)
    plt.xlabel('frequency (Hz)')
    plt.ylabel('Amplification')
    plt.yscale('log')
    plt.xscale('log')
    plt.grid(True,which='both')
    plt.legend(loc='best',fancybox=True,framealpha=0.5)
    #plt.axis('tight')
    plt.autoscale(True,axis='x',tight=True)
    plt.tight_layout()
    plt.savefig('test.png', format='png')
    click.echo(click.style('Calculation has been finished!',fg='green'))
Beispiel #2
0
def calc_knopoff_sh(data):
    theclass = TFC(data)
    theclass.tf_knopoff_sh()
    return theclass
Beispiel #3
0
 #004 - Knopoff SH simple Transfer Function
 print('004 - knopoff SH simple TF')
 f.write('004 - knopoff SH simple TF\n')
 f.write('fID\telapsedrd\tstdevrd\telapsed\tstdev\tsizetf\n')
 for iid in inputfileid:
     elapsedRead = []
     elapsedTF = []
     elapsedTFbytes = []
     for i in range(ntest):        
         start = time.clock()
         data = IOfile.parsing_input_file(inputlist[iid])
         elapsedRead.append(time.clock()-start)
         data['inputmotion']='dirac.dat'
         theclass = TFC(data)
         start = time.clock()
         theclass.tf_knopoff_sh()
         elapsedTF.append(time.clock()-start)
         elapsedTFbytes.append(numpy.array(theclass.tf).nbytes)
     f.write('%d\t%.2e\t%.2e\t%.2e\t%.2e\t%d\t\n'%(iid,np.mean(elapsedRead),np.std(elapsedRead),
                                                 np.mean(elapsedTF),np.std(elapsedTF),np.max(elapsedTFbytes)))
 f.write('\n')
     
 print(' --> OK')
 
 #005 - Knopoff SH advance Transfer Function
 print('005 - knopoff SH advance TF')
 f.write('005 - knopoff SH advance TF\n')
 f.write('fID\telapsedrd\tstdevrd\telapsed\tstdev\tsizetf\n')
 for iid in inputfileid:
     elapsedRead = []
     elapsedTF = []