Advertisement

CBF中将for循环转换为矩阵乘法的方法(ArrayFire)

阅读量:
复制代码
 /*******************************************************

    
  <span style="font-size:18px;">* Copyright (c) 2016.6.19
    
  * 算法的改进:主要解决了两个for循环的问题
    
  *第一个for是角度的问题,循环360个角度或者更小来得到每个角度的
    
  *输出功率。
    
  *第二个for循环是通道的问题,目前是8通道,对于arrarfire来讲这个很好做
    
  *直接生成1行8列的矩阵
    
  * 核心在于第一版本需要用for循环角度,现在的改变是将角度做成360行1列的矩阵
    
  *直接与通道矩阵相乘,变成360行8列的新矩阵a_s,此时注意求功率谱时候a_s*R*a_sT
    
  *变成了360*360的矩阵,此时只有对角线上的360个点有用,对应360个循环,虽然在矩阵乘法
    
  *上量有所增加,但是从根本上解决了并行问题,初步简单(没有其他常数和复数)
    
  *测试 速度比之前提升至少100倍,并且arrafire具有很好的稳定性,顺便推广一下。
    
  **此处只是思想,代码指示简单测试**</span>
    
  ********************

全部评论 (0)

还没有任何评论哟~