2025-02-19 02:06:45 +00:00
|
|
|
|
#include "GPUTool.cuh"
|
|
|
|
|
#include <cuda_runtime.h>
|
|
|
|
|
#include <device_launch_parameters.h>
|
|
|
|
|
#include <cublas_v2.h>
|
|
|
|
|
#include "BaseConstVariable.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-03-06 09:58:40 +00:00
|
|
|
|
extern __device__ double getNumberDopplerCenterRate(double R, double r0, double r1, double r2, double r3, double r4,double reftime);
|
2025-02-19 02:06:45 +00:00
|
|
|
|
|
2025-03-06 09:58:40 +00:00
|
|
|
|
extern __device__ double getDopplerCenterRate(double Rx,double Ry,double Rz,double Vx,double Vy,double Vz,double fact_lamda); //fact_lamda lamda <20>ĵ<EFBFBD><C4B5><EFBFBD>
|
2025-02-19 02:06:45 +00:00
|
|
|
|
|
2025-03-06 09:58:40 +00:00
|
|
|
|
extern __device__ double getPolyfitNumber(double x, double a0, double a1, double a2, double a3, double a4,double a5);
|
2025-02-19 02:06:45 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//
|
2025-02-19 04:29:15 +00:00
|
|
|
|
extern "C" void RDProcess_dopplerGPU(
|
|
|
|
|
double* demX, double* demY, double* demZ, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
float* outRidx,float* outCidx, // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
long rowcount,long colcount,
|
2025-02-19 06:19:32 +00:00
|
|
|
|
|
|
|
|
|
double starttime, double nearRange, double farRange,
|
|
|
|
|
double PRF, double Fs,
|
|
|
|
|
double fact_lamda, // lamda <20><><EFBFBD><EFBFBD>
|
|
|
|
|
|
2025-02-19 04:29:15 +00:00
|
|
|
|
double Xp0 = 0, double Yp0 = 0,double Zp0 = 0,double Xv0 = 0,double Yv0 = 0,double Zv0 = 0, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double Xp1 = 0, double Yp1 = 0,double Zp1 = 0,double Xv1 = 0,double Yv1 = 0,double Zv1 = 0,
|
|
|
|
|
double Xp2 = 0, double Yp2 = 0,double Zp2 = 0,double Xv2 = 0,double Yv2 = 0,double Zv2 = 0,
|
|
|
|
|
double Xp3 = 0, double Yp3 = 0,double Zp3 = 0,double Xv3 = 0,double Yv3 = 0,double Zv3 = 0,
|
|
|
|
|
double Xp4 = 0, double Yp4 = 0,double Zp4 = 0,double Xv4 = 0,double Yv4 = 0,double Zv4 = 0,
|
|
|
|
|
double Xp5 = 0, double Yp5 = 0,double Zp5 = 0,double Xv5 = 0,double Yv5 = 0,double Zv5 = 0,
|
2025-02-19 06:19:32 +00:00
|
|
|
|
double reftime=0,double r0 = 0, double r1 = 0, double r2 = 0, double r3 = 0, double r4 = 0
|
2025-02-19 02:06:45 +00:00
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-03-14 06:49:13 +00:00
|
|
|
|
//
|
|
|
|
|
extern "C" void RDProcess_demSloperGPU(
|
|
|
|
|
double* demX, double* demY, double* demZ, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double* demSloperX, double* demSloperY, double* demSloperZ, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
float* InRidx, //float* InCidx, // <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
float* outIncAngle,
|
|
|
|
|
long rowcount, long colcount,
|
|
|
|
|
double starttime, double nearRange, double farRange,
|
|
|
|
|
double PRF, //double Fs,
|
|
|
|
|
//double fact_lamda, // lamda <20><><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
double Xp0 = 0, double Yp0 = 0, double Zp0 = 0, double Xv0 = 0, double Yv0 = 0, double Zv0 = 0, // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double Xp1 = 0, double Yp1 = 0, double Zp1 = 0, double Xv1 = 0, double Yv1 = 0, double Zv1 = 0,
|
|
|
|
|
double Xp2 = 0, double Yp2 = 0, double Zp2 = 0, double Xv2 = 0, double Yv2 = 0, double Zv2 = 0,
|
|
|
|
|
double Xp3 = 0, double Yp3 = 0, double Zp3 = 0, double Xv3 = 0, double Yv3 = 0, double Zv3 = 0,
|
|
|
|
|
double Xp4 = 0, double Yp4 = 0, double Zp4 = 0, double Xv4 = 0, double Yv4 = 0, double Zv4 = 0,
|
|
|
|
|
double Xp5 = 0, double Yp5 = 0, double Zp5 = 0, double Xv5 = 0, double Yv5 = 0, double Zv5 = 0
|
|
|
|
|
|
|
|
|
|
);
|
2025-02-19 02:06:45 +00:00
|
|
|
|
|
2025-04-07 02:33:12 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern "C" void RDProcess_dopplerGPU_InSARImagePlaneXYZR(
|
|
|
|
|
double* demX, double* demY, double* demZ,
|
|
|
|
|
double* outR,
|
|
|
|
|
long rowcount, long colcount,
|
|
|
|
|
double starttime, double nearRange, double farRange,
|
|
|
|
|
double PRF, double Fs,
|
|
|
|
|
double fact_lamda,
|
|
|
|
|
double Xp0, double Yp0, double Zp0, double Xv0, double Yv0, double Zv0,
|
|
|
|
|
double Xp1, double Yp1, double Zp1, double Xv1, double Yv1, double Zv1,
|
|
|
|
|
double Xp2, double Yp2, double Zp2, double Xv2, double Yv2, double Zv2,
|
|
|
|
|
double Xp3, double Yp3, double Zp3, double Xv3, double Yv3, double Zv3,
|
|
|
|
|
double Xp4, double Yp4, double Zp4, double Xv4, double Yv4, double Zv4,
|
|
|
|
|
double Xp5, double Yp5, double Zp5, double Xv5, double Yv5, double Zv5,
|
|
|
|
|
double reftime, double r0, double r1, double r2, double r3, double r4
|
|
|
|
|
);
|