how to use solve

조회 수: 1 (최근 30일)
alize beemiel
alize beemiel 2023년 4월 6일
댓글: alize beemiel 2023년 4월 6일
hi ; i need help
I have this equation with 2 parametres a and b
syms b x a
solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0) %chooses 'x' as the unknown and returns
I use solve but it return
Warning: Cannot find explicit solution.
  댓글 수: 1
VBBV
VBBV 2023년 4월 6일
이동: VBBV 2023년 4월 6일
Consider these input values for a and b, for which solve function cant handle the solution. In such cases, use vpasolve to solve equation numerically as recommended by Matlab
syms x real
a = 4; % assume some value
b = 1.5; % assume value
sol=solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0,[x]) %
Warning: Unable to solve symbolically. Returning a numeric solution using vpasolve.
sol = 
0.31726439340850840945560345483897
sol = vpasolve((2*cos(x) - b*(sin(x) + sin(a*x))) == 0,[x])
sol = 
0.31726439340850840945560345483897

댓글을 달려면 로그인하십시오.

채택된 답변

VBBV
VBBV 2023년 4월 6일
syms b x a
sol=solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0,[x a b])
sol = struct with fields:
x: [2×1 sym] a: [2×1 sym] b: [2×1 sym]
%chooses 'x' as the unknown and returns
sol.x
ans = 
sol.a
ans = 
sol.b
ans = 
  댓글 수: 5
alize beemiel
alize beemiel 2023년 4월 6일
this is what i want by using matlab
alize beemiel
alize beemiel 2023년 4월 6일
thank you Sir ..for your help and your time

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Chunru
Chunru 2023년 4월 6일
There is no close form solution when a and b are arbitrary constant for the equation.
If you want to find the numerical solution of the equation with specified a and b, you can use vpasolve:
syms b x a
solve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0)
Warning: Unable to find explicit solution. For options, see help.
ans = Empty sym: 0-by-1
a = 2; b=0.1;
vpasolve ((2*cos(x) - b*(sin(x) + sin(a*x))) == 0) %chooses 'x' as the unknown and returns
ans = 
7.7984925986314595610243884059956
  댓글 수: 3
Chunru
Chunru 2023년 4월 6일
MATLAB tell you that its solver could not find the explicit solution.
alize beemiel
alize beemiel 2023년 4월 6일
thank you for all
i will try to use Newton Raphson Methode maybe its give me an approximate solution

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Newton-Raphson Method에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by