Solving Equations in MATLAB
显示 更早的评论
Hello,
I have the following equation.
cos(x) == 0
I want to get two or more possible solutions for the above equation which are 90, 270, and so on. The solve function returns the first solution only.
This technique is important for me to calculate the antenna beamwidths. Any ideas?
Thanks in Adv
采纳的回答
更多回答(1 个)
John D'Errico
2020-12-27
SOME problems can be handled to find all solutions.
syms x
>> xsol = solve(cos(x) == 0,'returnconditions',true)
xsol =
struct with fields:
x: [1×1 sym]
parameters: [1×1 sym]
conditions: [1×1 sym]
>> xsol.parameters
ans =
k
>> xsol.conditions
ans =
in(k, 'integer')
>> xsol.x
ans =
pi/2 + pi*k
So we learn the set of all solutions takes the form
x = pi/2 + pi*k
where k is an integer.
Sadly, a fully general solution to many problems will not be written so easily. But you can always try.
类别
在 帮助中心 和 File Exchange 中查找有关 Equation Solving 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!