functionW=J2000_2_WGS84_matrix(JD_time)%计算J2000坐标系转换WGS84坐标系的旋转矩阵%目前暂未考虑地球极移矩阵%输入参数:%JD_time:儒略日期%输出参数:%W:WGS84坐标系与J2000.0坐...

function W = J2000_2_WGS84_matrix(JD_time)

% 计算J2000坐标系转换WGS84坐标系的旋转矩阵

% 目前暂未考虑地球极移矩阵

% 输入参数:

% JD_time: 儒略日期

% 输出参数:

% W: WGS84坐标系与J2000.0坐标系的转换矩阵,

%% -------------------- 计算极移矩阵 A --------------------------

%-- load: 读取地球的地极坐标(xp,yp)。

[non,Ry,non] = rotate_matrix( -deg2radian(0,0,-0.15) );

[Rx,non,non] = rotate_matrix( -deg2radian(0,0,0.3) );

%-- A = Ry(-xp)*Rx(-yp);

A = Ry*Rx;

%% ------------------- 计算自转矩阵 B----------------------------

T0 = ((JD_time - 2400000.5) - 51544.5)/36525.0; %-- 从J2000起到t时刻的儒略世纪数

Tu = (JD_time - 2451545.0)/36525.0;

%--

e_M = deg2radian(23,26,21.448) - deg2radian(0,0,46.8150)*T0 - deg2radian(0,0,0.00059)*T0^2 + deg2radian(0,0,0.001813)*T0^3; %弧度角

DE_Blocks = DE405_load(JD_time); %读取DE405数据包

DE_angle =Planet_Position_J2000_Earth(JD_time,DE_Blocks.Blocks,14); %获取对应时间的黄经章动和交角章动

delta_fai = DE_angle(1);

delta_e = DE_angle(2);

%--

% seta_G = ( 100.46061837 + 36000.770053608*Tu + 0.000387933*Tu^2 - Tu^3/38710000 )/180*pi ...

% + delta_fai *cos(e_M + delta_e) + 0.178401471734655; %-- 计算格林尼治恒星时[弧度];

seta_G = ( deg2radian(0,0,67310.54841) + deg2radian(876600,0,8640184.812866)*Tu + ...

deg2radian(0,0,0.093104)*Tu^2 - deg2radian(0,0,0.62e-5)*Tu^3)*15 + ...

delta_fai *cos(e_M + delta_e) + 2.61036020374891 ; %-- 计算格林尼治恒星时[弧度];

[non,non,B] = rotate_matrix(seta_G); %-调用旋转矩阵

%% -------------------- 计算章动矩阵 C ----------------------------

[Rx_e,non,non] = rotate_matrix(-e_M-delta_e);

[non,non,Rz_fai] = rotate_matrix(-delta_fai);

[Rx_eM,non,non] = rotate_matrix(e_M);

C = Rx_e * Rz_fai * Rx_eM;

%% -------------------- 计算岁差矩阵 D --------------------------

ebucailong_p = deg2radian(0,0,2306.2181)*T0 + deg2radian(0,0,0.30188)*T0^2 + deg2radian(0,0,0.017998)*T0^3;

seta_p = deg2radian(0,0,2004.3109)*T0 - deg2radian(0,0,0.42665)*T0^2 + deg2radian(0,0,0.041833)*T0^3;

Z_p = deg2radian(0,0,2306.2181)*T0 + deg2radian(0,0,1.09468)*T0^2 + deg2radian(0,0,0.018203)*T0^3;

%-

[non,non,Rz_Z] = rotate_matrix(-Z_p);

[non,Ry_seta,non] = rotate_matrix(seta_p);

[non,non,Rz_ep] = rotate_matrix(-ebucailong_p);

D = Rz_Z*Ry_seta*Rz_ep;

%% ------------------- 计算旋转矩阵 W -----------------------

W = A*B*C*D;

展开

