DirectX11海洋模拟实践

DirectX11海洋模拟实践

框架基于https://www.cnblogs.com/X-Jun/p/9028764.html
在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cZQUaaYD-1659186616921)(C:\Users\Estelle\Documents\MarkDown\图形学\海洋模拟\image-20220730195102893.png)]

尽力用最精简的语言描述FFT海洋

总览

在这里插入图片描述

预计算阶段

计算静态海洋频谱值 h0

频谱计算阶段

在此阶段进行更新,引入时间变量

计算高度偏移频谱、水平偏移频谱、法线频谱

逆傅里叶变换阶段

进行二维傅里叶变换

得到偏移数据以及法线数据

最终处理阶段

对数据进行整合

理论

参考https://zhuanlan.zhihu.com/p/64414956

海面的IDFT模型

h(x⃗,t)=∑k⃗h~(k⃗,t)eik⃗⋅x⃗ h(\vec{x}, t)=\sum_{\vec{k}} \tilde{h}(\vec{k}, t) e^{i \vec{k} \cdot \vec{x}} h(x ,t)=k h~(k ,t)eik x

此方程为二维逆傅里叶变换

其中k空间的两个分量定义为
kx=2πnL,n∈{ −N2,−N2+1,…,N2−1}kz=2πmL,m∈{ −N2,−N2+1,…,N2−1} \begin{array}{l} k_{x}=\frac{2 \pi n}{L}, n \in\left\{-\frac{N}{2},-\frac{N}{2}+1, \ldots, \frac{N}{2}-1\right\} \\ k_{z}=\frac{2 \pi m}{L}, m \in\left\{-\frac{N}{2},-\frac{N}{2}+1, \ldots, \frac{N}{2}-1\right\} \end{array} kx=L2πn,n{ 2N,2N+1,,2N1}kz=L2πm,m{ 2N,2N+1,,2N1}

海洋频谱

菲利普频谱(Phillips spectrum)
h~(k⃗,t)=h~0(k⃗)eiω(k)t+h~0∗(−k⃗)e−iω(k)t \tilde{h}(\vec{k}, t)=\tilde{h}_{0}(\vec{k}) e^{i \omega(k) t}+\tilde{h}_{0}^{*}(-\vec{k}) e^{-i \omega(k) t} h~(k ,t)=h~0(k )

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值