24小时热门版块排行榜    

查看: 748  |  回复: 3
当前主题已经存档。

dingzemin

银虫 (正式写手)

[交流] 【求助】matlab求解方程,方程里面含有psi函数(ploygamma函数),不好解啊

求解函数:
y=1-x/5-1.44*{0.25/x-0.05[-psi(1)+0.5*psi(1-0.1*x)+ 0.5*psi(1+0.1*x)]}

其中psi是ploygamma函数,在matlab里面可以直接调用。y是给定的值,其变化范围是[-0.5, 1], x是要求出来的变量。对应每一个y,存在两个x值。我不知道怎么求解这两个x的值。调用solve函数也解不出来。

我试着按照常规思路求解了一下:先把y取成一个定值0.1,调用solve求解,如下:
y=0.1
f=solve('1-x/5-1.44*(0.25/x-0.05*(-psi(1)+1/2*psi(1-x/10)+1/2*psi(1+x/10)))-y', 'x')
结果显示是:Warning: Explicit solution could not be found.

看到网上有人建议将这个问题看成是一个非线性最优化问题,即求得一个x,使得方程左端函数值与右端常数值的平方和最小。函数如下:
y=0.1
f=@(x)norm(1-x/5-1.44*(0.25/x-0.05*(-psi(1)+1/2*Psi(1-x/10)+1/2*Psi(1+x/10)))-y)^2;
[x,err]=fminsearch(f,1e-5)
但是这种方法得出的x值只有一个值,实际上x存在两个值。改怎么解决呢?

请大家帮忙啊!!

[ Last edited by dingzemin on 2010-1-17 at 20:11 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

change0618

铁杆木虫 (著名写手)

方丈大师

★ ★ ★ ★ ★
sunxiao(金币+3,VIP+0):谢谢参与,欢迎常来。签名档说的很有道理啊 1-18 04:34
dingzemin(金币+2,VIP+0): 1-18 13:06
>> x=0:0.1:10;
>> y=1-x/5-1.44*(0.25./x-0.05*(-psi(1)+1/2*psi(1-x/10)+1/2*psi(1+x/10)));
>> plot(x,y)
>> grid on
2楼2010-01-17 22:36:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

change0618

铁杆木虫 (著名写手)

方丈大师

★ ★ ★ ★ ★
sunxiao(金币+2,VIP+0):谢谢详细解释,欢迎常来 1-18 04:35
dingzemin(金币+3,VIP+0): 1-18 13:06
通过图片可以知道这个方程x=[0 10],y=[-inf 0.4616].最高点为(1.3 0.4616)(放大图片可以看出来),当y<0.4614时,x有两个值,分别在[0 1.3]及[1.3 10]区间上。

当y=0.1时,可以采用以下求出两个解

>> f=fsolve('1-x/5-1.44*(0.25/x-0.05*(-psi(1)+1/2*psi(1-x/10)+1/2*psi(1+x/10)))-0.1', 0.5)
Optimization terminated: first-order optimality is less than options.TolFun.

f =

   0.443865675644518

>> f=fsolve('1-x/5-1.44*(0.25/x-0.05*(-psi(1)+1/2*psi(1-x/10)+1/2*psi(1+x/10)))-0.1', 3)
Optimization terminated: first-order optimality is less than options.TolFun.

f =

   3.967250801226048
3楼2010-01-17 22:40:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingzemin

银虫 (正式写手)

嗯   就是分两个部分分别求解!谢谢啊!
4楼2010-01-18 13:05:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 dingzemin 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] filecode +8 documentary 2026-08-10 8/400 2026-08-10 19:20 by loufangrui
[基金申请] 帮忙看看fileCode +3 wwncly 2026-08-10 5/250 2026-08-10 19:06 by 2000zf36392
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +10 yufeiwaner 2026-08-09 11/550 2026-08-10 18:47 by yufeiwaner
[基金申请] 关于代码变化问题,想知道的进来 +17 且听虎啸 2026-08-07 24/1200 2026-08-10 18:35 by zhangduo2008
[基金申请] 关于Filecode分析方法 +3 majunge000 2026-08-10 3/150 2026-08-10 15:46 by lch2012
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +14 Lanmanbaby 2026-08-09 22/1100 2026-08-10 14:57 by wwncly
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 化学口download_prp&amp;fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
信息提示
请填处理意见