2012-04-26 11 views

答えて

0

EDIT:nrzの解が正しいです。

1つの方法は、関数を明示的に評価し、グラフをプロットすることです。 Matlabで次のコードを試してみてください。

w = sqrt(10); t=(-100:0.01:100); レッツ、 R=(-1.5/w)*sin(w*t) + 1.5*t - 0.45;

その後、

plot(t,R,'k') 
axis square; 
grid on; 

あなたは図-1を取得します。近い近く(0,0)ズーミングに際して

Figure-1

`は、グラフ(図2)の次の構造を見ることができます。上記

Figure-2

、私は、この問題に対する数値解を提供しています。しかし、Matlabにはもう1つの方法(シンボリックな代数)があります。しかし、MATLABは主に数値計算や問題の数値解法のために作られています。 Matlabは非常に不適切であり、象徴的な問題解決のために遅いです。現在の質問は非常に小さな問題であり、Matlabでは記号的な計算を使っても何の問題もありませんが、MatlabやMathematica/Mapleなどで数値的に問題を行うのは良い方法です。

+0

しかし、大規模なMATLABプログラムの中で記号方程式を解く必要がある場合(方程式を解くことは中間段階に過ぎません)、Mathematica/Maple /などを呼び出す代わりにMATLABを使用して解く方が便利でしょう。 – nrz

+0

@nrz Iveがそれを更新しました。私の返信の最初の行をお読みください。 :) – Abhinav

2
あなたは、2次方程式のこの方程式のグループをこのように解決することができます

solution = solve('w = sqrt(10)', '(-1.5/w)*sin(w*t) + 1.5*t - 0.45 = 0') 

ソリューションをチェックするには、次のソリューションが動作することを確認するには

solution.t 
ans = 
0.59963230021859138687907507892006 

solution.w 
ans = 
3.1622776601683793319988935444327 

を:

(-1.5/solution.w)*sin(solution.w*solution.t) + 1.5*solution.t - 0.45 
ans = 
0.0