Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2007-08-02
帖子: 3
声望力: 0 ![]() |
![]()
1。
for i=1:length(y) if(y(i)<-eps1) y(i)=0; elseif(y(i)>eps1) y(i)=1; else y(i)=0.5+y(i)/(2.0*eps1)+1/(2*pi)*sin(pi*y(i)/eps1); end end 2。%求三重积分,积分区域是[0,1]*[0,1]*[0,1] %每重采用Simpson公式,步长分别为dx,dy,dz %函数在每个结点上的值已求出,放在N(1)*N(2)*N(3)的矩阵data中。 %我是这样求的,但速度很慢!!!! Q2=zeros(N(1),N(2)); %先对z求 for i=1:N(1) for j=1:N(2) Q2(i,j)=data(i,j,1)+data(i,j,N(3)); Q2(i,j)=Q2(i,j)+4*sum(data(i,j,2:2:N(3)))+2*sum(data(i,j,3:2:N(3)-1)); Q2(i,j)=Q2(i,j)*dz/3; end end Q1=zeros(g.N(1),1);%再对y求 for i=1:N(1) Q1(i)=Q2(i,1)+Q2(i,g.N(2)); Q1(i)=Q1(i)+4*sum(Q2(i,2:2:N(2)))+2*sum(Q2(i,3:2:N(2)-1)); Q1(i)=Q1(i)*dy/3; end Q=0; %最后对x求 Q=Q1(1)+Q1(g.N(1)); Q=Q+4*sum(Q1(2:2:N(1)))+2*sum(Q1(3:2:N(1)-1)); Q=Qi*dx/3; 请各位高手看看 |
![]() |
![]() |
![]() |
#2 |
初级会员
注册日期: 2007-05-09
帖子: 29
声望力: 18 ![]() |
![]()
不是每个循环都可以矩阵化的
|
![]() |
![]() |
![]() |
#3 |
初级会员
注册日期: 2007-08-02
帖子: 3
声望力: 0 ![]() |
![]()
怎么就没更多人看呢
|
![]() |
![]() |