ウィキペディアで計算科学について読みましたが、私の理解はあまり明確ではありません。
計算科学にはプログラミングが含まれますか?計算科学は、ブランクが任意の学問分野(材料科学、工学、化学、生物学など)になる可能性のある計算_ ____とどの程度違いますか?(私は計算材料科学をやっています。)
ウィキペディアで計算科学について読みましたが、私の理解はあまり明確ではありません。
計算科学にはプログラミングが含まれますか?計算科学は、ブランクが任意の学問分野(材料科学、工学、化学、生物学など)になる可能性のある計算_ ____とどの程度違いますか?(私は計算材料科学をやっています。)
回答:
質問の下で指摘されたゴドリックのリンクは正確です。計算科学者が持たなければならない多くの才能の良い概要を提供します。
一般に、計算X(X =数学者、土木技師、材料科学者)と理論Xまたは実験Xの違いは、前者が実験や理論ではなくコンピューターの問題に取り組むことです。明らかに、コンピューターを使用する能力、特にコンピューターを使用する能力は、スキルとX自体の十分な理解と同様に、この重要な部分です。
計算科学者は、すぐにXコミュニティに参加するわけではありませんが、数学やコンピューターサイエンスのバックグラウンドを持つことが多い人たちです。私は自分自身を1つとして数えます。それらのほとんどは、特定のアプリケーション(Xなど)自体にはあまり関心がなく、むしろフィールドXでの問題を解決することを、新しい数値的および計算的手法を開発および適用する方法として検討します。より広く適用可能な方法の場合。多くの計算科学者は優秀なプログラマーであり、おそらくもっと重要なのは、ソフトウェア設計者とエンジニアです。それが得意であることは、確かに計算科学者の職務記述書の重要な部分です。
大雑把に言えば、「計算科学」を行うと主張しているがプログラミングを知らない場合、あなたは良い専門家ではありません。
計算を行うには、ツールが必要です。そして、コンピューターはそのようなツールです。プログラミングは、コンピューターに物事のやり方を教える唯一の方法です。したがって、プログラミングは計算科学の重要な部分です。これは、それが唯一の部分であると言うことではありません。理論には独自の神聖な場所があります。理論が非常に得意であれば、設計を改善し、より重要な正しいアルゴリズムを設計します。
私の知る限り、プログラミングを知らなくても生き残ることができます。アルゴリズムを理論的に設計することです。ただし、プログラミングを知っている他の人を雇って、アルゴリズムがリアルタイムで機能するかどうかを確認する必要があります。
その上、プログラミングを知っている人々がより良い報酬を受け取ることは現代世界の事実です。私見では!
私は、計算科学の定義や説明の教科書バージョンを認識していませんが、私の経験に基づいた2セントです。
計算科学には、計算プロセスの処理が含まれます。重要なプロセスの1つはプログラミングです。それで、はい、それはプログラミングを伴います。計算科学者がプログラムの作成者であるかどうかは別の問題ですが、彼女は特定の科学分野向けに作成されたプログラムのユーザーである可能性が高いでしょう。そして、彼女が自分のニーズに合ったものにするために「接着剤」コードを書かなければならない可能性がますます高まっています。これが最初の質問に答えることを願っています。
私は計算材料科学については知りませんが、エネルギーのシミュレーションや要素間の相互作用などの計算ニーズを持つ科学の一分野であると仮定します。したがって、はい、それは他の科学領域と同じ計算科学の一般原則を含みます:アルゴリズム、手順、グルーコード、ファイル操作、構成、視覚化など。これが2番目の質問に答えることに近いことを願っています。
あなたのコンピュータサイエンスのバックグラウンドは間違いなく役立つはずです。それが範囲内にあるかどうかは、少し主観的です。しかし、私はあなたが研究した主題を考えると、あなたの快適ゾーンに非常にあるべきだと思います。
ここに別の種類の答えがありますが、私の意見では、非常に興味深いです。
私はこのベータ版のすべてのユーザーを1000以上の評価を得て見ました。これらの人々は計算科学をしているとみなすことができると思います。それぞれについて、プロファイルを見て、彼らがStackOverflowにアカウントを持っているかどうかを確認しました。これは、プログラミングに興味を持っている兆候と見ることができます。結果は次のとおりです。
に25 users having more than 1000 reputation
:
(16%)
アカウントがありません。(20%)
は、評判を得ることなくアカウントを開設しました。(64%)
はStackOverflowに貢献しました。そのため、少なくとも84%
彼らはプログラミングに興味があります。私の意見では、これはプログラミングが科学計算の仕事の重要な部分であることを示しています:-)それは他の答えの確認に過ぎません!
もう1つの興味深い事実(定量化していない)は、これらすべてのユーザーが計算科学やStackOverflowだけでなく、多くのトピックに関するアカウントを持っているということです!これはWolfgang Bangerthの答えの方向に向かっているだけだと思います。
私の個人的な経験から言えば、プログラミングの知識や経験がほとんどないかまったくない、非常に優秀な計算科学者を知っています。一方、私が知っているほとんどの計算科学者は、コンピューターのプログラミング方法を知っています。
あなたの質問のその部分に対する最終的な答えはありません。あなたが自問しなければならない質問は、問題を解決できるソフトウェアがありますか、それとも最初に問題を解決できるソフトウェアを作成し、それを使用して問題を解決することです。実際の問題。これに対する答えは、プログラミングを知る必要があるかどうかを決定します。
興味深い質問は、私は計算材料科学を勉強していて、物理学を専攻した卒業生です。これまでに私が行ったプログラミングの量は最小限ですが、それは私自身の話です。多くの場合、プロジェクトの特定の目標によって、行うコーディングの正確な量が決まります。標準的な手法とソフトウェアを使用して特定の化合物を調べる場合、最悪の場合、使用しているコードの周りの事柄を自動化するBash / Pythonスクリプトを書くことになります。私はあなたが検証しようとするものを実装するためにおそらくプログラミングを行うと思うので、短い答え:計算科学については言えませんが、計算材料科学については、もしあれば決定されるプログラミングの量あなたのプロジェクト。
2番目の部分に答えます。一般の計算科学者と専門の計算Xとの間には、人の関心に応じて多くの重複がありますが、計算科学者の主な関心は、ドメイン分野の問題を研究するための新しい計算技術の導入です。計算技術の新しいものは、適切な計算ツールの欠如またはより高速な方法のために不可能だった新しい計算である可能性があります。一方、計算Xは、主にこれらの新しいツールを使用して新しい問題を研究することに関心があります。したがって、一般的に、計算科学者はまず問題のステートメントを作成し、それを解決するための一般的なフレームワークを説明し、ツールの適用性(速度/エラーなど)にいくつかの制限を課し、概念実証として問題を解決します。前半は