j2000 经度_j2000坐标系转换WGS84坐标,看不太懂相关推荐

  1. numpy.ndarray.view()(懵逼,看不太懂???)(view不会开辟新的内存空间)

    from numpy\core_multiarray_umath.py def view(self, dtype=None, type=None): # real signature unknown; ...

  2. php删除图片按钮代码,jquery 按钮预览图片功能的代码,我看不太懂。应该怎么学...

    摘要:<?phpnamespace app\admin\controller;use app\admin\controller\Common;use app\admin\model\NewsMo ...

  3. 浙大MBA提前批面试有点看不太懂了……

           昨天浙大MBA提前批面试杭州第二批结果正式公布,直观的感觉是提前批面试的风向在变,标准在调整,原因是以往达立易考能够做到六成上下的优秀率已经可以成为业界天花板,但第二批达到了83%优秀率 ...

  4. matlab在sin处出现解析错误,用matlab function时出现一些错误,看不太懂

    我调用了4次matlab function,但是出现了一些错误,可能是变量定义有问题,但是我不太会在matlab function中修改变量.版本为2017a 这是function中代码: 第一段 f ...

  5. Python3 Wgs84\gcj02\bd09\mercator\bd09mc坐标系转换与投影

    最基础的一组经纬度坐标转换,在网上找到过JavaScript和java版本的,但是没有找到python版本的,把JavaScript版本的改成了python版本的,能凑合用. "" ...

  6. python坐标系转换函数_python WGS84和ECEF坐标的转换

    地心地固坐标系(Earth-Centered, Earth-Fixed,ECEF),简称地心坐标系. 地理坐标系统(Geographic Coordinate System,GCS)1,坐标系是地心坐 ...

  7. python实现坐标系转换_(数据科学学习手札60)用Python实现WGS84、火星坐标系、百度坐标系、web墨卡托四种坐标相互转换...

    importmathclassLngLatTransfer():def __init__(self): self.x_pi= 3.14159265358979324 * 3000.0 / 180.0s ...

  8. gcoord: 转换WGS84、GCJ02、BD09坐标,转换百度高德地图坐标系

    做过地图相关开发的同学肯定会遇到这样一个问题:同样的经纬度坐标,在百度地图和高德地图上位置不一样. 关于坐标系 我们通常用经纬度来表示一个地理位置,但是由于一些原因,我们从不同渠道得到的经纬度信息可能 ...

  9. gcoord: 转换WGS84、GCJ02、BD09坐标,解决百度地图高德地图坐标系不统一的问题

    做过地图相关开发的同学肯定会遇到这样一个问题:同样的经纬度坐标,在百度地图和高德地图上位置不一样. 关于坐标系 我们通常用经纬度来表示一个地理位置,但是由于一些原因,我们从不同渠道得到的经纬度信息可能 ...

  10. 【Java代码】坐标系说明+WGS84\GCJ02\BD09坐标系转换工具+Java坐标系转换及验证源代码分享(粘贴可用)

    1. 坐标系说明 开发地图应用服务时,一定会接触到各种坐标系,而保证坐标系的正确与合理是一切数据分析的前提,总的来说,坐标系可以分为两大类:地理坐标系GCS(Geographic Coordinate ...

最新文章

  1. 【Webview相关问题】登陆失败之cookie陷阱
  2. java静态方法 问题_Java中堆、栈,静态方法和非静态方法的速度问题
  3. java商城开发_javaweb实战之商城项目开发(一)
  4. boost::locale::to_upper用法的测试程序
  5. linux下 mysql 忘记root用户密码解决办法
  6. matlab里用fix函数,Matlab基本函数-fix函数
  7. 静态网站优化技巧总结
  8. SecureCRT设置
  9. (4) numpy.isnan() 用法
  10. php 怎么使用api付款,使用PHP中的REST API进行Paypal付款
  11. PV 和 UV 的区别
  12. linux动态监控系统
  13. 基于pytorch的sque2suqe with attention实现与介绍
  14. [编程题]漂流船问题
  15. c语言 遍历搜索文件夹(获取文件夹中所有内容)
  16. 前端Html的全新认识
  17. Awesome Chrome 插件集锦
  18. JQ...CSS3爱心飘落特效
  19. springBoot整合sftp
  20. 在MySQL中,如何给用户授予权限

热门文章

  1. librdkafka------C kafka Client
  2. 判断一个三位数是否为水仙花数
  3. 饿了么app的架构演进之路,你的外卖可不简单
  4. transformer 翻译模型
  5. 图像处理之直方图匹配
  6. 三个比较经典的策略: Dual Thrust、R-Breaker、Dynamic Breakout II
  7. WPF下关于NotifyIcon的使用
  8. 2 Features Engineering for Machine Learning中文翻译系列(二)
  9. Python爬虫——5-2.使用selenium和phantomjs模拟QQ空间登录
  10. matlab倒立摆pid仿真,一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真