python提取计算结果的最大最小值及其坐标

我们在fluent当中后处理的时候,可以通过fluent本身得到某些物理量的最大值和最小值,但是我们却无法确定这些最大值和最小值的具体位置。其实我们可以将求解数据导出以后,借助python求得最大值和最小值对应的具体坐标点

 python提取计算结果的最大最小值及其坐标

python提取计算结果的最大最小值及其坐标
python提取计算结果的最大最小值及其坐标

编写如下的脚本


#!/usr/bin/python

-*- coding: UTF-8 -*-

 

import pandas as pd

from pandas import Series,DataFrame

 

#读取导出的ASCII文件

data=pd.read_csv(r"/home/dell/new/contour/Cylinder")

velocity=data[data.columns[3]]  

sort_data=data.sort_index(by=data.columns[3]) #升序

min_value=sorted(velocity)[0]  #选取最小值

max_value=sorted(velocity)[-1]  #选取最大值

count_velocity=pd.value_counts(velocity) #首先对速度值进行统计

sort_velocity=count_velocity.sort_index() #对统计的速度值按照升序排列

min_total_point=sort_velocity.values[0] #最小值点的个数

max_total_point=sort_velocity.values[-1] #最大值点的个数

print "**********************"

print "最小值为:%g"   min_value

print "最小值点共有:%d  min_total_point

print "最小值点的位置为".center(30,"*")

new_index=[i+1 for in range(min_total_point)]

print DataFrame(sort_data.iloc[0:min_total_point,[1,2]].values,index=new_index,columns=[u"x坐标",u"y坐标"])

new_index=[i+1 for in range(max_total_point)]

print "**********************"

print "**********************"

print "最大值为:%g"  max_value

print "最大点共有:%d max_total_point

print "最大值点的位置为".center(30,"*")

print DataFrame(sort_data.iloc[-max_total_point:,[1,2]].values,index=new_index,columns=[u"x坐标",u"y坐标"])

print "**********************" 

python提取计算结果的最大最小值及其坐标

posted @ 2016-11-27 04:04  硫酸亚铜  阅读(1917)  评论(0编辑  收藏  举报