我试图使用mathematica绘制一些微分方程的斜率场,但无法弄清楚.说我有等式
y' = y(t)
y(t) = C * E^t
Run Code Online (Sandbox Code Playgroud)
如何绘制坡度场?
我发现了一个例子,但复杂的方式让我理解 http://demonstrations.wolfram.com/SlopeFields/
我无法弄清楚如何用一个变量绘制一个矢量场.也许Mathematica不支持这一点.例如:
r(t) = cost j + sint i
Run Code Online (Sandbox Code Playgroud)
与...一样
<cost, sint>
Run Code Online (Sandbox Code Playgroud)
这不起作用:
VectorPlot[{cos t, sin t}, {t, 0, 2 Pi}]
Run Code Online (Sandbox Code Playgroud)
作为奖励如何获取向量的导数?
我正在为内存非常有限的微处理器编程设计,我必须在不同的功能中使用"大量"内存.我不能有一个大的堆栈段,堆段,数据段,我必须选择哪个做大,哪个做小.我总共大约32KB,
我使用大约20KB的文本段,其余为12KB.我需要一个4KB的缓冲区来传递给不同的函数(SPI Flash扇区大小).应该在哪里初始化那个大缓冲区?
所以我的选择是:
1)如果我在函数的开头声明缓冲区,则需要使堆栈变大
spiflash_read(...)
{
u8 buffer[4096]; // allocated on stack
syscall_read_spi(buffer,...)
}
Run Code Online (Sandbox Code Playgroud)
2)动态分配,堆需要变大
spiflash_read(...)
{
u8 *buffer = (u8*) malloc(4096); // allocated in heap
syscall_read_spi(buffer,...)
}
Run Code Online (Sandbox Code Playgroud)
3)静态分配,巨大的下方不能在"SPI库"之外使用.
static u8 buffer[4096]; // allocated in data section.
spiflash_read(...)
{
syscall_read_spi(buffer,...)
}
Run Code Online (Sandbox Code Playgroud)
我的问题是哪种方法是实现这种设计的最佳方式?有人可以解释一下推理吗?