こんにちは。matlabについての質問です。
matlabについてまったくの初心者なのですが、大学のパソコンに入っているmatlabでsymsという変数の指定をしても、エラー表示がでてしまいます。これはどうやらmatlabに追加のtoolが入っていないと使えないということが調べていたらわかりました。この場合たとえば、f=x^2-x-1でf=0をxについて説くという場合どのようにmatlabに入力すればいいのですか?いろいろ調べたのですがよくわからなくて・・・。また、僕みたいな超初心者でもわかりやすいmatlab入門書やサイトで、お薦めの本などありましたら、教えていただきたいです。お願いします。
No.1ベストアンサー
- 回答日時:
ええと一応念のため。
参考意見として聞いてください。ずーっと眺めていたんですが、教えてgoo!に「Matlabで……」って質問は結構上がるんですけど、レスって付きにくいんですよ(笑)。
と言うのも、
1.Matlabは個人で所有するには高すぎる。
2.そもそも研究者用なんでユーザー数が少ない。
ですから、Matlab互換と言われるGNU OctaveかScilabの方が回答してくれる人が増えるかもしれません。これらだったら大学の端末以外で個人所有のPCにも無料でインストール出来て使えますし、少なくともコッチの環境とそちらの環境を合わす事が可能です。
いずれにせよ、Matlab関係の情報がここに限らず、ネット上探しても比較的少ないのは、そう言う理由があると思われます。とにかく値段が高いしユーザー数が少ないし専門的にならざるを得ないから、です。
さて、元々MatlabとかOctaveとかは「数値計算用のソフトウェア」です。確かに検索した限り、MatlabではSymbolic Math Toolboxesと言うライブラリを追加すれば文字式を使った代数計算が出来るような事が書いてありましたが、原則、数式処理はMatlabとかOctaveの範疇じゃないです。ましてや、大学のMatlabにライブラリが入っていない以上、どうしようもないでしょうね。
一応注釈しておきますが、「計算用ソフト」と言っても2種類あります。
・数値計算ソフト
・数式処理ソフト
前者は「実際に数値を入力して計算結果を見る」為のソフトで、広義ではMicrosoft Excelなんかも含まれます。例えば方程式があったとしても「抽象的に文字式を処理して解を見る」と言うのは原則的に無理で、実際何らかの数値を引数として与えて「計算結果を見る」と言うのがこの分野のソフトです。Matlabなんかはコッチに含まれます。
後者が貴方が求めてる分野のソフトウェアです。これは「計算する」と言うよりどっちかと言うと「記号処理」の分野なんですね。一つの方程式を「数式として解釈する」んじゃなくってテキストとみなして変形していく、ってのが動作原理です。これは「方程式を文字式として解釈して解を出せる」んですが、生憎、需要が前者に比べれば圧倒的に少ないです。有名どころではMathematicaとかMapleと言うソフトウェアがあります。既出のMatlab用ライブラリ、Symbolic Math Toolboxesと言うのは、この「Maple」と言うソフトウェアの核をMatlab上で扱えるようにしたもの、と言う話ですね。
と言うことは、まずはやるべき事は大学のコンピュータに「Mathematica」ないしは「Maple」が入ってるのかどうか調べてみる事でしょう。良く分かりませんが、仮に「Mapleが使える」んだったらわざわざMatlabでSymbolic Math Toolboxesを使う必要がない、ってんでインストールしてない可能性もあります。
いずれにせよ、原則的にはMatlabは「貴方がやりたい計算」を行う為のソフトウェアではない、と言う事なんです。
一応ここで「Maxima」を紹介しておきます。これは数式処理用のフリーウェアで、「貴方がやりたい事」に対してはドンピシャだと思います。
GNU Maxima:
http://maxima.sourceforge.net/
これならコマンドラインで
solve(x^2-x-1,x);
と入力すれば「f=0をxについて解く」事が可能となります。
試してみてください。
なるほど。根本的にMatlabというソフトについての解釈が間違えていたんですね。とても、参考になり助かりました。学校のコンピュータにMathematicaが入っていたと思うのでそちらで試してみます。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
EXCELなどで「返す」という表現
-
C++言語で、レナードジョーン...
-
エクセルのセル式で恐縮ですが...
-
phpの連結によるエラー
-
VBSが解らない!
-
変数
-
べき乗の計算が遅い理由
-
パチンコゲームを作りたいので...
-
表計算上の式がVBA実行中に、メ...
-
MT4 固まる
-
連立方程式を解く方法はわかっ...
-
エクセル 再計算とVBA の...
-
先行評価と遅延評価
-
【fortran77】データ行数のカウ...
-
カナダでのjavascript
-
static double a[N][N + 1] = {...
-
VBAの再計算が反映されない件に...
-
Fortranコードの疑問
-
Matlabでのニュートン法について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
排他的論理和 BCC(水平パリテ...
-
VBAの再計算が反映されない件に...
-
バッチファイルでウインドウを...
-
変化させるセルが変化しない
-
EXCELなどで「返す」という表現
-
傾いた四角形内の範囲の条件式
-
エクセルで特定のセルのみを任...
-
CとFORTRANの計算速度はどちら...
-
Visual C++でdebugとreleaseで...
-
モジュラス103の計算とは何でし...
-
なぜオーバーフローになるので...
-
VB6で正確なミリ秒を計測したい...
-
VBでReplace
-
引き放し法による除算アルゴリ...
-
matlabで計算終了
-
CRC8を教えてください
-
VBAで関数をつくる
-
Excel VBAの残業時間の合計計算...
-
等高線を計算したい
おすすめ情報