回波的double 修改为 float

pull/3/head
陈增辉 2024-12-25 23:00:19 +08:00
parent f9537bdaf8
commit 0591b20787
5 changed files with 13 additions and 11 deletions

View File

@ -52,9 +52,9 @@ std::shared_ptr<PluseData> CreatePluseDataArr(long pluseCount)
return std::shared_ptr<PluseData>(new PluseData[pluseCount],delArrPtr); return std::shared_ptr<PluseData>(new PluseData[pluseCount],delArrPtr);
} }
std::shared_ptr<std::complex<double>> CreateEchoData(long plusePoints) std::shared_ptr<std::complex<float>> CreateEchoData(long plusePoints)
{ {
return std::shared_ptr<std::complex<double>>(new std::complex<double>[plusePoints],delArrPtr); return std::shared_ptr<std::complex<float>>(new std::complex<float>[plusePoints],delArrPtr);
} }
EchoL0Dataset::EchoL0Dataset() EchoL0Dataset::EchoL0Dataset()
@ -249,14 +249,14 @@ QString EchoL0Dataset::getEchoDataFilename()
return GPSPointFilePath; return GPSPointFilePath;
} }
void EchoL0Dataset::initEchoArr(std::complex<double> init0) void EchoL0Dataset::initEchoArr(std::complex<float> init0)
{ {
long blockline = Memory1MB * 2000 / 8 / 2 / this->PlusePoints; long blockline = Memory1MB * 2000 / 8 / 2 / this->PlusePoints;
long start = 0; long start = 0;
for (start = 0; start < this->PluseCount; start = start + blockline) { for (start = 0; start < this->PluseCount; start = start + blockline) {
long templine = start + blockline < this->PluseCount ? blockline : this->PluseCount - start; long templine = start + blockline < this->PluseCount ? blockline : this->PluseCount - start;
std::shared_ptr<std::complex<double>> echotemp = this->getEchoArr(start, templine); std::shared_ptr<std::complex<float>> echotemp = this->getEchoArr(start, templine);
for (long i = 0; i < templine; i++) { for (long i = 0; i < templine; i++) {
for (long j = 0; j < this->PlusePoints; j++) { for (long j = 0; j < this->PlusePoints; j++) {
echotemp.get()[i * this->PlusePoints + j] = init0; echotemp.get()[i * this->PlusePoints + j] = init0;

View File

@ -72,7 +72,7 @@ struct PluseData {
long getPluseDataSize(PluseData& pluseData); long getPluseDataSize(PluseData& pluseData);
ErrorCode getPluseDataFromBuffer(char* buffer, PluseData& data); ErrorCode getPluseDataFromBuffer(char* buffer, PluseData& data);
std::shared_ptr<PluseData> CreatePluseDataArr(long pluseCount); std::shared_ptr<PluseData> CreatePluseDataArr(long pluseCount);
std::shared_ptr<std::complex<double>> CreateEchoData(long plusePoints); std::shared_ptr<std::complex<float>> CreateEchoData(long plusePoints);
@ -108,7 +108,7 @@ public:
QString getGPSPointFilename(); QString getGPSPointFilename();
QString getEchoDataFilename(); QString getEchoDataFilename();
void initEchoArr(std::complex<double> init0); void initEchoArr(std::complex<float> init0);
private: // ²úÆ·Ãû³ÆÉèÖà private: // ²úÆ·Ãû³ÆÉèÖÃ

View File

@ -390,7 +390,7 @@ ErrorCode RTPCProcessCls::RTPCMainProcess_GPU( )
long PlusePoint = this->EchoSimulationData->getPlusePoints(); long PlusePoint = this->EchoSimulationData->getPlusePoints();
// ³õʼ»¯»Ø²¨ // ³õʼ»¯»Ø²¨
this->EchoSimulationData->initEchoArr(std::complex<double>(0, 0)); this->EchoSimulationData->initEchoArr(std::complex<float>(0, 0));
POLARTYPEENUM polartype = this->TaskSetting->getPolarType(); POLARTYPEENUM polartype = this->TaskSetting->getPolarType();
#ifndef __CUDANVCC___ #ifndef __CUDANVCC___
@ -800,7 +800,7 @@ ErrorCode RTPCProcessCls::RTPCMainProcess_GPU( )
for (startprfid = 0; startprfid < pluseCount; startprfid = startprfid + echoblockline) { for (startprfid = 0; startprfid < pluseCount; startprfid = startprfid + echoblockline) {
long templine = startprfid + echoblockline < PluseCount ? echoblockline : PluseCount - startprfid; long templine = startprfid + echoblockline < PluseCount ? echoblockline : PluseCount - startprfid;
std::shared_ptr<std::complex<double>> echotemp = this->EchoSimulationData->getEchoArr(startprfid, templine); std::shared_ptr<std::complex<float>> echotemp = this->EchoSimulationData->getEchoArr(startprfid, templine);
for (long tempprfid = 0; tempprfid < templine; tempprfid++) { for (long tempprfid = 0; tempprfid < templine; tempprfid++) {
{// ¼ÆËã {// ¼ÆËã

View File

@ -249,7 +249,7 @@ ErrorCode TBPImageAlgCls::ProcessGPU()
if (startechoid + tempechoBlockline >= PRFCount) { if (startechoid + tempechoBlockline >= PRFCount) {
tempechoBlockline = PRFCount - startechoid; tempechoBlockline = PRFCount - startechoid;
} }
std::shared_ptr<std::complex<double>> echoArr = this->L0ds->getEchoArr(startechoid, tempechoBlockline); std::shared_ptr<std::complex<float>> echoArr = this->L0ds->getEchoArr(startechoid, tempechoBlockline);
std::shared_ptr<float> antpx(new float[tempechoBlockline*PlusePoints]); std::shared_ptr<float> antpx(new float[tempechoBlockline*PlusePoints]);
std::shared_ptr<float> antpy(new float[tempechoBlockline* PlusePoints]); std::shared_ptr<float> antpy(new float[tempechoBlockline* PlusePoints]);
std::shared_ptr<float> antpz(new float[tempechoBlockline* PlusePoints]); std::shared_ptr<float> antpz(new float[tempechoBlockline* PlusePoints]);
@ -276,7 +276,8 @@ ErrorCode TBPImageAlgCls::ProcessGPU()
void TBPImageGPUAlg(std::shared_ptr<float> antPx, std::shared_ptr<float> antPy, std::shared_ptr<float> antPz, void TBPImageGPUAlg(std::shared_ptr<float> antPx, std::shared_ptr<float> antPy, std::shared_ptr<float> antPz,
std::shared_ptr<float> imgx, std::shared_ptr<float> imgy, std::shared_ptr<float> imgz, std::shared_ptr<float> imgx, std::shared_ptr<float> imgy, std::shared_ptr<float> imgz,
std::shared_ptr<std::complex<double>> echoArr, std::shared_ptr<std::complex<float>> imgArr, std::shared_ptr<std::complex<float>> echoArr,
std::shared_ptr<std::complex<float>> imgArr,
float freq, float fs, float Rnear, float Rfar, float freq, float fs, float Rnear, float Rfar,
long rowcount, long colcount, long rowcount, long colcount,
long prfcount, long freqcount long prfcount, long freqcount

View File

@ -67,7 +67,8 @@ void CreatePixelXYZ(std::shared_ptr<EchoL0Dataset> echoL0ds,QString outPixelXYZP
void TBPImageProcess(QString echofile,QString outImageFolder,QString imagePlanePath,long num_thread); void TBPImageProcess(QString echofile,QString outImageFolder,QString imagePlanePath,long num_thread);
void TBPImageGPUAlg(std::shared_ptr<float> antPx, std::shared_ptr<float> antPy, std::shared_ptr<float> antPz, void TBPImageGPUAlg(std::shared_ptr<float> antPx, std::shared_ptr<float> antPy, std::shared_ptr<float> antPz,
std::shared_ptr<float> img_x, std::shared_ptr<float> img_y, std::shared_ptr<float> img_z, std::shared_ptr<float> img_x, std::shared_ptr<float> img_y, std::shared_ptr<float> img_z,
std::shared_ptr<std::complex<double>> echoArr, std::shared_ptr<std::complex<float>> img_arr, std::shared_ptr<std::complex<float>> echoArr,
std::shared_ptr<std::complex<float>> img_arr,
float freq, float fs, float Rnear, float Rfar, float freq, float fs, float Rnear, float Rfar,
long rowcount, long colcount, long rowcount, long colcount,
long prfcount,long freqcount ); long prfcount,long freqcount );