含有特殊函数的方程组联立求解,求帮助,求帮助
mathematica吧
全部回复
仅看楼主
level 3
La啦啦钦 楼主
在本人专业方向里面根据理论计算公式求解的一组方程组,因为未知变量与特殊函数联系起来,所以使用了多种
解方程的方法都没有奏效。请求分析帮助,或者指导求解应该沿着什么方式。
其中 1 式 和 2 式 是方程的主要限定条件
未知数 r 和 v 也是主要变量
i 和 p 是可以用r 和 v 表示的变量
其中 3 式 对 i 的定义涉及到了特殊函数
请求向大佬咨询下 这种变量里带有特殊函数的方程组 应该用什么求解指令
主要是想求解方程的数值解 , 求解到 r 和 v的近似解
r 约等于(1~2)*10^-6
v约等于(1~2)*10^-4 (借鉴别人文章里的计算结果)
下面插入 方程的代码形式
2020年06月04日 01点06分 1
level 3
La啦啦钦 楼主
代码形式:
FindRoot[{(21.12*0.66*i)/(1 - 0.66*i) + 1.9/(10^7*r) == 5,
((v*r^2)/(3*(95/1056)/10^16*(1 - 0.66*i)) == 4*Pi^2),
(i == Sqrt[Pi]*Sqrt[p]*E^p*Erfc[Sqrt[p]]), p == (r*v)/(6/10^9)},
{{v, 0}, {r, 0}}]
2020年06月04日 01点06分 2
依次使用过 Solve NSolve FindRoot 等指令,
2020年06月04日 01点06分
level 7
既然是四个方程那就应该写四个未知数,有个中文的逗号自己检查一下,最后FindRoot你得结合问题背景给个差不多的初值才能求解。
2020年06月04日 07点06分 8
我修改了逗号,将所求自变量设置为4个,但是初始值的赋值我只知道 V的值在10^-5 数量级和 r 的值在10^-6 数量级。设定之后还是没办法求出方程的近似解
2020年06月04日 09点06分
我把传统格式转换为代码格式怎么就求解出来了。谢谢帮助
2020年06月04日 09点06分
level 3
La啦啦钦 楼主
2020年06月04日 09点06分 9
@La啦啦钦 明显用了中文括号……你不觉得警告信息里的内容有点怪吗?
2020年06月06日 01点06分
代码形式: FindRoot[{(21.12*0.66*i)/(1 - 0.66*i) + 1.9/(10^7*r) == 5, (v*r^2)/((3*(95/1056)/10^16)*(1 - 0.66*i)) == 4*Pi^2, i == Sqrt[Pi]*Sqrt[p]*E^p*Erfc[Sqrt[p]], p == (r*v)/(6/10^9)}, {{v, 0.00001}, {r, 0.000006}, {p, 0.0001}, {i, 0.02}}]
2020年06月04日 09点06分
level 3
La啦啦钦 楼主
为啥 把格式从上图的传统格式转换到下面的代码格式 得到了方程的解。
难道还有隐藏代码属性吗
2020年06月04日 09点06分 10
因为你重新输入的时候又稀里糊涂把括号用对了。如果你把9楼图里的那段代码直接用Ctrl+Shift+I来转换的话,包管照旧出错。
2020年06月06日 01点06分
最后问题的解决办法似乎是设置合理的初始值,才能准确求解
2020年06月04日 09点06分
@xzcyr 太细节啦,以后输的时候要好好注意,谢谢提醒
2020年06月06日 16点06分
1