1、修改几何模块的求解器代码,显示正确的后处理;

main
simonyan 5 months ago
parent f131114d58
commit 659b13a46a

38
.gitignore vendored

@ -193,3 +193,41 @@ cython_debug/
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
GeometricSightTracking/input.txt
GeometricSightTracking/input_geo.txt
GeometricSightTracking/tmgmsg.dat
MeteorologicalEnvironmentalLoad/inter_input1.txt
MeteorologicalEnvironmentalLoad/inter_input2.txt
MeteorologicalEnvironmentalLoad/patran.ses.01
MeteorologicalEnvironmentalLoad/patran.ses.02
MeteorologicalEnvironmentalLoad/patran.ses.03
MeteorologicalEnvironmentalLoad/patran.ses.04
MeteorologicalEnvironmentalLoad/patran.ses.05
MeteorologicalEnvironmentalLoad/patran.ses.06
MeteorologicalEnvironmentalLoad/patran.ses.07
MeteorologicalEnvironmentalLoad/patran.ses.08
MeteorologicalEnvironmentalLoad/patran.ses.09
MeteorologicalEnvironmentalLoad/patran_conf.ini
OpticalLoadRadiation/patran.ses.01
OpticalLoadRadiation/patran.ses.02
OpticalLoadRadiation/patran.ses.03
OpticalLoadRadiation/patran_conf.ini
PlatformPerformance/123.jpg
PlatformPerformance/patran.ses.01
PlatformPerformance/patran.ses.02
PlatformPerformance/patran_conf.ini
PlatformPerformance/sss.jpg
PlatformPerformance/iii'.png
PlatformPerformanceImagingImpactAssessment/12.jpg
PlatformPerformanceImagingImpactAssessment/patran.ses.01
PlatformPerformanceImagingImpactAssessment/patran_conf.ini
SurfaceCharacteristicSimulation/patran.ses.01
SurfaceCharacteristicSimulation/patran.ses.02
SurfaceCharacteristicSimulation/patran.ses.03
SurfaceCharacteristicSimulation/patran.ses.04
SurfaceCharacteristicSimulation/patran_conf.ini
SystemPerformanceEvaluation/tmgmsg.dat
TOASimu/patran.ses.01
TOASimu/patran.ses.02
TOASimu/patran.ses.03
TOASimu/patran_conf.ini

@ -12,9 +12,9 @@ fclose(fileID);
AOC_t0=etime(datevec(sprintf("%s %s", C{1}{1},C{2}{1}), "yyyy/MM/dd HH:mm:ss"), datevec("2000/01/01 12:00:00", "yyyy/MM/dd HH:mm:ss"));
disp(AOC_t0);
AOC_fai = C{3};
AOC_thita = C{4};
AOC_pusai = C{5};
AOC_fai = (C{3}*pi)/180;
AOC_thita = (C{4}*pi)/180;
AOC_pusai = (C{5}*pi)/180;
AOC_a0 = C{6};
AOC_e0 = C{7};
AOC_i0 = C{8};
@ -43,11 +43,12 @@ w0=(Mu/AOC_a0^3)^0.5; %卫星轨道角速度
we=7.29211585530487e-5; %地球自转角速度
Re=6371.23; %地球平均半径
Len=length(AOC_Tin);
Thita=linspace(-8.6,8.6,Len);
%Thita=linspace(-8.6,8.6,Len);
for num=1:Len
Tin=AOC_Tin(num);
AOC_u=AOC_u0+we*Tin;
Rp_b=[sind(Thita(num)),0,cosd(Thita(num))].';
%Rp_b=[sind(Thita(num)),0,cosd(Thita(num))].';
Rp_b=[0,0,1];
[Tmp_Lon,Tmp_Lat]=SightPoint(Tin,AOC_fai,AOC_thita,AOC_pusai,AOC_a0,AOC_e0,AOC_i0,AOC_OMG0,AOC_os0,AOC_u,Rp_b);
Lon(num,1)=Tmp_Lon;
Lat(num,1)=Tmp_Lat;

