请问当定积分中变量为lnx时,怎么用matlab进行求解

img

img


第二张图是我要求解的方程,但用int函数总是报错,不知道该如何解决这个问题

你好,你需要把你的定积分转化一下:
q2*dlog(p2)转化成q2/p2*d(p2),然后上下限变成p2的上下限,即1到exp(p20);
同理q1*dlog(p1)变成q1/p1*d(p1),然后上下限变成p1的上下限,即1到exp(p10);
最后形成如下的代码:

syms p1 p2 p10 p20 real positive
q1 = 5*p1^0.65/(1+0.1*p1^0.65);
q2 = 2*p2^0.7/(1+0.2*p2^0.7);
% dlnp2=1/p2dp2
eq = int(q2/p2, p2, 1, exp(p20))== int(q1/p1,p1,0,exp(p10));
sol= solve(eq, p10,'ReturnConditions' ,1);
p10 = sol.p10

p10即是你需要的结果:

p10 =
 
(20*log((5*6^(57/70)*(exp((7*p20)/10) + 5)^(13/70))/3 - 10))/13

如有帮助还望题主给个采纳支持一下答主答题呢