查看: 901|回复: 4|关注: 0
打印 上一主题 下一主题

快乐扑克介绍: [已解决] matlab用solve函数解方程时不能得到数值解

[复制链接]

新手

7 麦片

财富积分


快乐扑克3如何跟对子 www.vqxik.tw 050


1

主题

3

帖子

0

最佳答案
用matlab中solve函数解一个方程时给出了很多限制条件,并不能得到数值解,请问怎么解决?谢谢啦代码如下,就是公式里除了alpha其余全是已知量,为了输入一个delta的值解出一个alpha的值。

delta=10;
n_o=1.528;
n_e=1.7297;
lambda=632.8e-9;
d=30e-6;

alpha=solve('tan(alpha)=((n_e^2-n_o^2)*(((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_o^2)/(n_e^2-n_o^2))^0.5)*(((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_e^2)/(n_o^2-n_e^2))^0.5))/(n_o^2*((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_e^2)/(n_o^2-n_e^2))+n_e^2*((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_o^2)/(n_e^2-n_o^2)))','alpha');




论坛优秀回答者

5

主题

1678

帖子

468

最佳答案
  • 关注者: 139
2#
发表于 2019-9-15 21:41:36 | 只看该作者
  1. alpha = vpasolve([tan(alpha)==((n_e^2-n_o^2)*(((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_o^2)/(n_e^2-n_o^2))^0.5)*(((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_e^2)/(n_o^2-n_e^2))^0.5))/(n_o^2*((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_e^2)/(n_o^2-n_e^2))+n_e^2*((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_o^2)/(n_e^2-n_o^2)))],[alpha])
复制代码


alpha = 0.083898634335274686247749002355
提问请:①准确描述问题②贴代码别贴代码的截图③勿一问多帖或一帖多问④及时反?、菘辞寤馗吹拿扛鲎?/div>

新手

7 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
3#
 楼主| 发表于 2019-9-15 21:50:41 | 只看该作者
TouAkira 发表于 2019-9-15 21:41
alpha = 0.083898634335274686247749002355

您好,首先非常感谢您的回答,我复制了您写的代码发现了如下错误,请问是什么原因导致的?
错误提示:
错误使用 alpha
输出参数太多。

入门

154 麦片

财富积分


50500


0

主题

107

帖子

11

最佳答案
  • 关注者: 7
4#
发表于 2019-9-16 08:26:29 | 只看该作者 |此回复为最佳答案
5641456 发表于 2019-9-15 21:50
您好,首先非常感谢您的回答,我复制了您写的代码发现了如下错误,请问是什么原因导致的?
错误提示:
错 ...

试一下这个:

clear;clc
syms alpha
delta=10;
n_o=1.528;
n_e=1.7297;
lambda=632.8e-9;
d=30e-6;

d = vpasolve(tan(alpha)==((n_e^2-n_o^2)*(((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_o^2)/(n_e^2-n_o^2))^0.5)*(((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_e^2)/(n_o^2-n_e^2))^0.5))/(n_o^2*((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_e^2)/(n_o^2-n_e^2))+n_e^2*((((2*pi*d*n_o*n_e)/((2*pi*d*n_o+delta*lambda)*cos(alpha)))^2-n_o^2)/(n_e^2-n_o^2))),alpha)

新手

7 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
5#
 楼主| 发表于 2019-9-16 10:12:05 | 只看该作者
chuyanwu2012 发表于 2019-9-16 08:26
试一下这个:

clear;clc

非常感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 快乐扑克3如何跟对子 返回列表