楼主: ntf198602
9475 8

[问答] 请教用matlab求含有积分的方程 [推广有奖]

  • 1关注
  • 1粉丝

已卖:1622份资源

教授

42%

还不是VIP/贵宾

-

威望
0
论坛币
5583 个
通用积分
41.9754
学术水平
3 点
热心指数
8 点
信用等级
3 点
经验
15204 点
帖子
955
精华
0
在线时间
1470 小时
注册时间
2009-3-28
最后登录
2024-12-27

楼主
ntf198602 发表于 2011-3-23 15:15:02 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
请教各位,如何用matlab求含有积分的方程和画图呢?如下图
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:MATLAB matla atlab Atl Lab 请教 MATLAB 方程 积分

clip_image002.jpg (13.88 KB)

clip_image002.jpg

沙发
qibbxxt 发表于 2011-3-23 16:10:16
  1. clear;clc;close all
  2. [p,c] =deal(8,2);
  3. [m,s] = deal(120,10);
  4. lam = @(q) (2*p*(1-arrayfun(@(t)quad(@(x)normpdf(x,m,s),0,t),q))-2*c)./(p*q.*normpdf(q,m,s)) -2;
  5. q = linspace(1,100);
  6. semilogy(q,lam(q));
  7. qq = interp1(lam(q),q,0.8)
复制代码

  1. qq =
  2.    99.8415
  3. >>
复制代码

2011032302.jpg (15.46 KB)

2011032302.jpg

藤椅
ntf198602 发表于 2011-3-23 16:18:21
非常感谢楼上,真是高手

板凳
ntf198602 发表于 2011-3-23 19:06:41
只是不明白matlab里面积分怎么表示,为什么是这样的:arrayfun(@(t)quad(@(x)normpdf(x,m,s),0,t),q))
这是什么意思啊?我记得有一个int函数啊。还有,这地方是可以将表达式显性表示,也就是南八大s可以等于多少显性表示出来,如果不能显性表示,也就是隐函数形式,matlab不知道是否可以画出图形或者计算出来呢?

报纸
qibbxxt 发表于 2011-3-24 09:14:19
4# ntf198602
Matlab有强大的联机帮助系统
关于函数的用法,可以用doc 函数名 来查看具体信息
根据你的公式,ls是可以显示表示的

地板
ntf198602 发表于 2011-3-24 10:40:08
还有一个问题请教一下楼上,
clear;clc;close all
[p,As] =deal(8,0.8);
[m,s] = deal(120,10);
lam =@(q)(2*p*(1-arrayfun(@(t)quad(@(x)normpdf(x,m,s),0,t),q))-(2+As)*p*q.*normpdf(q,m,s))./2;
q =linspace(1,10000);
qq=interp1(lam(q),q,0.8)


[c,As] =deal(2,0.8);
[m,s] = deal(120,10);
lam =@(q)2*c./(2*(1-arrayfun(@(t)quad(@(x)normpdf(x,m,s),0,t),q))-(2+As)*q.*normpdf(q,m,s));
q = 1:0.01:100;
qq=interp1(lam(q),q,7.8)

它老是出现说:??? Error using ==> interp1
The values of X should be distinct.
请问这是怎么回事啊
我的程序跟您的可是基本上差不多的,我是根据您的改的,那这个是为什么呢?

7
qibbxxt 发表于 2011-3-24 15:40:48
  1. [c,As] =deal(2,0.8);
  2. [m,s] = deal(120,10);
  3. lam =@(q,s0)2*c./(2*(1-arrayfun(@(t)quad(@(x)normpdf(x,m,s),0,t),q))-(2+As)*q.*normpdf(q,m,s))-s0;
  4. qq = fsolve(@(q)lam(q,7.8),100)
复制代码
6# ntf198602

8
matlab-007 发表于 2014-12-2 19:44:22
matlab解决这个问题
syms q
fq=exp(-((q-120)^2)/200)/(10*sqrt(2*pi));
Fq=int(fq,0,q);
y=solve('16*(1-Fq)-(2+y)*8*q*fq=4','y');
y=simple(subs(y))

y =

- (3527765676120163*exp((q - 120)^2/200)*((2814749767106560*2^(1/2)*pi^(1/2)*(erf((3*200^(1/2))/5) + erf((200^(1/2)*q)/200 - (3*200^(1/2))/5)))/3527765676120163 - 3))/(281474976710656*q) - 2
y1=- (3527765676120163*exp((q - 120).^2/200)*((2814749767106560*2^(1/2)*pi^(1/2)*(erf((3*200^(1/2))/5) + erf((200^(1/2)*q)/200 - (3*200^(1/2))/5)))/3527765676120163 - 3))./(281474976710656*q) - 2;
ezplot(y1)

solve(['0.8=',char(y)],'q')

ans =

99.823065835841833119893123898585

9
糖泊虎 发表于 2016-4-21 11:09:24
请求帮忙,现已知 816109565414774095.jpg ,怎样利用MATLAB作出Q关于t的函数图像呢?   
a,b都是已知的范围

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-6 02:32