标签: simulation

在Python中简单模拟物理学?

我想知道类似的具体模拟,就像在这里浇灌田地的模拟一样.

在Python中,您最喜欢的图书馆/互联网页面是什么?

我知道小Simpy,Numpy和Pygame.我想得到关于它们的例子.

python simulation modeling

7
推荐指数
1
解决办法
2万
查看次数

改进足球模拟算法

在另一个问题中,你帮我建立了足球模拟算法.我在那里得到了一些非常好的答案.再次感谢!

现在我编写了这个算法.我想改进它并找到可能存在的小错误.我不想讨论如何解决它 - 正如我们在上一个问题中所做的那样.现在我只想改进它.你能再帮我一次吗?

  1. 有什么错误吗?
  2. 嵌套的if子句的结构是否正确?可以改进吗?
  3. 根据我的描述,战术是否正确整合?

应该对随机性产生影响的战术设置:

  • $ tactics [x] [0]调整(1 =防守,2 =中立,3 =进攻):价值越高,防守越弱,进攻越强
  • $ tactics x游戏速度(1 =慢速,2 =中等,3 =快速):值越大,机会越多但获得快速反击的风险越高
  • $ tactics x传球距离(1 =短,2 =中,3 =长):值越高越少但获得的机会越多,越位越快
  • $ tactics x创造变化(1 =安全,2 =中等,3 =有风险):价值越高,你的机会越多,但获得快速反击的风险越高
  • $ tactics [x] [4]防守压力(1 =低,2 =中等,3 =高):值越大,反击越快你就会有
  • $ tactics [x] [5]攻击性(1 =低,2 =中等,3 =高):值越大,你将被犯规所阻止的攻击越多

注意: Tactic 0和tactic 4部分集成在引擎的其余部分,此功能不需要.

目前的算法:

