24小时热门版块排行榜    

查看: 2203  |  回复: 11

拐点

铁虫 (小有名气)

[求助] 求助,我现在要求离散点的定积分,请问可以通过1 stopt或者其他软件实现吗? 已有1人参与

数据已经附上,第一列就是r,第二列是σz,求这个定积分的结果。求方法,因为有很多组数据。谢谢大神~~~

求助,我现在要求离散点的定积分,请问可以通过1 stopt或者其他软件实现吗?
LZ$$5[0J[Y0EW}PIQ[00(GC.jpg
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

拐点

铁虫 (小有名气)

数据

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 新建文本文档.txt
  • 2016-06-03 14:39:41, 433 bytes
2楼2016-06-03 14:40:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijf517

木虫 (小有名气)

自己写程序吧。最简单的,可以用梯形积分法,就是计算一系列梯形面积加起来。搞计算模拟的,没这点最基本的数值分析技能,在科研路上会受到很多牵制。随便找本数值分析的书都有这方面内容

发自小木虫Android客户端
3楼2016-06-03 14:49:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

拐点

铁虫 (小有名气)

引用回帖:
3楼: Originally posted by lijf517 at 2016-06-03 14:49:16
自己写程序吧。最简单的,可以用梯形积分法,就是计算一系列梯形面积加起来。搞计算模拟的,没这点最基本的数值分析技能,在科研路上会受到很多牵制。随便找本数值分析的书都有这方面内容
...

我不是学这个的,只是需要有些数据,需要量化表达出来,文献里使用积分表达的。
4楼2016-06-03 15:40:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijf517

木虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
引用回帖:
4楼: Originally posted by 拐点 at 2016-06-03 15:40:47
我不是学这个的,只是需要有些数据,需要量化表达出来,文献里使用积分表达的。...

我看你还在拟合J-C本构的参数,说明我们专业一致啊。这点数值模拟的基本功还是得学学吧。下面是我用python写的代码,python是免费软件,matlab也可以做类似工作。

from scipy import integrate
import numpy as np

data = np.loadtxt("data.txt"
rr      = data[:,  0]
sigZ = data[:,  1]

fr      = rr*np.abs(sigZ)
intgl = 2.0*np.pi*integrate.trapz(fr,  rr)
print "The integral is ", intgl

运行结果显示,最终积分值为129534.146566

发自小木虫Android客户端

» 本帖已获得的红花(最新10朵)

5楼2016-06-03 16:41:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

拐点

铁虫 (小有名气)

送红花一朵
内容已删除
6楼2016-06-04 20:53:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

拐点

铁虫 (小有名气)

引用回帖:
6楼: Originally posted by 拐点 at 2016-06-04 20:53:50
首先谢谢,还有,上面代码可以在matlab直接运行吗,我也不知道怎么说,本身学塑性成型,后来也是稀里糊涂学了deform,课题也是去年11月才定的,现在是研2了,下学期就找工作了,只求尽快把毕业论文弄完,没多少时间 ...

r=[38.19        38.520745        38.85149        39.182235        39.512981        39.843726        40.174471        40.505216        40.835961        41.166706        41.497451        41.828197        42.158942        42.489687        42.820432        43.151177        43.481922        43.812667        44.143413        44.474158
]

r =

  Columns 1 through 15

   38.1900   38.5207   38.8515   39.1822   39.5130   39.8437   40.1745   40.5052   40.8360   41.1667   41.4975   41.8282   42.1589   42.4897   42.8204

  Columns 16 through 20

   43.1512   43.4819   43.8127   44.1434   44.4742

z=[169.068823
149.155847
129.816022
115.859568
101.439384
85.497986
75.478163
77.166082
86.332299
104.642294
93.414629
57.866729
18.946838
-21.822963
-43.7857
-58.993042
-63.724287
-66.180258
-64.728137
-62.85555
];
y=r*abs(z);
s=trapz(r,y);
在matlab,我不知道错在哪里?能指导下吗
7楼2016-06-06 13:05:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

拐点

铁虫 (小有名气)

引用回帖:
5楼: Originally posted by lijf517 at 2016-06-03 16:41:36
我看你还在拟合J-C本构的参数,说明我们专业一致啊。这点数值模拟的基本功还是得学学吧。下面是我用python写的代码,python是免费软件,matlab也可以做类似工作。
from scipy import integrate
import numpy as n ...

r=[38.19        38.520745        38.85149        39.182235        39.512981        39.843726        40.174471        40.505216        40.835961        41.166706        41.497451        41.828197        42.158942        42.489687        42.820432        43.151177        43.481922        43.812667        44.143413        44.474158
]

r =

  Columns 1 through 15

   38.1900   38.5207   38.8515   39.1822   39.5130   39.8437   40.1745   40.5052   40.8360   41.1667   41.4975   41.8282   42.1589   42.4897   42.8204

  Columns 16 through 20

   43.1512   43.4819   43.8127   44.1434   44.4742

z=[169.068823
149.155847
129.816022
115.859568
101.439384
85.497986
75.478163
77.166082
86.332299
104.642294
93.414629
57.866729
18.946838
-21.822963
-43.7857
-58.993042
-63.724287
-66.180258
-64.728137
-62.85555
];
y=r*abs(z);
s=trapz(r,y);
在matlab,我不知道错在哪里?能指导下吗
8楼2016-06-06 13:06:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

拐点

铁虫 (小有名气)

引用回帖:
3楼: Originally posted by lijf517 at 2016-06-03 14:49:16
自己写程序吧。最简单的,可以用梯形积分法,就是计算一系列梯形面积加起来。搞计算模拟的,没这点最基本的数值分析技能,在科研路上会受到很多牵制。随便找本数值分析的书都有这方面内容
...

终于弄出来了,结果   1.2953e+05,
9楼2016-06-06 14:35:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijf517

木虫 (小有名气)

嗯,matlab的语法以及调用的函数名称与我上面贴的python代码略有差异。为尊重他人版权,我现在主要在linux下做模拟,使用的都是开源免费的软件,所以不再用matlab了。你其实也可以用matlab中的函数把文件中的数据读进数组,不需要一个个输进代码,容易出错。datFmt = '%f %f';  sizeDat = [2 Inf];  fileID = fopen('data.txt', 'r');  data = fscanf(fileID, dataFmt,  sizeDat); data = data'; 这样就把文件data.txt中的数据读进数组data了

发自小木虫Android客户端
10楼2016-06-06 15:32:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 拐点 的主题更新
信息提示
请填处理意见