注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

阿弥陀佛

街树飘影未见尘 潭月潜水了无声 般若观照心空静...

 
 
 

日志

 
 
关于我

一直从事气象预报、服务建模实践应用。 注重气象物理场、实况场、地理信息、本体知识库、分布式气象内容管理系统建立。 对Barnes客观分析, 小波,计算神经网络、信任传播、贝叶斯推理、专家系统、网络本体语言有一定体会。 一直使用Java、Delphi、Prolog、SQL编程。

网易考拉推荐

scala breeze Kalman filter  

2015-02-26 00:09:35|  分类: Scala |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
Example: Canon Ball
https://github.com/fommil/netlib-java
https://github.com/scalanlp/breeze
val
dt = 0.1 val g = 9.8 def I = DenseMatrix.eye[Double](4) val B = DenseMatrix( (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0), (0.0, 0.0, -1.0, 0.0), (0.0, 0.0, 0.0, -1.0) ) val u = DenseVector(0, 0, g * Δt * Δt, g * Δt) val F = DenseMatrix( (1.0, dt, 0.0, 0.0), (0.0, 1.0, 0.0, 0.0), (0.0, 0.0, 1.0, dt), (0.0, 0.0, 0.0, 1.0) ) val H = I val Q = DenseMatrix.zeros[Double](4, 4) val R = I * 0.2 // guess of state and variance var s = DenseVector.zeros[Double](4) var P = I
while (x(2) >= 0) { // measurement def noisy(actual: Double) = actual + Random.nextGaussian * 50 val z = x.mapValues(noisy) // actual simulation x = F * x + B * u t += dt // prediction step val predS = F * s + B * u val predP = F * P * F.t + Q // observation step val innov = z - H * predS val innov_cov = H * predP * H.t + R // update step val gain = predP * H.t * inv(innov_cov) s = predS + gain * innov P = (I - gain * H) * predP }
scala breeze Kalman filter - 险峰 - 阿弥陀佛
 

  评论这张
 
阅读(756)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017