@ -7,16 +7,17 @@ close all
AOC_dTime=86400;
AOC_Tin=0:AOC_Tstep:AOC_dTime;
Mu=3.986005e5; %華ヶ竘薯都杅
w0=(Mu/AOC_a0^3)^0.5; %怹陎寢耋褒厒僅
we=7.29211585530487e-5; %華ヶ赻蛌褒厒僅
Re=6371.23; %華ヶⅸ歙圉噤
Mu=3.986005e5; %<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
w0=(Mu/AOC_a0^3)^0.5; %<EFBFBD><EFBFBD><EFBFBD>ǹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
we=7.29211585530487e-5; %<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>
Re=6371.23; %<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD>
Len=length(AOC_Tin);
Thita=linspace(-8.6,8.6,Len);
%Thita=linspace(-8.6,8.6,Len);
for num=1:Len
Tin=AOC_Tin(num);
AOC_u=AOC_u0+we*Tin;
Rp_b=[sind(Thita(num)),0,cosd(Thita(num))].';
% Rp_b=[sind(Thita(num)),0,cosd(Thita(num))].';
Rp_b=[0;0;1];
[Tmp_Lon,Tmp_Lat]=SightPoint(Tin,AOC_fai,AOC_thita,AOC_pusai,AOC_a0,AOC_e0,AOC_i0,AOC_OMG0,AOC_os0,AOC_u,Rp_b);
Lon(num,1)=Tmp_Lon;
Lat(num,1)=Tmp_Lat;

@ -106,6 +106,7 @@ def main():
rmPath(outputDir)
os.mkdir(outputDir)
allPoints = []
eng = matlab.engine.start_matlab()
for index, paramVector in enumerate(paramList):
# 生成求解参数文件
@ -117,8 +118,11 @@ def main():
if os.path.exists(outputFileName):
os.remove(outputFileName)
os.rename("output.txt", outputFileName)
# 将结果数据生成html
mainMapEcharts.rendOutputGeo(outputFileName)
# 将每个结果文件的第一行独立存储
allPoints.append(globalUtils.readFileFirstLine(outputFileName))
# 将结果数据生成为json文件
# genGeoJsonFileFromOutput(outputFilePath=outputFileName)
# break
@ -126,6 +130,10 @@ def main():
# 删除旧的目录
rmPath(outputDistDir)
# 生成总体的图
globalUtils.writeFile(allPoints, outputDir + "/output_all.txt")
mainMapEcharts.rendOutputGeo(outputDir + "/output_all.txt")
# 将结果拷贝的目标目录下
shutil.copytree(outputDir, outputDistDir)
# 将2个js文件拷贝到output目录下

@ -1,21 +1,21 @@
function [AOC_t0,AOC_fai,AOC_thita,AOC_pusai,AOC_a0,AOC_e0,AOC_i0,AOC_OMG0,AOC_os0,AOC_u0,AOC_Tstep] = readInput()
% 打开文件进行读取
% <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ȡ
fileID = fopen("input.txt");
% 读取表头,前两行为表头
% <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>ͷ
header = textscan(fileID, '%s', 1);
% 读取数据
% <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
dataFormat = '%s %f %f %f %f %f %f %f %f %f %f';
data = textscan(fileID, dataFormat, 'Delimiter', ',');
% 关闭文件
% <EFBFBD>ر<EFBFBD><EFBFBD>ļ<EFBFBD>
fclose(fileID);
AOC_t0=etime(datevec(data{1}, "yyyy/MM/dd HH:mm:ss"), datevec("2000/01/01 12:00:00", "yyyy/MM/dd HH:mm:ss"));
AOC_fai = data{2};
AOC_thita = data{3};
AOC_pusai = data{4};
AOC_fai = (data{2}*pi)/180;
AOC_thita = (data{3}*pi)/180;
AOC_pusai = (data{4}*pi)/180;
AOC_a0 = data{5};
AOC_e0 = data{6};
AOC_i0 = data{7};

@ -121,3 +121,19 @@ def saveENVIImgToPng(imgFilePath: str, pngFilePath: str):
def printWithFlush(*args, sep=' ', end='\n', file=None, flush=True):
print(*args, sep=sep, end=end, file=file, flush=flush)
# sys.stdout.flush()
def readFileFirstLine(filePath):
# 打开文件
with open(filePath, 'r') as file:
# 读取第一行
first_line = file.readline()
print(first_line)
return first_line
def writeFile(stringList, filePath):
# 打开文件进行写入
with open(filePath, 'w') as file:
# 遍历字符串数组
for item in stringList:
# 将每个字符串写入文件,并添加换行符
file.write(item)
Loading…
Cancel
Save