标签: simulation

从Flight Simulator读取数据

我正在寻找构建一些硬件组件来与微软飞行模拟器接口,希望它能够显示当前占用屏幕空间的东西(高度计,空速指示器,无线电等)

有没有办法在FlightSim运行时读取它们所具有的值,以便我可以将外部硬件组件与它们应该在屏幕上的内容同步?优选地相对较快,因此没有太多滞后.

hardware simulation synchronization

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

在没有多点触控的开发机器上测试Windows 7多点触控?

有没有办法使用非多点触控启动机器测试应用程序的多点触控功能?我想在运行时模拟用户输入以进行缩放,缩放和旋转.

这适用于用C#编写的WPF应用程序.

simulation wpf multi-touch windows-7

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

在C++中将数据输出到磁盘的最快方法是什么?

我正在运行主要受CPU速度限制的模拟代码.我对将数据输入/输出到用户界面不感兴趣,只需在计算时将其保存到磁盘即可.

什么是最快的解决方案,可以减少开销?输入输出流?printf的?我之前读过printf更快.这取决于我的代码,如果没有分析,是不可能得到答案的?

这将在Windows中运行,输出数据需要采用文本格式,制表符/逗号分隔,格式/精度选项主要用于浮点值.

c++ simulation

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

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

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

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

simulation continuous principal physics-engine

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

使用Blender进行物理模拟

我一直在寻找创建某种物理模拟的不同方法.我想要做的是在一段时间内在各种力的作用下对身体的运动进行3D建模.我原本看着使用物理引擎(Bullet)和3d引擎(Irrlicht)在c ++中编写代码.但是,我注意到Blender已经允许人们进行物理模拟,因为Bullet与它集成(如果我错了,请纠正我).这似乎可以让我更容易按照我想要的方式设计模拟(使用Blender广泛的GUI).

我的问题是我想使用模拟的结果(基本上是每个时间步的x,y,z,俯仰,滚动,偏航)来输入c/c ++代码(如果它更容易用于其他语言)这个).这可以用Blender完成吗?有没有一个更好的软件包,我忽略了?谢谢,任何建议表示赞赏.

c c++ simulation physics blender

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

模拟虚拟世界:连续或离散的步骤?

我正在制作类似于Polyworld的东西,这意味着我将模拟虚拟世界,小爬行动物在那里奔跑,吃饭和进化.我用Node.js制作它,我计划使用物理和神经网络,但我不确定更新世界的最佳方法是什么,更具体地说,如果更新函数接收增量时间作为参数,或者每次做同样的事情,独立于他们最后一次被召唤的时间?这两种方式有什么好处?

编辑: 我反对不断更新的一点是我想要实现某种间隔,例如,每个20个模拟秒产生一个食物块.如果dt不同于1(或1的一小部分),这将永远不会正常工作.

然后,如果我使用离散更新,其中更新不关心已经过了多少时间,我将无法"减慢时间".当我在强大的服务器上工作并在浏览器中渲染时,我认为更新会经常发生,我需要一种减慢时间而不影响模拟的方法,所以我可以看到发生了什么.

javascript simulation performance node.js

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

这种奇怪的行为是自然出现还是我的错误?

我正在进行一个2d游戏/模拟,其中行星由围绕恒星的核心轨道周围的块组成.它们也会自行旋转,它们围绕恒星的旋转和它们的个人旋转都具有随机的速度.

该程序记录光线何时击中哪个块,并且它们的温度随着时间的推移而变化.它还根据温度随时间不同地对块进行着色.热块看起来更红,冷块看起来更蓝.

在下面的屏幕截图中,两颗行星都围绕恒星逆时针旋转轨道,顺时针旋转.左/下行星缓慢旋转,而顶/右行星旋转得更快.我将它们称为行星A(图1-3中的左/下)和行星B(图1-3中的右/上).

第一个截图是在启动程序后尽可能快地拍摄的:

