Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 20.11.2017
Сообщений: 6
1

Пошагово объясните код recpo_ls (очень много вопросов)

27.12.2017, 13:43. Показов 657. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
function [pos, El, GDOP, basic_obs] = recpo_ls(obs,sats,time,Eph) 
% RECPO_LS Computation of receiver position from pseudoranges 
%          using ordinary least-squares principle 
 
%Kai Borre 31-10-2001 
%Copyright (c) by Kai Borre 
%$Revision: 1.1 $  $Date: 2002/07/10  $ 
 
v_light = 299792458; 
dtr = pi/180; 
m = size(obs,1);  % number of svs 
el = zeros(m,1); 
% identify ephemerides columns in Eph 
for t = 1:m 
    col_Eph(t) = find_eph(Eph,sats(t),time); 
end 
% preliminary guess for receiver position and receiver clock offset 
pos = zeros(4,1); 
no_iterations = 6;  
ps_corr = []; 
sat_pos = []; 
 
for iter = 1:no_iterations 
    A = []; 
    omc = []; % observed minus computed observation 
    W = []; %weighted least square 
    for i = 1:m         
        k = col_Eph(i); 
        tx_RAW = time - obs(i)/v_light; 
        t0c = Eph(21,k); 
        dt = check_t(tx_RAW-t0c); 
        tcorr = (Eph(2,k)*dt + Eph(20,k))*dt + Eph(19,k); 
        tx_GPS = tx_RAW-tcorr; 
        dt = check_t(tx_GPS-t0c); 
        tcorr = (Eph(2,k)*dt + Eph(20,k))*dt + Eph(19,k); 
        tx_GPS = tx_RAW-tcorr; 
        X = satpos(tx_GPS, Eph(:,k)); 
        if iter == 1 
            traveltime = 0.072; 
            Rot_X = X; 
            trop = 0; 
        else 
            rho2 = (X(1)-pos(1))^2+(X(2)-pos(2))^2+(X(3)-pos(3))^2; 
            traveltime = sqrt(rho2)/v_light; 
            Rot_X = e_r_corr(traveltime,X); 
            rho2 = (Rot_X(1)-pos(1))^2+(Rot_X(2)-pos(2))^2+(Rot_X(3)-pos(3))^2;           
            [az,el,dist] = topocent(pos(1:3,: ),Rot_X-pos(1:3,: ));                                                             
            if iter == no_iterations, El(i) = el; end 
            trop = tropo(sin(el*dtr),0.0,1013.0,293.0,50.0,... 
                0.0,0.0,0.0);     
        end 
        % subtraction of pos(4) corrects for receiver clock offset and 
        % v_light*tcorr is the satellite clock offset 
        if iter == no_iterations 
            ps_corr = [ps_corr; obs(i)+v_light*tcorr-trop]; 
            sat_pos = [sat_pos; X']; 
        end 
        omc = [omc; obs(i)-norm(Rot_X-pos(1:3),'fro')-pos(4)+v_light*tcorr-trop]; 
        A = [A; (-(Rot_X(1)-pos(1)))/obs(i)... 
                (-(Rot_X(2)-pos(2)))/obs(i) ... 
                (-(Rot_X(3)-pos(3)))/obs(i) 1]; 
    end % i 
    x = A\omc;
    pos = pos + x; 
    if iter == no_iterations, GDOP = sqrt(trace(inv(A'*A)));  
        %% two lines that solve an exercise on computing tdop 
        % invm = inv(A'*A); 
        % tdop = sqrt(invm(4,4)) 
    end 
end % iter 
basic_obs = [sat_pos ps_corr]; 
 
%%%%%%%%%%%%%%%%%%%%%  recpo_ls.m  %%%%%%%%%%%%%%%%%%%%%
dtr у нас терминал вывода данных или как оно расшифруется
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.12.2017, 13:43
Ответы с готовыми решениями:

Апгрейд моего ноута - ОЧЕНЬ много вопросов!
Очень нужно модернизировать мой ноутбук. Новый, более мощный, пока купить возможности нет. Итак,...

Объясните подробно данный код программы. Знаю что это фильтр а пошагово что к чему не понимаю
void __fastcall TForm1::suiButton7Click(TObject *Sender) { tdiag -> Filtered = false; tdiag ->...

Код потребляет очень много памяти. Подскажите как оптимизировать?
Есть код на C++ (компилируется под GCC) - подсчёт коэффициентов осцилляторной системы методом...

Объясните пошагово как усовершенствовать мой компьютер.
Всем доброго времени суток. Вот пришло время заняться компом понемногу, т.е. хочу сделать...

5
533 / 438 / 47
Регистрация: 17.07.2013
Сообщений: 2,236
27.12.2017, 20:46 2
Цитата Сообщение от bell_emi Посмотреть сообщение
Copyright (c) by Kai Borre
Корректнее спросить у автора
0
Эксперт по математике/физике
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
28.12.2017, 09:16 3
Цитата Сообщение от bell_emi Посмотреть сообщение
dtr у нас терминал вывода данных или как оно расшифруется
Как-то Вы завернули ....
Цитата Сообщение от bell_emi Посмотреть сообщение
dtr = pi/180;
По моему это просто множитель(или коэффициент) для перевода угловых градусов в радианы
0
0 / 0 / 0
Регистрация: 20.11.2017
Сообщений: 6
28.12.2017, 15:08  [ТС] 4
к сожалению, автор покинул этот мир

Добавлено через 35 минут
как скореектировать ошибки(скачки) в epoch? данные взяты из приемника
0
Модератор
1700 / 1552 / 520
Регистрация: 13.09.2015
Сообщений: 5,370
28.12.2017, 15:50 5
Цитата Сообщение от bell_emi Посмотреть сообщение
как скореектировать ошибки(скачки) в epoch?
Кто ж это может знать? Ни переменной, ни функции epoch в вашем коде нет. Что это такое?
0
0 / 0 / 0
Регистрация: 20.11.2017
Сообщений: 6
08.01.2018, 07:05  [ТС] 6
нашла свою ошибку, простите за глупый вопрос
0
08.01.2018, 07:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.01.2018, 07:05
Помогаю со студенческими работами здесь

Объясните пожалуйста пошагово что делает эта программа
#include <stdio.h> #include <fstream> #include <iostream> using namespace std; void main() ...

Объясните на простом примере пошагово, как решать задачу на Delphi?
Пожалуйста объясните на простом примере пошагово, как решать задачу на языке Delphi.

Фильмы о танцах (где много, ну очень много танцев)
Привет всем! Может кто-нибудь посоветует мне фильмы, где люди много и классно танцуют???

Сцепление ячеек в одну с указанным разделителем. Объясните, пошагово как работает программа
Function СцепитьЯчейки(Диапазон As Range, Optional Разделитель As String = " ") Dim d, r As...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru