unwrap.cpp
上传用户:jtjnyq9001
上传日期:2014-11-21
资源大小:3974k
文件大小:1k
源码类别:

3G开发

开发平台:

Visual C++

  1. //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  2. //
  3. //  File = unwrap.cpp
  4. //
  5. //
  6. #include <math.h>
  7. //#include <stdlib.h>
  8. //#include <fstream>
  9. #include "unwrap.h"
  10. //using namespace std;
  11. //extern ofstream *DebugFile;
  12. //========================================
  13. //
  14. void UnwrapPhase( int samp_num, double *phase)
  15. {
  16.   static double half_circle_offset;
  17.   static double old_phase;
  18.   if(samp_num==0){
  19.     half_circle_offset = 0.0;
  20.     old_phase = *phase;
  21.     }
  22.   else{
  23.     *phase = *phase + half_circle_offset;
  24.     if( fabs(old_phase - *phase) > double(90.0)){
  25.       if(old_phase < *phase){
  26.         *phase = *phase - 360.0;
  27.         half_circle_offset -= 360.0;
  28.         }
  29.       else{
  30.         *phase = *phase + 360.0;
  31.         half_circle_offset += 360.0;
  32.         }
  33.       }
  34.     old_phase = *phase;
  35.     }
  36.   return;
  37. }