<?php
function tactics_weight($wert) {
    $neuerWert = $wert*0.1+0.8;
    return $neuerWert;
}
function strengths_weight($wert) {
    $neuerWert = log10($wert+1)+0.35;
    return $neuerWert;
}
function Chance_Percent($chance, $universe = …
Run Code Online (Sandbox Code Playgroud)

php simulation

7
推荐指数
3
解决办法
5460
查看次数

加速球体之间的碰撞检测

我正在编写一个物理引擎/模拟器,它结合了3D太空飞行,行星/恒星引力,船舶推力和相对论效应.到目前为止,它的进展非常顺利,但是,我需要帮助的一件事是碰撞检测算法的数学计算.

我正在使用的运动的迭代模拟基本如下:

(注意:3D矢量是全部大写.)

For each obj

    obj.ACC = Sum(all acceleration influences)

    obj.POS = obj.POS + (obj.VEL * dT) + (obj.ACC * dT^2)/2     (*EQ.2*)

    obj.VEL = obj.VEL + (obj.ACC * dT)

Next
Run Code Online (Sandbox Code Playgroud)

哪里:

obj.ACC is the acceleration vector of the object
obj.POS is the position or location vector of the object
obj.VEL is the velocity vector of the object

obj.Radius is the radius (scalar) of the object

dT is the time delta or increment
Run Code Online (Sandbox Code Playgroud)

我基本上需要做的是找到一个有效的公式,从上面的(EQ.2)派生出两个对象(obj1,obj2),并告诉他们是否碰撞,如果碰到,在什么时候.我需要确切的时间,以便我可以确定它是否在这个特定的时间增量(因为加速器在不同的时间增量会有所不同),并且还可以找到确切的位置(我知道该怎么做,给定时间)

对于这个引擎,我将所有对象建模为球体,所有这些公式/ algortithim需要做的是弄清楚在哪些点:

(obj1.POS - …
Run Code Online (Sandbox Code Playgroud)

simulation math 3d physics collision-detection

7
推荐指数
1
解决办法
3879
查看次数

从python脚本运行C#应用程序

我刚刚用C#编写了一个体积适中的疾病传播模型.但是,我对.NET很新,不确定如何继续.目前我只需双击.exe文件,模型从文本文件导入配置设置,做到这一点,并将结果输出到文本文件中.

我接下来要做的是编写一个Python脚本来执行以下操作:

  • 运行模拟N次(N> 1000)
  • 每次运行后重命名输出文件并存储(即./output.txt - > ./acc/outputN.txt)
  • 汇总,解析和分析输出
  • 以一些干净的格式输出结果(可能是excel)

到目前为止,我的大部分编程经验都是在Linux上的C/C++中.我对最后两项很有信心; 但是,我不知道如何继续前两个.以下是一些我喜欢的具体问题:

  • 从python脚本运行C#.exe的最简单/最好的方法是什么?
  • 有没有人对在Windows系统上用Python进行文件系统操作的最佳方法提出建议?

谢谢!

python filesystems simulation subprocess

7
推荐指数
1
解决办法
6256
查看次数

什么是*连续物理模拟的基本思想*如box2d/bullet3d?

游戏或图形行业中的传统物理模拟基本上是离散的.但是现在的引擎如box2d或bullet3d实现了连续物理模拟.我知道离散模拟的基本原理,但我不知道连续模拟.这对我来说是神奇的,使用魔法是艰难而危险的.因此,我希望通过理解它们将魔法变成工具.

所以我想知道:(1)这些连续物理模拟的基本思想和实现原理是什么?(2)这个想法可以推广到其他类型的离散模拟吗?请让我理解这一点!

simulation continuous principal physics-engine

7
推荐指数
1
解决办法
1332
查看次数

如何以编程方式模拟较低的处理器频率?

我有兴趣在我的2GHz +处理器上以特定频率(如25MHz)运行程序.我可以想到做这样的事情的唯一方法是使用微秒精度睡眠函数,但我不确定如何计算线程应该睡多长时间以匹配特定频率.任何提示或其他想法?我在X86 Linux操作系统上用C语言做这个.

c simulation cpu x86 assembly

7
推荐指数
1
解决办法
1371
查看次数

使用时间作为随机数生成的种子有什么问题?

我知道时间是随机数生成的不安全种子,因为它有效地减小了种子空间的大小.

但是说我不关心安全问题.例如,假设我正在为纸牌游戏进行蒙特卡罗模拟.但是,我要关心尽可能接近真正的随机性.作为种子的时间会影响我的输出的随机性吗?在这种情况下,我认为PRNG的选择比种子更重要.

security random simulation montecarlo prng

7
推荐指数
1
解决办法
945
查看次数

用于模拟值的免费OPC服务器

我正在开发一个OPC客户端,需要一个免费的OPC服务器,可以模拟值和设置值静态.有这样的服务器免费提供吗?

simulation simulator opc

7
推荐指数
1
解决办法
1万
查看次数

在R中快速(呃)索引矩阵的方法

最重要的是,我正在寻找一种快速(呃)方式对矩阵进行子集化/索引很多次:

for (i in 1:99000) {
  subset.data <- data[index[, i], ]
}
Run Code Online (Sandbox Code Playgroud)

背景:
我正在实现一个涉及R中引导程序的顺序测试程序.想要复制一些模拟结果,我遇到了需要完成大量索引的瓶颈.为了实现块引导,我创建了一个索引矩阵,我用它来对原始数据矩阵进行子集以绘制数据的重采样.

# The basic setup

B <- 1000 # no. of bootstrap replications
n <- 250  # no. of observations
m <- 100  # no. of models/data series

# Create index matrix with B columns and n rows.
# Each column represents a resampling of the data.
# (actually block resamples, but doesn't matter here).

boot.index <- matrix(sample(1:n, n * B, replace=T), nrow=n, ncol=B)

# Make matrix …
Run Code Online (Sandbox Code Playgroud)

simulation r matrix-indexing statistics-bootstrap

7
推荐指数
1
解决办法
1450
查看次数

如何在R中编写多参数对数似然函数

我想估计以下问题的力量.我有兴趣比较两组都遵循Weibull分布.因此,A组有两个参数(形状par = a1,scale par = b1),两个参数有B组(a2,b2).通过模拟感兴趣分布的随机变量(例如假设不同的尺度和形状参数,即a1 = 1.5*a2,b1 = b2*0.5;或者组之间的差异只是形状或尺度参数),应用log-似然比测试以测试a1 = a2和b1 = b2(或者例如a1 = a1,当我们知道b1 = b2时),并估计测试的功效.

问题是什么是完整模型的对数似然,以及如何在a)具有精确数据时对R进行编码,以及b)对于区间删失数据?

也就是说,对于简化模型(当a1 = a2,b1 = b2时),精确和区间删失数据的对数似然是:

LL.reduced.exact <- function(par,data){sum(log(dweibull(data,shape=par[1],scale=par[2])))};
LL.reduced.interval.censored<-function(par, data.lower, data.upper) {sum(log((1-pweibull(data.lower, par[1], par[2])) – (1-pweibull(data.upper, par[1],par[2]))))}
Run Code Online (Sandbox Code Playgroud)

什么是完整模型,当a1!= a2,b1!= b2时,考虑到两种不同的观测方案,即当必须估计4个参数时(或者,如果有兴趣查看形状参数的差异,必须估计3个参数)?

是否有可能估计它为不同的组建立两个对数似然并将它们加在一起(即LL.full <-LL.group1 + LL.group2)?

关于区间删失数据的对数似然,删失是非信息性的,所有观察都是间隔删失的.任何更好的想法如何执行此任务将不胜感激.

请在下面找到R代码以获取确切数据以说明问题.非常感谢你提前.

R Code:    
# n (sample size) = 500
# sim (number of simulations) = 1000
# alpha  = .05
# Parameters of Weibull distributions: 
   #group 1: a1=1, b1=20
   #group 2: a2=1*1.5 b2=b1

n=500 …
Run Code Online (Sandbox Code Playgroud)

simulation inference r weibull

7
推荐指数
1
解决办法
2689
查看次数