2009-02-27 46 views
7

数学科の学生のためのプログラミングに関する1時間半のセミナーを提供する必要があります。数学の学生のためのPython?

私は言語としてpythonを選択しました。

  1. プレゼンテーションの内容はどうすればよいですか?
  2. 良いリソースはありますか?
  3. 数学生のためのプログラミングの必要性は何ですか?
  4. プログラミングの知識はどのように役立ちますか?

ありがとうございます!

注:hereは1つの投稿ですが、私の問題は解決しません。

答えて

8

scipyの開始ガイドはありますか?これらの学生は、(数学の学生のための非常に可能性がある)、プログラミングに新しいしている、あなたは彼らに、プログラミングに基本的な導入を与えたいだろうと仮定すると、

http://www.scipy.org/Getting_Started

+0

NumPyに注目したいかもしれません:http://www.scipy.org/NumPy – PTBNL

4

(関数は、変数が何であるか、何ですか、これらのそれぞれが数学の関数や変数とどのように異なるかなど)。数値解析法、マトリックス乗算など

可能な限り、すごい、彼らがためにコンピュータを使用して興奮ますように:

は数学のために参考になるものを視野に入れ、それらにいくつかのサンプルプログラムを表示します彼ら自身のプロジェクト。 Some Python/Math resources

0

私はこれが新入生のためであると仮定しています(上位レベルの数学生のほとんどがプログラムの方法を知っている可能性が高いためです)。そうであれば、楽しく関連性のあることをしてください。基礎を辿ってみてください。多分数学指向のゲームやPythonベースのグラフ電卓のための論理的/基本的なフレームワークを歩いてみてください。

もしそれらを実際に得たいなら、Mathematicaを表示してください。私が知っているのは、あなたが選んだものではありません...しかし、私がソフォモアの数学専攻で、最初にあなたがそれでできることを見たとき、私は恋に落ちました。

+0

また、Sage Notebookを試してみてください。これはかなりクールです - そしてPythonベースです。 – nimrodm

0

Pythonはうまくいくでしょうが、GNU Octaveが良いかもしれません。私のプレゼンテーションの内容がどうあるべきかhttp://www.sagemath.org/

+0

工学系の学生には、オクターブが良いかもしれません。数学についてはわからない。 – nimrodm

7

セージ?

の機能プログラミングとPythonの概念。 NumPyおよびSciPyのようなサードパーティのモジュールへの紹介。

良いリソースはありますか?

ハンズ・ペッター・ラングテンジェン、計算科学ためのPythonスクリプト、スプリンガー

数学の学生のためのプログラミングの必要性は何ですか?

なし。通常、数学の問題を解決するためにプログラミング言語が開発されているので、数学の学生はプログラミングに問題はありません。

プログラミングの知識はどのように役立ちますか?

コンピュータを以前の彼らは人間と比較して、非常に短い時間で効率的に科学的/数学の問題を解決支援する科学者のためのツールとして開発されました。

+0

http://wiki.sagemath.org/Talks –

0

+0

>数学学生のためのプログラミングの必要性は何ですか?なし。 これは非常に奇妙な答えです。 –

1

表示する内容を決定する必要があります。あなたがコンピュータを使用する方法を表示したい場合は、数学で有用なツールとなることができますセージを示し、どのように難しい質問への回答を得るために数値的な方法を実行することができます。次に、それを使っていくつかの代数式を操作します。汗をかくことなく硬い積分と微分をどのように鞭打つことができるかを示しているかもしれません。彼らは結局のところ最初の口蓋垂コースの終わりに近づいています。

これは、もちろん、どのようにプログラムするのかを知る必要がある理由を示していません。これは他の人々のプログラミングがどれほど有用であるかを示しています。あなたはsageでpythonの完全な力を持っていますが、現実は奇妙な "forループ"であり、いくつかの "if文"は実際にほとんどの数学者がほとんどの場合セージで行うプログラミングです(ただし、より多くのことをするでしょう)。この道を歩きたいなら、私はあなたが実験的数学の本(http://www.experimentalmath.info/)の1つを手に入れることをお勧めします。 BBPナンバーは(他の多くの興味深い結果の中で)出てきた人たちです。これは、piの任意の数字を見つける方法です。彼らは主にメープルとマテマチカを使用しますが、この作業のほとんどはセージに変換されます。

私は、実際に数値メソッドを実装する方法を表示しないことを強くお勧めします。数値問題を解決するプログラムを書く数学者はごくわずかです。ほとんどの場合、自分のプログラムを他の人のプログラムに差し込むだけです。だから私は彼らがプログラム方法を知っていれば、誰もが興奮するだろう、彼らは、これらの方法を自分自身を実装する方法を示すとは思わない。

これは私の場合、おそらく、cgsuite(http://cgsuite.sourceforge.net/)用の簡単なゲームプラグインを作成するセミナーを提供すると思います。私はこれがPythonではなくJavaであることを認識していますが、このアプローチには多くの利点があります。最初の若い数学者は、コンビナトリアルゲーム理論に常に興奮しています。特定のゲームでいつも勝つために数学を使う方法を根本的に示しています。あなたにスーパーパワーを与えているようなものです。

第2に、ゲームのルールをプログラムに実装することです。ゲームのルールはプログラミングの概念に直接変換するため、プログラミングのイディオムを学ぶのに最適です。

最後に、ゲームを完璧にプレイできるツールになります。セミナーでは90分は長い間、私が心配している限りです。コンピュータとの試合で10分間プレイする場合のように、叩き終えることができれば、飽きることなく興奮したままになります。

1

Project EulerのPythonでいくつかの種類の問題を解決し、ソリューションについてのディスカッションや、セミナーの一環として効率化などをどうやってやったのかをお勧めします。 Pythonは数学的な問題を解決するための非常にエレガントな言語であり、数学の学生のほとんどよりも理解しやすいものの1つでなければならないので、良い選択をしたと思います。私たちのウィキで

0

http://www.sagemath.org

彼らはあなたを助けることが、交渉のコレクションです! http://wiki.sagemath.org/Talks

また、SageにはNumPy、SciPy、SymPyが含まれています。したがって、これらの3つのPythonライブラリに関するすべての情報はSageのために保持されます。

2

私は等を経由して、Matlabの、IDLのような高価なパッケージを強化/交換する自由&オープンソースのオプションとしてPythonを使用して起動します:

  • はscipyのダウンロード - のFFTの、
  • ipython - "シェル" /デバッガ
  • matplotlibの - 2Dグラフ
  • MayaVi - 3Dグラフ/視覚

This videoが役に立ちます。

関連する問題