Как запрограммировать умножение матриц в LabView

Темы связанные с инженерными разработками, но не подходящие в другие ветки форума
Ответить
Irina_Gushchina
beginner
beginner
Сообщения: 26
Зарегистрирован: 22 ноя 2008, 02:29
Версия LabVIEW: 8.5
Контактная информация:

Как запрограммировать умножение матриц в LabView

Сообщение Irina_Gushchina »

Добрый день!
Вот на днях столкнулась с новой задачкой.
Занимаюсь сейчас проектом с FPGA в :labview: . И столкнулась с такой проблемой, что там нет матриц и операций над ними. А предосталена возможность работы с простыми массивами.
Просблема вся в том, что никак не получается запрограммировать в :labview: умножение двух матриц, представленных в виде массивов.
Может быть кто-нибудь уже занимался похожим задание - сможет подскать, как сделать.
Заранее очень благодарна
Stkn
assistant
assistant
Сообщения: 128
Зарегистрирован: 25 янв 2009, 11:08
Версия LabVIEW: 2014

Re: Как запрограммировать умножение матриц в LabView

Сообщение Stkn »

Functions->Mathematics->Linear Algebra там есть много функций для работы с матрицами
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Как запрограммировать умножение матриц в LabView

Сообщение Eugen Graf »

Странно что мне до сих пор не приходилось работать с матрицами. В принципе массив это ведь и есть матрица. А конкретно о каких операциях идёт речь?
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Как запрограммировать умножение матриц в LabView

Сообщение mzu2006 »

к Stkn - для FCPGA нет матриц
к eg -наверное имеются в виду операции типа * (для матриц, строка на столбец), LU разложение, SV разложение итд итп.
в противоположность опреациям .* (матлабовская нотация) - как для массивов (поэлементно).

к Irina_Gushchina это, наверное, можно реализовывать на Labview. Это интересно как трюк, но, мне кажется, индустриальная ценность этого будет невелика. Во-первых медленно, во вторых требуется учёт специфики операций с фиксированной точкой, в-третьих генерация кода Labview->VHDL порождает не маленький overhead.

Я бы взял node, в который можно вставить VHDL, и найти какой-нибуть пример реализации матричных операций на VHDL и туда бы этот пример вставил ...

Либо, если ты делаешь свою прогу под что-то вроде Compact RIO - сделать сбор данных на FCPGA,
а матричные операции на встроенном RT контроллере ...
Irina_Gushchina
beginner
beginner
Сообщения: 26
Зарегистрирован: 22 ноя 2008, 02:29
Версия LabVIEW: 8.5
Контактная информация:

Re: Как запрограммировать умножение матриц в LabView

Сообщение Irina_Gushchina »

Вот вся проблема и состоит в том, что мне все надо реализовать на FPGA, хотя всем понятно, что выглядить эта программа будет сложно и работать будет медленно. Но так звучит задание - и никто его не хочет мне отменить :suicide:
Поэтому и приходится обходиться "скудными" операциями с массивами, что вызывают огромную сложность, как оказалось, при формировании и расчете матриц.
Проблема вся в том, что я не могу никак построить операцию умножения для матриц (хотя на основе массивов уже создала двумерный массив - матрицу). Далее - путаюсь - и прихожу только к одному умножению ( первая строка превой матрицы на все столбцы второй). ...
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Как запрограммировать умножение матриц в LabView

Сообщение mzu2006 »

Имеется в виду в лоб вот так?
Clipboard01.png
Clipboard01.png (18.52 КБ) 5584 просмотра
Irina_Gushchina
beginner
beginner
Сообщения: 26
Зарегистрирован: 22 ноя 2008, 02:29
Версия LabVIEW: 8.5
Контактная информация:

Re: Как запрограммировать умножение матриц в LabView

Сообщение Irina_Gushchina »

Спасибо огромное!!!
Кого будет интересовать, как это программа выглядит целиком - выкладываю!!!
Еще раз - ОГРОМНОЕ СПАСИБО!
Вложения
Multiplikation.vi
(18.46 КБ) 407 скачиваний
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: Как запрограммировать умножение матриц в LabView

Сообщение mzu2006 »

Начальные циклы можно заменить на reshape array
Удачи с :labview: :wink:
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Общие»