我不知道如何来模拟实验设计数据,如完全随机设计,随机区组设计,拉丁方设计等,[R .任何帮助将受到高度赞赏.谢谢
我有一个很大的设计,包括测试平台,一些测试电路和被测电路本身.我使用modelsim来模拟设计,我希望有一个模拟转储.我被建议使用以下命令生成转储:
vcd file myvcd1.vcd
vcd add -r /sim_minimips/*
Run Code Online (Sandbox Code Playgroud)
它接缝工作,但我想要的是只为被测电路生成转储.
我试图使用相同的命令来指定我想要考虑的文件的名称:
vcd file myvcd2.vcd
vcd add -r /minimips/*
Run Code Online (Sandbox Code Playgroud)
但是生成了以下错误:
Error vsim 3561 No object matching minimips
Run Code Online (Sandbox Code Playgroud)
我不明白错误,我不确定即使这是隔离子部分的正确程序.
有谁知道怎么做或知道我在哪里可以得到一个关于这个价值变化转储的体面的简单教程?
我附上我的测试台实体:
library IEEE;
use IEEE.std_logic_1164.all;
library std;
use std.textio.all;
library work;
use work.pack_mips.all;
entity sim_minimips is
end;
architecture bench of sim_minimips is
component minimips is
port (
clock : in std_logic;
reset : in std_logic;
ram_req : out std_logic;
ram_adr : out bus32;
ram_r_w : out std_logic;
ram_data : inout bus32;
ram_ack : …Run Code Online (Sandbox Code Playgroud) 我是Python的新手,没有QBasic的经验.我在Python中运行一个模拟,它提出了理论上错误的值.然后我在QBasic中运行它并提出了理论预测值.
以下是测试用例.我只计算概率P(0.9 <%Y <= 1.8),因此计数必须落在这些值内.1-random.random()仅适用于那种情况,当我尝试在所有情况下使用它时,它们仍然提出了错误的值.这是理论结果,你可以看到它是如何不同的:
y~u(0,1)= 0.575
y~exp(2)= 0.3371
x1~u(0,1)x2~u(0,2)= 0.4475
P(y = 0.25)= 0.8 P(y = 1.5)= 0.2 = 0.32
在Python中,模拟代码是:
def test():
x1,x2,c = 0.0,0.0,0.0
for i in range(10000):
if random.random()< 0.8:
x1 += 0.25
else:
x2 += 1.5
y = x1 + x2
if y>0.9 and y<=1.8:
c = c + 1
return x1,x2,c
print "test: ",test()
def sim(a,b):
#pyab1 = sum([a for a in a if a>0.9 and a<=1.8])/10000
#pyab2 = sum([b for b in b …Run Code Online (Sandbox Code Playgroud) 我正在制作一个时钟驱动的模拟程序,除其他问题外,我的主要while循环,while(jobsCompleted < jobsToComplete)循环次数超过预期/需要.例如,如果我要分配500 jobsToComplete,程序结束时的输出将告诉我已完成505个作业.我现在尝试调试这个问题至少一个小时,但无济于事.任何帮助表示赞赏.谢谢!
#include <iostream>
#include <string>
#include <stdlib.h>
#include <queue>
#include <fstream>
#include "job.cpp"
using namespace std;
int main()
{
ofstream cpuSim;
cpuSim.open("cpuSim.out.txt");
int clock = 0, jobsCompleted = 0, jobsToComplete = 0, probUser = 0, probability, id = 0;
jobType_t job_type;
int inWQ, outWQ, inCPUQ, outCPUQ, required, given, jobTypeInt, timeSpentInCPUqueue = 0, timeSpentInWaitQueue = 0, CPUidle = 0;
queue<job> CPUqueue, waitQueue;
int numIO = 0, numCPU = 0;
srand(time(NULL));
cout << "Enter how many …Run Code Online (Sandbox Code Playgroud) 假设我想从对数正态分布模拟10个观测值并重复这100次.我写了一些R代码,但由于某种原因它没有用.这是代码:
for(i in 1:100)
{
x = rlnorm(10, meanlog = 0, sdlog = 1)
}
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?
我正在研究康威的生命克隆游戏因为这是一个好习惯,但我遇到了一个问题.我看到有像素删除和重生,但所有像素只是展开在屏幕的最后,然后其他像素重生,但它只是空转.
以下是一些截图:

我将向您展示我的一些逻辑代码.它全部在change方法中处理:
package main;
import java.awt.Color;
import java.awt.Graphics;
public class Functions {
public static int pixelsize=6,gridwidth=800/6,gridheight=600/6;
static int[][] pixels = new int[gridwidth][gridheight];
static boolean first = true;
public static void change(){
for(int i = 0; i < gridwidth; i++){
for(int j = 0; j < gridheight; j++){
int neighbors = 0;
//check each cell
try{
if(pixels[i+1][j] == 1){neighbors++;}
if(pixels[i-1][j] == 1){neighbors++;}
if(pixels[i+1][j-1] == 1){neighbors++;}
if(pixels[i][j+1] == 1){neighbors++;}
if(pixels[i][j-1] == 1){neighbors++;}
if(pixels[i+1][j+1] == 1){neighbors++;}
if(pixels[i-1][j-1] == 1){neighbors++;}
if(pixels[i-1][j+1] …Run Code Online (Sandbox Code Playgroud) 我有一个大小为50,000 x 1的矢量模拟数据,它有NaNs和非NaNs.我想平均非NaNs,但功能nanmean返回NAN.我试过删除NANs,但我只得到一个零向量.对矢量的目视检查让我怀疑这个矢量的真实均值是NaN.
此外,我想使用此向量来计算与其他几个向量的协方差(在某些时候).我的替代方案是在Excel中执行此操作,这将是痛苦的.
有什么想法吗?
谢谢
我有一个大型 verilog 项目,我正在将它合成到 xilinx fpga 上并在 modelsim 中进行模拟。有几个模块,我想在其中模拟所述模块的一个版本并合成另一个版本。例如,我有一个参数化的重置去抖动器,它计算几毫秒。显然,对于模拟来说,这很烦人,所以在我模拟之前,我将去抖动计数更改为 10 个时钟周期。目前我有一个标志(`define SIMULATION),我将其注释掉以进行综合。然后在我的模块中,我利用诸如 'ifdef 之类的编译器指令根据合成/模拟来编译不同版本的 deouncer:
`ifdef SIMULATION
button_debouncer #(1,5, 24)
`else
button_debouncer #(1,12000000,24)
`endif
resetdebounce(/**/
// Outputs
.debounced (reset),
// Inputs
.clk (clk),
.button (~reset_button));
Run Code Online (Sandbox Code Playgroud)
虽然这行得通,但它要求我每次从 modlesim 切换到 ISE 时都注释输入/输出`define SIMULATION。我经常忘记,浪费时间等等。
是否有自动确定正在使用的工具的方法?例如,我可以说ifdef XILINX orifdef MODELSIM 之类的东西,而不是我的 `ifdef SIMULATION hack?非常感谢!
我有一个模型,我需要更改我目前在Simulink模型中的每个块的采样时间.
问题是我有这么多的块,使每个单独的一个更改这个参数很麻烦.有没有办法为一组街区改变它?
还有一件事,"-1"表示的默认采样时间是多少?
我是VEINS的新手,正在尝试在MyVeinsApp.cc中实现加权p持久性。该公式中使用了发送节点和接收节点之间的距离。我看到了下面的两个功能。
virtual Coord& getSenderPos();
virtual const Coord& getSenderPos() const {return const_cast<WaveShortMessage*>(this)->getSenderPos();}
Run Code Online (Sandbox Code Playgroud)
我应该使用其中一种方法来计算节点之间的距离吗?
请建议最好的方法。