24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1749  |  回复: 21
本帖产生 1 个 数学EPI ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

丫头丫头2014

银虫 (小有名气)

[求助] 求助——积分求面积遇到问题已有3人参与

如图,x2,y2为转子方程,我想求x2,y2曲线围成的面积,用matlab编写程序如下:
z1=6;
z2=z1-1;
R=48.78;
r=8.13;
Q=R-r;
e=7.05;
syms theta
k=12.6;
f=r/e;
a=sin(z1*theta);
b=f+cos(z1*theta);
m=atan(a./b);
p=m-theta;       %theta
c=sin(theta+p);
n=asin(f*c);
o=n-p;          %phi
g=(z1/z2)*o;    %psi

x2t=Q*sin(theta)+e*sin(z2*theta)-k*sin(p);       %原始齿形
y2t=Q*cos(theta)-e*cos(z2*theta)+k*cos(p);
x3t=x2t.*cos(o-g)-y2t.*sin(o-g)-e*sin(g);        %共轭齿形
y3t=x2t.*sin(o-g)+y2t.*cos(o-g)-e*cos(g);


d2=diff(x3t);
ds2=inline(y3t.*d2);
s2=5*quadl(ds2,0,2*pi/5)
但是运行出来有问题,请高手指点,转子的面积该如何求,先谢谢啦

求助——积分求面积遇到问题
转子方程.png
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
丫头丫头2014: 金币+10, ★★★★★最佳答案, 真的很棒 困扰我已久的问题解决了 谢谢 2015-07-21 08:51:32
引用回帖:
8楼: Originally posted by 丫头丫头2014 at 2015-07-20 14:35:49
您之前给出的两个图形是不正确的 我在文本中附上了正确的图片,两个图形都是要0-2pi内闭合曲线围成的面积,定子方程在0-2pi是差一点点闭合的,这个是为什么,我也不是特别清楚,转子的方程,是依赖定子方程产生的, ...

从新画了下, 发现定子:

求助——积分求面积遇到问题-1

转子曲线:

求助——积分求面积遇到问题-2

我没有用Matlab, 因为不喜欢, 用Mathematica计算, 也是Green定理求面积,

代码如下:
CODE:
ClearAll["Global`*"];
R = 4878/100;
r = 813/100;
z1 = R/r;
z2 = z1 - 1;
e = 705/100;
f = r/e;
re = 126/10;
\[Theta] = ArcTan[Sin[z1 \[Tau]]/(f + Cos[z1 \[Tau]])] - \[Tau];
\[CurlyPhi] = ArcSin[f Sin[\[Theta] + \[Tau]]] - \[Theta];
\[Psi] = z1/(z1 - 1) \[CurlyPhi];
curve01 = {(R - r) Sin[\[Tau]] + e Sin[z2 \[Tau]] -
     re Sin[\[Theta]], (R - r) Cos[\[Tau]] - e Cos[z2 \[Tau]] +
     re Cos[\[Theta]]} // FullSimplify;
curve02 = {curve01[[1]] Cos[\[CurlyPhi] - \[Psi]] -
     curve01[[2]] Sin[\[CurlyPhi] - \[Psi]] - e Sin[\[Psi]],
    curve01[[1]] Sin[\[CurlyPhi] - \[Psi]] +
     curve01[[2]] Cos[\[CurlyPhi] - \[Psi]] - e Cos[\[Psi]]} //
   Simplify;

base = ParametricPlot[Evaluate[curve01], {\[Tau], 0, 2 \[Pi]},
   Exclusions -> None, MaxRecursion -> 15, PlotPoints -> 1500,
   AxesStyle -> Arrowheads[.035],
   AxesLabel -> {Style[#, Black, Bold, 21 ,
        FontFamily -> "Times New Roman", Italic] &@"x",
     Style[#, Black, Thick, 21 , FontFamily -> "Times New Roman",
        Italic] &@"y"},
   TicksStyle -> Directive[Black, 14, FontFamily -> "Arial"],
   PlotRangePadding -> Scaled[.1], ImageSize -> 450] /.
  Line[x_] :> {Blue, Thickness[.001], Line[x]}


ParametricPlot[Evaluate[curve02], {\[Tau], 0, 2 \[Pi]},
  Exclusions -> None, MaxRecursion -> 15, PlotPoints -> 1500,
  AxesStyle -> Arrowheads[.035],
  AxesLabel -> {Style[#, Black, Bold, 21 ,
       FontFamily -> "Times New Roman", Italic] &@"x",
    Style[#, Black, Thick, 21 , FontFamily -> "Times New Roman",
       Italic] &@"y"},
  TicksStyle -> Directive[Black, 14, FontFamily -> "Arial"],
  PlotRangePadding -> Scaled[.1], ImageSize -> 450] /.
Line[x_] :> {Red, Thickness[.001], Line[x]}

NIntegrate[
   curve01[[2]] D[curve01[[1]], \[Tau]] -
    curve01[[1]] D[curve01[[2]], \[Tau]], {\[Tau], 0, 2 Pi}]/2 //
NumberForm[#, 10] &

NIntegrate[
   curve02[[2]] D[curve02[[1]], \[Tau]] -
    curve02[[1]] D[curve02[[2]], \[Tau]], {\[Tau],
    0, \[Tau] /. FindRoot[curve02[[2]] == 783/20, {\[Tau], 1.6 Pi}]},
   PrecisionGoal -> 6, Method -> "LocalAdaptive"]/2 //
NumberForm[#, 10] &

你找个Mathematica运行下就可以了:

面积分别是
8768.856217

6557.980067

变成Matlab代码似乎没有特别的必要,解这种问题, Matlab似乎并没有特殊的优势,只不过用的人多而已.

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

ส็็็็็็็็็็็็็็็็็็็็
10楼2015-07-20 19:13:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 22 个回答

wurongjun

专家顾问 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
以前回答过这个类似问题!
quad函数里面调用的函数你没有写好,写成表达式啦!
要写成function形式的!
关键是你的问题里面其他参数!
这个新版的Matlab里面已经可以解决啦!
搜索匿名函数的用法!完全可以解决你的问题!
善恶到头终有报,人间正道是沧桑.
2楼2015-07-17 11:09:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

感谢参与,应助指数 +1
1. 问问题自己先把问题尽可能描述清清楚楚很重要;

2. 定子曲线方程是一条闭合的曲线
求助——积分求面积遇到问题-3

但是转子曲线方程无法在0~2 pi之内闭合
求助——积分求面积遇到问题-4

3. 你自己的代码除了有一些已知量的赋值可参考之外,其它几乎毫无意义,而且theta跟tau混用,描述不一致而让人思维混乱;

你求的到底是哪个面积?
ส็็็็็็็็็็็็็็็็็็็็
3楼2015-07-17 11:18:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

引用回帖:
3楼: Originally posted by cooooldog at 2015-07-17 11:18:14
1. 问问题自己先把问题尽可能描述清清楚楚很重要;

2. 定子曲线方程是一条闭合的曲线


但是转子曲线方程无法在0~2 pi之内闭合


3. 你自己的代码除了有一些已知量的赋值可参考之外,其它几乎毫无意义,而且t ...

下面的曲线外轮廓所包围的面积用数值近似计算得到大约是
7936.86
ส็็็็็็็็็็็็็็็็็็็็
4楼2015-07-18 08:32:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见