跳转到主要内容

Python中的模拟。

项目描述

Scipy Simulator提供了一个在Python中使用scipy对异构系统进行建模和模拟的并发方法。您可能会发现它在涉及嵌入式系统信号处理的任务中最为有用。

Scipysim模型通过实例化代表系统不同组件的各种演员,并通过通道将演员相互连接来创建。以下是一个简单的模型示例

#!/usr/bin/env python

from scipysim.actors.signal import Ramp
from scipysim.actors.display import Plotter
from scipysim.actors import Channel, Model

class RampPlot( Model ):
    def __init__( self ):
            super( RampPlot, self ).__init__()
            connection = Channel()
            src = Ramp( connection )
            dst = Plotter( connection )
        self.components = [src, dst]

RampPlot().run()

您可以在“models”目录中找到其他模型的示例。

Scipysim项目受到加州大学伯克利分校Ptolemy项目的影响,但我们在实现模拟引擎方面采取了略有不同的方法。我们的方法基于将模拟器实现为通过标记信号进行通信的Kahn网络演员。每个这些演员都在自己的线程中运行,并通过专用通道进行通信 - 这些通道基于Python标准库中线程安全的FIFO队列实现。这些基础级别的演员可以组合在一起创建模型,这些模型本身也是演员 - 在自己的线程中运行,所有通信都通过输入和输出通道进行。

Scipysim目前仍处于积极开发阶段,包含许多实验性或原型组件。模拟器的结构处于不断变化之中,因此无法保证使用特定版本开发出的模型在下一个版本中仍能正常工作。

测试Scipy模拟器

Scipy模拟器附带了一大批单元测试。所有测试都可以使用nosetests作为套件运行

nosetests

在scipysim模块中放置了一个名为test_scipysim.py的辅助脚本,用于启动nosetests

./scipysim/test_scipysim.py

如果您从仓库下载,可以使用setuptools运行测试

python setup.py test

测试也可以在模块层次结构中找到并单独运行

python ./scipysim/actors/io/test_io.py

安装Scipy模拟器

您可以使用以下命令将scipysim安装到主site-packages文件夹中

sudo python setup.py install

在Linux或Mac OS X上;以及在

python setup.py install

在Windows上。要在更沙箱化的“开发”环境中安装,将install替换为develop,例如

sudo python setup.py develop

这将在此目录中安装一个egg,并将其链接到site-packages文件夹中的包。

创建二进制安装程序

首先,使用以下命令清理过时的.pyc或.pyo文件

python setup.py clean --all

按照以下方式生成构建的发行版

python setup.py bdist

在Windows上,为了制作一个漂亮的GUI安装程序

python setup.py bdist --format wininst

同样,可以使用以下命令创建源发行版

python setup.py sdist

贡献者

该项目由坎特伯雷大学电气与计算机工程系(http://www.elec.canterbury.ac.nz/)发起

  • Brian Thorne(brian dot thorne at canterbury dot ac dot nz)

  • Allan McInnes(allan dot mcinnes at canterbury dot ac dot nz)

项目网站

主要开发在Google Code上进行,网址为http://scipy-sim.googlecode.com

为scipysim做出贡献

首先,使用mercurial获取源代码

hg clone https://scipy-sim.googlecode.com/hg/ scipy-sim

然后通过创建一个新问题http://code.google.com/p/scipy-sim/issues/entry向我们发送补丁

项目详细信息


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源发行版

ScipySim-0.1.5.tar.gz (56.0 kB 查看哈希)

上传时间

构建发行版

ScipySim-0.1.5-py2.6.egg (208.3 kB 查看哈希)

上传时间

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面