大学python作业_上海交通大学python期末大作业题目(姚天昉)

1

Project A

Simulating a Physical System

Introduction

You

have

already

seen

a

number

of

examples

using

randomization

to

solve

problems

and

to

generate

experimental

results.

In

the

percolation

project,

grids

were

generated

according

to

a

specified

probability

distribution

to

experimentally

determine

the

percolation

probability.

This

approach is an example

of a

Monte Carlo

method, an algorithm that relies

on

repeated random

sampling

to

compute

results.

Monte

Carlo

methods

are

often

used

for

simulating

physical

and

mathematical systems when other methods are impossible or computationally infeasible.

Objective and Background

The objective of this project is to use the Monte Carlo “

demon algorithm

” to

estimate parameters

(for example, temperature) in a physical system, specifically an ideal gas with moving molecules.

We could simulate such a system by computing the pairwise interactions among all molecules at

every

time

step

in

the

simulation,

but

that

approach

would

be

computationally

intractable.

Moreover,

in

these

systems

we're

not

typically

interested

in

the

specific

behavior

of

each

individual molecule, but rather in the overall system behavior. For example, we want to know the

expected

distribution

of

molecule

velocities

in

a

gas

(e.g.,

to

understand

its

temperature),

not

which molecules have collided with which other molecules.

The key concept behind the demon algorithm is that any simulation must both

preserve the total

energy

of

the

system

(energy

is

conserved)

and

insure

that

no

particle

winds

up

with

negative

kinetic energy. The algorithm proceeds by choosing a molecule at random and proposing to make

a small random change to its energy (e.g., to simulate the effect of a collision). To compensate for

the change in energy of the molecule / particle, the oppos

ite change is made to a special “demon”

molecule, thus conserving the total energy of the system. Note that the

demon molecule

is

never

chosen at

random

for

this change; it only acts to store the difference between the system energy

and the total energy.

Before describing the demon algorithm in detail, we give a brief description of the system to be

simulated. In the

ideal gas

, we want to study the velocity of molecules in the gas. This

average

velocity gives a measure of the temperature of the gas. Consider the state of the gas in an insulated

container at an instant of time. Each of its molecules has some velocity that remains constant until

the

next

collision

involving

the

molecules.

Because

the

molecules

move

quickly,

on

average,

many of them will have experienced collisions during a short time span. Consequently, most of the

molecules will have substantially different velocities than they originally did. This process can, in

principle,

be

simulated

directly.

In

practice,

doing

so

is

computationally

too

expensive

or

is

infeasible (e.g.,

one step of the

situation

could

mean solving

n

differential equations,

with each

equation having n²

terms).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值