-1

私はPythonとプログラミング全般に不慣れで、計算物理学の最終プロジェクトに取り組んでおり、属性x、y、vx、 & vy. これはすべて、最終的に恒星核融合のモデルに組み込まれる理想的なガス シミュレーションを構築するものです。どんな助けでも大歓迎です。これが私がこれまでに持っているものです。

    import random

    atoms = 10
    x = 1000
    y = 1000
    vx = 1000
    vy = 1000
    t = 1
    n = 10000
    b = 0   
    dt = 10
    particle = [x, y, vx, vy]
    system = [particle]
    for i in range(atoms):
        system.append(i)

        for system[i] in range(atoms):
            particle.x = x * random.uniform(0.1, 0.9999)
            particle.y = y * random.uniform(0.1, 0.9999)
            particle.vx = vx * random.uniform(0.1, 0.9999)
            particle.vy = vy * random.uniform(0.1, 0.9999)

        for particle[i] in range(atoms):    
                for t in range(dt):
                    x = x + vx
                    y = y + vy
                    if y < 0:
                        y = -y
                        vy = -vy

                    if x < 0:
                        x = -x
                        vx = -vx

                    if y > 10:
                        m = y - 10
                        y = 10 - m
                        vy = -vy

                    if x > 10:
                        k = x - 10
                        x = 10 - k
                        vx = -vx

基本的な考え方は、要素が「粒子」と呼ばれるリストである「システム」と呼ばれるリストを持つことです。システムが時間とともに進化するにつれて、これらの粒子の位置を追跡する必要があります。どうもありがとう!

ベン

*アップデート

実行すると、「AttributeError: 'list' オブジェクトに属性 'x' がありません」が発生する場所で、particle.x = x * random.uniform(0.1, 0.9999) まで取得します。

属性 (x、y、vx、vy) を各リスト「粒子」に割り当て、それらのリストを「システム」というリストの要素として使用するにはどうすればよいですか?

私はコードが「そのまま」悲しいことを知っています。お待ち頂きまして、ありがとうございます。

4

1 に答える 1

1

人の宿題をやりたくないので、質問の内容がわかりにくいのですが、「リストのリストを説明してください」のようですね?

characters = []
characters.append (["plumber","wrench"])
characters.append (["wizard","wand"])
> print characters [0]
['plumber', 'wrench']
> print characters [1]
['wizard', 'wand']
> print characters [1][1]
wand
于 2012-05-02T17:37:44.180 に答える