#input_file = 'wool_100m.txt' #output_file = 'wool_100m_fer.txt' #variable = 'wool_100m' #journal_file = 'wool_100m.jnl' #journal_file = 'Port_Kembla_10m.jnl' #variable = 'Port_Kembla_10m' #input_file = 'Port_Kembla_10m.txt' #output_file = 'Port_Kembla_10m_fer.txt' #input_file = 'Botany_Bay_10m.txt' #output_file = 'Botany_Bay_fer_10m.txt' #variable = 'Botany_Bay_10m' #journal_file = 'Botany_Bay_10m.jnl' #input_file = 'Botany_Bay_100m.txt' #output_file = 'Botany_Bay_fer_100m.txt' #variable = 'Botany_Bay_100m' #journal_file = 'Botany_Bay_100m.jnl' #input_file = 'Botany_Bay_200m.txt' #output_file = 'Botany_Bay_fer_200m.txt' #variable = 'Botany_Bay_200m' #journal_file = 'Botany_Bay_200m.jnl' input_file = 'wool_200m.txt' output_file = 'wool_200m_fer.txt' variable = 'wool_200m' journal_file = 'wool_200m.jnl' #input_file = 'aus_coast_most_smooth.txt' #output_file = 'aus_coast_fer_smooth.txt' in_file = open(input_file,'r') print 'reading header' nx_ny_str = in_file.readline() nx_str,ny_str = nx_ny_str.split() nx = int(nx_str) ny = int(ny_str) h1_list=[] for i in range(nx): h1_list.append(in_file.readline()) x_min = float(h1_list[0]) x_max = float(h1_list[-1]) x_inc = (x_max-x_min)*1.0000001/float(nx-1) h2_list=[] for j in range(ny): h2_list.append(in_file.readline()) y_min = float(h2_list[-1]) y_max = float(h2_list[0]) y_inc = (y_max-y_min)*1.00000001/float(ny-1) print 'reading depths' in_depth_list = in_file.readlines() in_file.close() out_depth_list = [] for j in range(ny): out_depth_list.append('') print 'processing depths' k=1 for in_line in in_depth_list: for string in in_line.split(): #j = k/nx out_depth_list[(k-1)/nx]=out_depth_list[(k-1)/nx]+('%s '%string) if k-(k/nx)*nx ==0: out_depth_list[(k-1)/nx]=out_depth_list[(k-1)/nx]+'\n' if k==nx*ny: break k+=1 in_file.close() out_depth_list.reverse() depth_list = out_depth_list print 'writing results' out_file = open(output_file,'w') for line in depth_list: out_file.write(line) out_file.close() jnl_file = open(journal_file,'w') jnl_file.write('DEFINE AXIS/X=%10.10fe:%10.10fe:%10.10f/unit=degree xlong\n'%(x_min,x_max,x_inc)) jnl_file.write('DEFINE AXIS/Y=%10.10fn:%10.10fn:%10.10f/unit=degree ylat\n'%(y_min,y_max,y_inc)) jnl_file.write('DEFINE GRID/x=xlong/y=ylat Pacific\n') jnl_file.write('FILE/VARIABLES=%s/COLUMNS=%i/GRID=Pacific %s\n'%(variable,nx,output_file)) jnl_file.write('shade/pal=land_sea/lev=(-60,60,1) -1*%s\n'%variable) jnl_file.close()