[图片1](http://i.imgur.com/Ay613.png)

行星A发展得非常快(并且保留了)一个梯度,显示出一整天都在阳光下一侧的温暖块,以及黎明刚刚升起的寒冷块.行星B移动得如此之快,似乎没有真正的温度差异可以发展.

大约一分钟后拍摄了第二张和第三张截图,并且相隔只有几秒钟才能更好地展示星球B上奇怪的"条带":

[图片2]

[图3]

从观看它旋转开始,B行星似乎已经形成了永久冷和永久热的一面,尽管其快速(和理论上均匀)旋转.

如果有足够的时间,似乎所有的行星都采用这种奇怪的条带,其中一侧是热的,一侧是冷的,无论旋转如何.

http://i.imgur.com/1iqeM.png

(在上面的截图中,进一步说明,行星A位于右侧,行星B位于中间位置.)

而最奇怪的部分是,如果我让它运行更长时间,大多数行星采用行星A最初显示的合理模式,而有些行星继续奇怪的条带模式.

simulation

7
推荐指数
0
解决办法
117
查看次数

纬度/经度生成用作样本数据

我正在编写一个演示Web应用程序,通过我的公司平台跟踪多个设备.我有应用程序工作,但需要一个csv文件,将模拟在地图上移动的设备,就好像它们是一个连接到汽车的跟踪器.模拟器通过每秒读取1行数据(1 lat/lng点)来工作.下面是一个文件的前几行示例,如果这些点不是分散在美国各地(SclId是设备名称),则可以使用.

SclId   Latitude    Longitude
HAT-0   44.968046   -94.420307
HAT-1   44.33328    -89.132008
HAT-2   33.755787   -116.359998
HAT-3   33.844843   -116.54911
HAT-4   44.92057    -93.44786
HAT-5   44.240309   -91.493619
HAT-0   44.968041   -94.419696
HAT-1   44.333304   -89.132027
HAT-2   33.755783   -116.360066
HAT-3   33.844847   -116.549069
HAT-4   44.920474   -93.447851
HAT-5   44.240304   -91.493768
Run Code Online (Sandbox Code Playgroud)

如果我有一些可以通过鼠标点击创建模拟数据的东西,它将节省我很多时间创建另一个程序,要求我使用设备驱动并将数据记录到CSV.任何帮助/建议将不胜感激.如果您不明白这个问题,请要求澄清!

csv simulation maps demo

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

Java Card小程序EEPROM与RAM测试

Java Card小程序中的一个典型错误是将持久性内存用于应该在RAM中的临时变量.

这些错误可能会减慢applet的速度并导致一些严重的问题(例如EEPROM损坏的症状).

单元测试很难揭示这些错误.单元测试将applet作为黑盒子访问,他们所能做的就是检查给定输入的输出.当然,它们可以测量时间并报告可疑的慢速命令,但是覆盖持久存储器中的单个字节几乎与覆盖RAM中的单个字节的时间相同.

有没有办法摆脱这些错误(编码时要小心)?我可以以某种方式检测EEPROM更改以及在处理特定APDU时完成了多少次更改?

当然,一个好的模拟器可以完成这项工作.但是,JCardSim(www.jcardsim.org)和恩智浦JCOP工具似乎都远远无法报告EEPROM使用情况统计数据.

你知道其他任何可以帮助我的工具或测试技术吗?

simulation debugging unit-testing smartcard javacard

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

Matlab/CUDA:海浪模拟

我研究了Jerry Tessendorf撰写的"模拟海水"文章,并尝试编制统计波模型,但我没有得到正确的结果,我不明白为什么.

在我的程序中,我只尝试在时间上创建波高域,t = 0而不进行任何进一步的更改.执行我的程序后,我没有得到我所期望的:在此输入图像描述

这是我的源代码:

clear all; close all; clc;
rng(11); % setting seed for random numbers

meshSize = 64; % field size
windDir = [1, 0]; % ||windDir|| = 1
patchSize = 64;
A = 1e+4;
g = 9.81; % gravitational constant
windSpeed = 1e+2;

x1 = linspace(-10, 10, meshSize+1); x = x1(1:meshSize);
y1 = linspace(-10, 10, meshSize+1); y = y1(1:meshSize);
[X,Y] = meshgrid(x, y);

H0 = zeros(size(X)); % height field at time t …
Run Code Online (Sandbox Code Playgroud)

simulation matlab simulator cuda simulate

6
推荐指数
1
解决办法
6911
查看次数