• 締切済み

超初心者が数値計算のためにC++を勉強したい

おはようございます、理系学生です。 数値計算(乱数、モンテカルロ等)のためにC++を習得しようと思っています。研究で必要です。 将来の仕事のためにフォートランよりもC++を覚えた方がいいのではと研究室の先輩からアドバイスを受けたのですが、恥ずかしながらフォートランを授業でちょこちょこといじったことしかない超初心者です。ほとんど内容も覚えていません汗やれば少しはおもいだせるかもしれませんが... そこでアドバイスを頂きたいのですが、超初心者向けのおすすめの教材やサイト、超初心者が数値計算ができるまでにどれくらいの期間を要するのかを教えてください。アプリやらを作るわけでもなく計算なので、どこまで勉強すればよいのかもわからない状態です。経験等、有益なアドバイスを伝授していただければとてもありがたいです。 宜しくお願いいたします(> <;)

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

C++をマスターしてやる! という強い意思と目的が無いなら、やめておいた方がいいです。 覚えるべきこと、約束事が多く、肝心の数値演算までたどり着けないかもしれません。(プログラミングが得意でなければなおさら) 数値演算に特化した言語やツールが沢山あります。 そういったものがいいと思います。 R言語、MatLab、Numpy等

ryoryoryory
質問者

補足

回答ありがとうございます。 Matlabは聞いたことあります。調べてみます。 いずれはプログラミングを勉強しなければいけませんので、C言語及びC++を甘い気持ちでは取り組もうとは思っていませんが、肝に銘じておきます。むしろ、やる気が出ます。さっそく、簡単な教材を読み進めていますが、フォートランと形式は似ているのでスっと頭には入ってきます。 数値計算までは長い道のりでしょうけれども頑張ってみます。

  • foobar
  • ベストアンサー率44% (1423/3185)
回答No.1

まずは、 ・先輩のプログラムを見せてもらう ・実際に何かの簡単な問題を設定して、プログラムを作成する、 あたりからでしょうか。 C++で数値計算といっても、どの範囲の数値(実数、複素数、ベクトル、行列)を扱う必要があるか、どの程度の最適化(実行速度の高速化)が必要か、描画などもさせるか単にデータを吐き出すだけでいいのか、で作業量や習得に必要な期間は変わると思います。 また、プログラムの仕方もいろいろなスタイルがありますので一概には言えないかと思います。 ある程度まとまった時間で練習が出来るなら、FORTLANを若干使ったことがある+基本的なプログラム、なら一月程度、それに加えて行列や入出力の処理でもう一ヶ月、くらいでしょうか。

ryoryoryory
質問者

補足

回答ありがとうございます。 残念ながら、私の取り組んでいる研究は、先輩とは少し違うので一から組み立てなければいけません。同じようなプログラミングは組んでいませんが、練習となるならば一度先輩に頼み込みたいです。 問題目標はある程度決まっていて、RBS(ラザフォード後方散乱分光)という加速器分析のシミュレーションを行いたいと思っています。もうひとつがFEL-comptonの電子の振る舞いのシミュレーションです。 かなり頭が痛いですが、がんばって習得します。

関連するQ&A