A A A A Автор Тема: Как найти угол между плоскостью эклиптики и горизонтом  (Прочитано 3527 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн vasnasАвтор темы

  • **
  • Сообщений: 51
  • Благодарностей: -4
    • Сообщения от vasnas
    • Мой сайт
Как вычислить угол наклона эклиптики (путь по которому ходит солнце) к горизонту?

Имею высоту солнца над горизонтом в градусах и азимут http://ru.wikipedia.org/wiki/Азимут_(астрономия)

Или из других координат солнца в любых системах координат на данный момент.

Не могу сообразить, помогите.
« Последнее редактирование: 02 Июл 2013 [17:23:14] от vasnas »
С уважением , Саша!

Оффлайн xd

  • *****
  • Сообщений: 17 982
  • Благодарностей: 378
    • Skype - deimos.belastro.net
  • Награды Открытие комет, астероидов, сверхновых звезд, научно значимые исследования.
    • Сообщения от xd
    • Белорусская любительская астрономическая сеть
Этот угол меняется. В каждый момент времени он равен
\( \sin \psi = \frac{dh}{d\lambda}|h=0\)
У природы нет плохой погоды, у неё просто на нас аллергия.

Учение без размышления бесполезно, но и размышление без учения опасно /Конфуций/
Слово есть поступок. /Л. Толстой/

Оффлайн vasnasАвтор темы

  • **
  • Сообщений: 51
  • Благодарностей: -4
    • Сообщения от vasnas
    • Мой сайт
я думал, что это тангенс высоты и угла солнца к полуденной линии ...

формулу расшифруйте пожалуйста
С уважением , Саша!

Оффлайн fregat

  • Новичок
  • *
  • Сообщений: 3
  • Благодарностей: 1
    • Сообщения от fregat
Как вычислить угол наклона эклиптики (путь по которому ходит солнце) к горизонту?
cos(B) = cos(F)*cos(Dec)*cos(S - Ra)+sin(F)*sin(Dec)
B - угол между плоскостью горизонта и плоскостью эклиптики
F - широта места
Ra - прямое восхождение полюса эклиптики (=18 часов = 270 градусов)
Dec - склонение полюса эклиптики (=66.55 градусов)
S - местное звездное время на данный момент

Все величины перевести в радианы. От cos(B) взять арккосинус и перевести в градусы.

AK1962

  • Гость
формулу расшифруйте пожалуйста
   Эклиптика, как и горизонт, является большим кругом на небесной сфере. Задача сводится к вычислению азимутальных координат полюса эклиптики в любой момент по звёздному времени. Зенитное расстояние полюса эклиптики и будет наклоном эклиптики к горизонту в данный момент.
   Если склонение полюса эклиптики заменить углом наклона эклиптики к экватору (Dec = 90 - e), формула преобразуется в
cos(B) = sin(F)*cos(е) - cos(F)*sin(е)*cos( S - Ra)

Оффлайн vasnasАвтор темы

  • **
  • Сообщений: 51
  • Благодарностей: -4
    • Сообщения от vasnas
    • Мой сайт
спасибо я уже получил

% Ecliptics to horizon inclination - наклон эклиптики к горизонту
    mat1 = cspice_pxform( topo_frame, 'ECLIPJ2000', et_horos ); mat1 = mat1(:,3,:);
    [~, lon_p, lat_p] = cspice_reclat(mat1);
    eclip_horiz_incl = - 90 + lat_p * cspice_dpr;
   
С уважением , Саша!

AK1962

  • Гость
спасибо я уже получил
  Чего получил-то? Сам-то хоть понял?

Оффлайн vasnasАвтор темы

  • **
  • Сообщений: 51
  • Благодарностей: -4
    • Сообщения от vasnas
    • Мой сайт
Чего получил-то? Сам-то хоть понял?                        
                     
                  
да вот:



%-------------------------------------------------------------------------------------------------------------
% Drawing a horoscope of a date.
% Input : the date of a horoscope
% Reference: http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/MATLAB/
% Reference: http://ru.scribd.com/doc/57253920/Anatoly-T-fomenko-Mysteries-of-Egyptian-Zodiacs-and-Other-Riddles-of-Ancient-History
% Tested : Matlab R2011b, 24.04.2013 - 09.07.2013
%     By : Poltavsky Sasha         
%    URL : http://www.bible-exodus.narod2.ru/articles/astro_ephemeris/jpl_ephemeris/jpl_ephemeris.html#zodiacs
%--------------------------------------------------------------------------------------------------------------

% ATTENTION !!! ВНИМАНИЕ !!!
% before runing tha script download and install additional files : % перед тем как запустить скрипт, скачайте и добавьте
% ftp://ssd.jpl.nasa.gov/pub/eph/planets/bsp/de422.bsp - ephemeris for 2999 BC ... 3000 AD
% ftp://naif.jpl.nasa.gov/pub/naif/generic_kernels/spk/planets/a_old_versions/de408.bsp - ephemeris for 10000 BC ... 10000 AD
% http://www.bible-exodus.narod2.ru/articles/astro_ephemeris/jpl_ephemeris/data/my_sites.tpc - or use '399' instead of 'observer'
% http://www.bible-exodus.narod2.ru/articles/astro_ephemeris/jpl_ephemeris/data/my_frames.tf - or use '399' instead of 'observer'
% http://naif.jpl.nasa.gov/pub/naif/pds/data/ros-e_m_a_c-spice-6-v1.0/rossp_1000/DATA/FK/RSSD0002.TF
% http://bible-exodus.narod2.ru/articles/astro_ephemeris/jpl_ephemeris/scripts/mice_toolkit_n0064/mice_tol_1e-4_lib.zip - for increasing TOL
% add paths to standart.tm

% also you need to add my subroutines : set_observer.m, get_observer.m,
% angl2minsec.m ... - they are below in commentc (uncomment Ctrl + T, cut,
% and save with it's file names, add their paths to MatLab


     clear all;
     cspice_furnsh( 'd:\Documents and Settings\user\Мои документы\MATLAB\astro\mice\data\standard.tm' );
     
     fl_lng = 1; % Output language English = 1, Russian =0, Both = 2
         
     % the horoscope epoch % время гороскопа
     et_horos = cspice_str2et ( '18:07 12-23-0001 BC' );
%      et_horos = cspice_str2et ( datestr(now, 'mmmm dd, yyyy HH:MM:SS UTC+2'));
%      et_horos = cspice_str2et ( '2013-07-03 23:59 UTC+0'); % horoscope epoch  - 12-23-0001 BC = Xmas % момент гороскопа
     % the epoch for scale of second zodiac (for publishing date, for example
     et_zodiac_2=et_horos; % ввести свое значние et_zodiac_2 для его отрисовки
     %et_zodiac_2 = cspice_str2et ( '1185-03-27 06:00 UTC+2'); % publication epoch  % момент пересчета гороскопа

     % set observer coordinates or , for example 'CAIRO' settled in my_sites.bsp % место наблюдения
     [observer, topo_frame ]=set_observer(44.6,3.53333,0);  % Севастополь (близ мыса Фиолент) - для гороскопа Рождества Христова по ФиН
%      [observer, topo_frame ]=set_observer(45,0,0);  % широта, долгота, высота - LAN, LON, ALT
     [lat, lon, alt, sslat, sslon] = get_observer (observer); % for local solar time % узнать долготу места для местного солн.времени
         
     % to set the time format % установить формат времени (JCAL - Julian calendar % Юлианский календарь)
     TIMFMT  = 'DD.MM.YYYY ERA HR:MN ::RND::JCAL::UTC'; TIMLEN  = 35;
     
     abcr = 'LT+S'; step = cspice_spd/2; crds='CYLINDRICAL'   ; crd  = 'LONGITUDE' ; adj = 0.0;  MAXWIN  = 20000; MAXIVL  = MAXWIN / 2;

%      % adjustment on precession = 360° for 25776 years % поправки на прецессию 360° за 25776 лет
%      % used 1976 IAU precession model, built into SPICE % использована модель "1976 IAU" встроенная в SPICE.
%      [pos1, ~] = cspice_spkpos ( 'SUN', et_horos, 'ECLIPDATE' , abcr, observer); % позиция планеты от эклиптики той эпохи
%      [pos2, ~] = cspice_spkpos ( 'SUN', et_horos, 'ECLIPJ2000', abcr, observer); % позиция планеты по нынешней эклиптике
%      [~, lon1, ~] = cspice_recrad(pos1); [~, lon2, ~] = cspice_recrad(pos2); lon3 = lon2-lon1;
%      prcs_at_horos = cspice_convrt(lon3,'radians','degrees');
%      [pos1, ~] = cspice_spkpos ( 'SUN', et_zodiac_2, 'ECLIPDATE' , abcr, observer); % позиция планеты от эклиптики той эпохи
%      [pos2, ~] = cspice_spkpos ( 'SUN', et_zodiac_2, 'ECLIPJ2000', abcr, observer); % позиция планеты по нынешней эклиптике
%      [~, lon1, ~] = cspice_recrad(pos1); [~, lon2, ~] = cspice_recrad(pos2); lon3 = lon2-lon1;
%      prcs_zodiac_2 = cspice_convrt(lon3,'radians','degrees');
     % the same easy way % более просто способ
     prcs_at_horos=360/((cspice_tyear*25776)/(now-et_horos)); prcs_zodiac_2=360/((cspice_tyear*25776)/(now-et_zodiac_2));   

     
      % data array for drawing the zodiac % данные для отрисовки зодиака
      planets = {'Jup', 'Sat', 'Ven', 'Mars', 'Mer', 'Sun', 'Moon', 'Earth'; ...
                  'JUPITER BARYCENTER', 'SATURN BARYCENTER', 'VENUS', 'MARS', 'MERCURY', 'SUN', 'MOON', 'EARTH'};                 
      dots = [15,12,10,10,10,35,35,1];           
      colors = [[0.2 0 0]; [0 0.2 0.3]; [0 0.2 0.1]; [0.6 0 0]; [0.4 0 0]; [0.7 0.5 0]; [0.5 0.4 0.1]; [0.8 0.4 0.1]];
      lats = [0,0,0,0,0,0,0,0]; lats_h = [0,0,0,0,0,0,0,0]; lons = [0,0,0,0,0,0,0,0];
      sky_s = {'темно - ночь', 'астрономические сумерки', 'навигационные сумерки', 'гражданские сумерки', 'светло - день'};
      sky_e = {'dark - night', 'astronomical twilight', 'nautical twilight', 'civil twilight', 'daylight'};
      zodiac_names = {'<-Овен     ', 'Телец     ', 'Близнецы     ', 'Рак     ', 'Лев     ', ...
        'Дева     ', 'Весы     ', 'Скорпион     ', 'Стрелец     ', 'Козерог     ', 'Водолей     ', 'Рыбы     ';
    '<-Aries', 'Taurus', 'Gemini', 'Cancer', 'Leo', 'Virgo', 'Libra', ...
    'Scorpio', 'Sagittarius', 'Capricorn', 'Aquarius', 'Pisces';
    '<-Ari|Овн', 'Tau|Тлц', 'Gem|Блз', 'Cnc|Рак', 'Leo|Лев', 'Vir|Дева', ...
    'Lib|Весы', 'Sco|Скрпн', 'Sgr|Стрлц', 'Cap|Кзрг', 'Aqr|Вдл', 'Psc|Рыбы'};
     

 
   % Ecliptics coordinates of the East point of the local topo frame - восток в координатах эклиптики
    mat1 = cspice_pxform( topo_frame, 'ECLIPJ2000', et_horos );
    mat2 = mat1 * cspice_rotate( -0.5*cspice_pi, 3); mat2 = mat2(:,1,:);
    [~, lon_east, lat_east] = cspice_reclat(mat2);
    lon_east = 180 + lon_east * cspice_dpr; lat_east = - lat_east * cspice_dpr;
   
    % Ecliptics coordinates of the West point of the local topo frame - запад в координатах эклиптики
    mat2 = mat1 * cspice_rotate( 0.5*cspice_pi, 3); mat2 = mat2(:,1,:);
    [~, lon_west, lat_west] = cspice_reclat(mat2);
    lon_west = 180 + lon_west * cspice_dpr; lat_west = - lat_west * cspice_dpr;
   
       
    % Ecliptics to horizon inclination - наклон эклиптики к горизонту
    mat1 = cspice_pxform( topo_frame, 'ECLIPJ2000', et_horos ); mat1 = mat1(:,3,:);
    [~, lon_p, lat_p] = cspice_reclat(mat1);
    eclip_horiz_incl = - 90 + lat_p * cspice_dpr;
    % North pole longitude in ecliptic
    north_pole_lon_e = 180 + lon_p * cspice_dpr;
    % Longitudes of intercection of ecliptic and horizon
    lon_w_e = north_pole_lon_e - 90 ; if lon_w_e < 0 ; lon_w_e = lon_w_e + 360; end
    lon_e_e = north_pole_lon_e + 90 ; if lon_e_e > 360 ; lon_e_e = lon_e_e - 360; end
    % разница в азимуте между точками пересечения эклиптики и горизонта к точкам востока и запада
    d_lon = asind( tand (10) / tand (eclip_horiz_incl) );
     
      % output an image of goroscope % вывод гороскопа
      p_place = horzcat(observer, sslat, sslon, ' (', angl2minsec(lat,2), ', ', angl2minsec(lon,2), ') ');
      p_epoch = horzcat( cspice_timout( et_horos, 'DD.MM.YYYY ERA JCAL HR:MN ::RND::JCAL::UTC UTC '),...
          ' ( ',  cspice_timout(et_horos, 'DD.MM.YYYY ::UTC'),' ) ', cspice_et2utc( et_horos, 'J',    2 ));
      if fl_lng == 0
      p_name_t=horzcat('Планеты в созвездиях на ', p_epoch, ' место ', p_place);
      elseif fl_lng > 0
      p_name_t=horzcat('Planets in constellations at ',p_epoch,' in ', p_place);
      end
      p_name={p_name_t;' '};
     
      scrsz = get(0,'ScreenSize');
      h = figure('Name', p_name_t ,'NumberTitle','off', 'Position',[1 scrsz(4)/2.6 scrsz(3) (scrsz(4)/2)-20]);
   
   % цвет неба в зависимсти от наличия солнца на небе, the color of sky relatively sun's presens
   [pos, ~] = cspice_spkpos ( 'SUN', et_horos, topo_frame, abcr, observer);
   [~, ~, sun_alt] = cspice_reclat(pos); sun_alt=sun_alt * cspice_dpr;
   if fl_lng == 0; sky_t = horzcat('Высота солнца',angl2minsec(sun_alt,0),', ');
   else sky_t = horzcat('Altitude of sun is',angl2minsec(sun_alt,0),', '); sky_s = sky_e;
   end
   
   if sun_alt < -12 && sun_alt > -18; sky_color= [0.5 0.4 0.6]; sky_s = horzcat(sky_t, cell2mat(sky_s(2))) ;
   elseif sun_alt < -7 && sun_alt > -12 ; sky_color= [0.8 0.7 0.7]; sky_s = horzcat(sky_t, cell2mat(sky_s(3))) ; % навигационные сумерки
   elseif sun_alt < 0 && sun_alt > -7 ; sky_color= [0.9 0.9 0.9]; sky_s = horzcat(sky_t, cell2mat(sky_s(4))) ; % гражданские сумерки
   elseif sun_alt > 0; sky_color= [1 1 1]; sky_s = horzcat(sky_t, cell2mat(sky_s(5))) ; % светло - день
   elseif sun_alt < -18 ; sky_color= [0.3 0.4 0.6]; sky_s = horzcat(sky_t, cell2mat(sky_s(1))) ;
   end % темно - ночь
     
%   % drawing the Earth's body - тело цельное, слева восток - не касается границы графика, справа - запад
%    if (lon_e_e + d_lon) < 360 && (lon_e_e - d_lon) < 360 && (lon_w_e + d_lon) > 0 && (lon_w_e - d_lon) > 0 && (lon_e_e > lon_w_e)
   e1=lon_e_e + d_lon ; e2 = lon_e_e - d_lon ; w1=lon_w_e + d_lon ; w2 = lon_w_e - d_lon ; y=[10 -10 -10 10 ]; y2=y; y3=y;
   
   if lon_e_e > lon_w_e
   x=[e1 e2 w1 w2]; x2=x()+360; x3=x()-360;
   elseif lon_e_e < lon_w_e
   x=[e1 e2 w1-360 w2-360]; x2= [e1+360 e2+360 w1 w2]; x3=[]; y3=[];
   end
   
   fill([360 360 0 0 ], y, sky_color); hold on
   f1=fill(x, y, [.7 .8 .7], x2, y2, [.7 .8 .7], x3, y3, [.7 .8 .7]); set(f1,'facealpha',.5)
     

   title(p_name); 

   % calculating of positions of planets % расчет позиций планет
   if fl_lng == 0
   fprintf ( '\n\n позиции планет в эклиптике J2000.0, на %s \n\n', cspice_timout( et_horos, 'DD.MM.YYYY ERA JCAL HR:MN ::RND::JCAL::UTC UTC')) ;
   else
   fprintf ( '\n\n the positions of planet at ecliptics J2000.0, на %s \n\n', cspice_timout( et_horos, 'DD.MM.YYYY ERA JCAL HR:MN ::RND::JCAL::UTC UTC')) ;
   end
  fl=0; %
  n=numel(planets(1,:)); % количество записей
  for ii=1:n-1
  target=planets(2,ii);
     [pos, ~] = cspice_spkpos ( target, et_horos, 'ECLIPJ2000', abcr, observer); % позиция планеты
     [~, lon_p, lat_p] = cspice_recrad(pos); % картезианские координаты в радиальные небесной сферы
     lons(ii) = lon_p * cspice_dpr;  lats(ii)= lat_p * cspice_dpr ;
     [pos, ~] = cspice_spkpos ( target, et_horos, topo_frame, abcr, observer);
     [~, ~, lat_h] = cspice_reclat(pos); lats_h(ii) =lat_h * cspice_dpr; %az=-(-180+lon);
     fprintf ( '%s LON %s\t LAT %s\t \n', cell2mat(target), num2str(lons(ii)), num2str(lats(ii)));
     text(360,-18- ii*5, planets(1,ii)); text(345,-18- ii*5, horzcat('Lon   ', num2str(lons(ii))));
     text(300,-18- ii*5, horzcat('Lat   ', num2str(lats(ii))));
     text(260,-18- ii*5, horzcat('Alt   ', num2str(lats_h(ii))));
  end
 
 
     % drawing planets % отрисовка планет
     n=numel(lons(:)); % количество записей
     for ii=1:n-1
      text(lons(ii)+1,lats(ii)+3, planets(1,ii), 'HorizontalAlignment','right')
      p=scatter(lons(ii), lats(ii), dots(ii), colors(ii,:), 'filled');
     end
     
     if fl_lng == 0
     text(360,-65,'Шкалы: красным начала созвездий, синим границы зодиака на момент гороскопа.                             Спасибо НАСА! ® Полтавский Саша, vasnas@live.com');
     text(180, -25, sky_s);
     else
     text(360,-65,'Scales: red - begining of constellations, blue -  zodiac''s segments at epoch of horoscope.             Thanks to NASA! ® Poltavsky Sasha, vasnas@live.com');
     text(180, -25, sky_s);
     end
     
ax1=gca; axis image ; set(ax1,'XDir','reverse', 'Color', [0.9 0.9 1],'XColor', [0.5 0 0], 'Layer', 'top');
% beginings of constellations in  ecliptics at J2000.0 % начала созвездий по эклиптике J2000
set(ax1,'Xtick', [31, 56, 92, 118, 137, 172, 215, 236, 266, 296, 326, 349], 'XLim',[0,360], 'YLim',[-10,10]);
% names of constellations % названия создвездий

if fl_lng==0 ; zodiac_names_out = zodiac_names(1,:);
elseif fl_lng == 1 ; zodiac_names_out = zodiac_names(2,:);
elseif fl_lng == 2; zodiac_names_out = zodiac_names(3,:);
end
set(gca,'XTickLabel',zodiac_names_out)
grid on

  % scale of zodiac at goroscope epoch - blue % шкала зодиака на эпоху гороскопа - синяя
 
  Ax2=axes('Position', get(ax1,'Position'),'XAxisLocation','top'); axis image ;
  set(Ax2,'XLim',[0 360], 'YLim',[-10 10], 'color','none','XColor', [0 0 0.7]) % 'xtick',(prcs_at_horos:30:360+prcs_at_horos)
  set(Ax2, 'xticklabel', zodiac_names_out,'xtick', prcs_at_horos:30:360+prcs_at_horos,'XDir','reverse','FontSize',8 ,'Yticklabel','')
  grid on

 
  if et_horos ~= et_zodiac_2
  % scale of zodiac at publications (or anything else) epoch - green % шкала зодиака на эпоху публикации - зеленая
  Ax3=axes('Position',get(ax1,'Position'),'XAxisLocation','top'); axis('image'); set(Ax3,'XLim',[0 360], 'YLim',[-10 10]);
  set(Ax3,'color','none'); set(Ax3,'XColor', [0 0.7 0])
  set(Ax3,'xtick',(prcs_zodiac_2:30:360+prcs_zodiac_2),'xticklabel',(0:30:360),'XDir','reverse');
  set(Ax3,'Yticklabel','','TickDir', 'out','FontSize',8)
  grid on
  end
 
  % scale of zodiac at publications (or anything else) epoch - green % шкала зодиака на эпоху публикации - зеленая
  Ax4=axes('Position',get(ax1,'Position'),'XAxisLocation','bottom'); axis('image'); set(Ax4,'XLim',[0 360], 'YLim',[-10 10]);
  set(Ax4,'color','none','XColor', [0 0.2 0])
  set(Ax4,'xtick', (0:30:360),'xticklabel',(0:30:360),'XDir','reverse');
  set(Ax4,'Yticklabel','','TickDir', 'out','FontSize',7)
  grid on
 
 box off
 cspice_kclear
 clear all
 
 
 
%  %-------------------------------------------------------------------------------------------------------------
% % Getting coordinates of observer, after function set_observer(). Output in degree,
% % Reference: http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/MATLAB/
% % Tested : Matlab R2011b
% %     By : Poltavsky Sasha          04.05.2012
% %    URL : www.bible-exodus.narod2.ru/articles/astro_ephemeris/jpl_ephemeris/jpl_ephemeris.html#get_kernel_data
% %--------------------------------------------------------------------------------------------------------------
%
% function  [lat, lon, alt, sslat, sslon] = get_observer (observer, varargin)
% if nargin == 0 ; observer = 'DYN'; end
%
% [val, found] = cspice_gdpool( horzcat('TKFRAME_',observer, '_TOPO_ANGLES'), 2, 1 ); lat=90+val;
% if ~found; error(horzcat('the latitude of ',observer,' was not found in the pool!')); end
% [val, found] = cspice_gdpool( horzcat('TKFRAME_',observer, '_TOPO_ANGLES'), 1 ,1);  lon= - val;
% if ~found; error(horzcat('the longtitude of ',observer,' was not found in the pool!')); end
% %[val, found] = cspice_gdpool( horzcat('TKFRAME_',observer, '_TOPO_ALT'), 1 ,1);  alt = val;
% %[alt, found] = cspice_gdpool( horzcat(observer, '_LATLON'), 3 ,1);
% %if ~found; error(horzcat('the altitude of ',observer,' was not found in the pool!')); end
% alt=0;
%     
%
%       
% if lat < 0; sslat = sprintf('% 2.2fS',abs(lat)); else sslat = sprintf('% 2.2fN',abs(lat)); end
% if lon < 0; sslon = sprintf('% 2.2fW',abs(lon)); else sslon = sprintf('% 2.2fE',abs(lon)); end
% end
%



% %-------------------------------------------------------------------------------------------------------------
% % Setting coordinates of observer, input in degree,
% % Reference: http://naif.jpl.nasa.gov/pub/naif/toolkit_docs/MATLAB/
% % Tested : Matlab R2011b
% %     By : Poltavsky Sasha          04.05.2012
% %    URL : www.bible-exodus.narod2.ru/articles/astro_ephemeris/jpl_ephemeris/jpl_ephemeris.html#get_kernel_data
% %--------------------------------------------------------------------------------------------------------------
% function  [observer, frame] = set_observer (lat, lon, alt, varargin)
% if nargin == 1; name = lat;
%     [~ , found] = cspice_bods2c(name);     
%     if (found); observer = name; frame =  strcat(observer,'_TOPO');
%     else
%         disp('The point of surface or the frame DYN_TOPO for the body are not specified')
%     end
% else
%     if nargin == 2; observer = 'DYN'; frame =  strcat(observer,'_TOPO'); alt=0; end
%     if nargin == 3; observer = 'DYN'; frame =  strcat(observer,'_TOPO'); end
%       
%       cspice_pdpool('TKFRAME_DYN_TOPO_ANGLES',[-lon; -90 + lat; 180]);
%       cspice_lmpool(horzcat('DYN_LATLON = (', num2str(lat), ',', num2str(lon), ',', num2str(alt), ' )' ));
%       %cspice_lmpool(horzcat('TKFRAME_DYN_TOPO_ALT = (',num2str(alt),' )'));
%       
%       
%       
% end
%
%       
% return



% %-------------------------------------------------------------------------------------------------------------
% % Function of translating decimal degrees into sexagesimal system
% % Tested : Matlab R2011b
% %     By : Poltavsky Sasha          02.06.2012
% %    URL : www.bible-exodus.narod2.ru/articles/astro_ephemeris/jpl_ephemeris/jpl_ephemeris.html#angle_10_to_60
% %--------------------------------------------------------------------------------------------------------------
% % an   - angle in decimal degrees
% % prec - precision in "
%
% function anstr = angl2minsec (an, prec, varargin)
%
%       if nargin == 1 ; sprec='0';
%       else
%           sprec=int2str(prec);
%       end
%       
%       if an<0 ; s_sign='-'; else s_sign=' '; end
%       
%       an1=fix(abs(an));
%       an2=abs(rem(an,1));
%       an2=an2*0.6;
%       an3=rem(an2*100,1)*100;
%       an2=fix(an2*100);
%       an3=an3*0.6;
%       anstr=sprintf('%s%s°%s''%s"', s_sign, int2str(an1), int2str(an2), num2str(an3, strcat('%2.',sprec,'f')));
% return

                  
                     
                     
                     



С уважением , Саша!

AK1962

  • Гость
да вот:
  А по-русски можешь сказать?

Оффлайн vasnasАвтор темы

  • **
  • Сообщений: 51
  • Благодарностей: -4
    • Сообщения от vasnas
    • Мой сайт
я написал эту программу где наклон эклиптики использован в отрисовке зеленого тела земли на эклиптике
С уважением , Саша!