Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
FireProoF
17 / 17 / 1
Регистрация: 28.10.2012
Сообщений: 193
#1

QR разложение (есть эскиз кода и алгоритм) - C++

14.06.2013, 07:36. Просмотров 1370. Ответов 0
Метки нет (Все метки)

Здравствуйте! Требуется реализовать класс матриц, в котором присутствует QR разложение.
На википедии нашёл отличный алгоритм с примерами, написал эскиз кода. При реализации алгоритма появились трудности от неумения применения простейших алгоритмов (скалярное произведение, проекция вектора на вектор)
Вот мой кусок кода из класса:
Кликните здесь для просмотра всего текста
C++
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
void Cmatrix::QR_Decomposition(Cmatrix* A, Cmatrix* Q, Cmatrix* R)
{
    Cmatrix* U = new Cmatrix(A->Row,A->Column);//вспомогательная матрица
    Cmatrix* e = new Cmatrix(A->Row,A->Column);//вспомогательный вектор
    
    int N = A->Row;//размерность всех матриц
 
    for(int k=0; k<N; k++)
    {
        for(int i=0; i<N; i++)
        {
            U->Array[i][k] = A->Array[i][k] - сумма проекций;//нахождение Uk
        }
 
        for(int i=0; i<N; i++)  e->Array[i][k] = U->Array[i][k] / длину вектора Uk;//составление матрицы векторов e
    }
 
    for(int i=0; i<N; i++)//составление матрицы Q
    {
        for(int j=0; j<N; j++)  Q->Array[i][j] = e->Array[i][j];
    }
 
    for(int i=0; i<N; i++)//составление матрицы R
    {
        for (int j=0; j<N; j++)
        {
            if(i>j) R->Array[i][j] = 0.0;
            else    R->Array[i][j] = скалярное произведение (ei на aj) вектора;
        }
    }
 
    return;
}


Всё мне непонятное написал словами.
Прошу помочь мне реализовать данные алгоритмы, сроки поджимают.

P.S. вот статья из википедии
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2013, 07:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос QR разложение (есть эскиз кода и алгоритм) (C++):

Алгоритм Дейкстры (часть кода есть) - C++
Здравствуйте! Нужно реализовать на С++ такую консольную программу: 1. Задается массив размерности n; 2. Найти максим. j такой, что a...

Разложение в ряд Тейлора(код есть, но ошибочный) - C++
Передо мной стоит такая задача: http://imagepost.ru/?v=238/uBbB7Cp.png Я написала программу. Ввожу значения переменных, после чего...

Алгоритм кода - C++
Напишите пожалуйста алгоритм кода. Задание: Написать код на сортировку естественного слияния с выбором заполнения массива - рандомный или...

Написать алгоритм приведенного кода - C++
Может ли кто-нибудь помочь мне с алгоритмом этого кода?, пожалуйста. #include &lt;iostream&gt; using namespace std; int main() {...

Работа со строками, алгоритм есть. - C++
Задача сводится к тому, что необходимо проверить вхождение в строку определенного набора символов (далее &quot;маска&quot;). Алгоритм реализации...

Написать алгоритм действий для готового кода программы - C++
Здравствуйте! Помогите, пожалуйста, решить проблему. А проблема такая, что нам дали лабораторную работу. Программу для лабораторной я...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2013, 07:36
Привет! Вот еще темы с ответами:

Найти ошибку кода(если есть) - C++
Подскажите,пожалуйста,есть ли в данном коде ошибка и какая: Определите ошибку (если есть): double sum (int x = 0, int y) ...

Есть ли ошибки в следующем фрагменте кода? - C++
template &lt;class D, C&gt; D func2(int,C);

НЕ Рекурсивное разложение числа на слагаемые. Алгоритм Эрлиха - Комбинаторика
У меня возникла задача разложения числа на слагаемые из этой задачи: http://www.cyberforum.ru/combinatorics/thread1275305.html начал...

Есть ли алгоритм который сможет определить есть человек на фото или нет? - Графические программы
Или в принцепе подошло бы что то что сможет сравнить 2 фото и сказать их процент


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru