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

Как, используя цикл, создать систему уравнений

15.01.2018, 01:52. Показов 2209. Ответов 22
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
нужно создать систему уравнений. Система очень большая, поэтому от руки можно допустить ошибки. Как используя цикл, создать систему? помогите, пжл.

for I,J,K,L=1:6
C(I,J,K,L)=sum (i,j,k,l=1:6) D(I,i)*D(J,i)*D(K,k)*D(L,l)*C(I,j,k,l)
end

при этом все D(I,i) известны, коэффициенты системы.

Добавлено через 1 час 22 минуты
Matlab M
1
2
3
for I,J,K,L=1:6
C(I,J,K,L)=sum (i,j,k,l=1:6) D(I,i)*D(J,i)*D(K,k)*D(L,l)*C(I,j,k,l)
end
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.01.2018, 01:52
Ответы с готовыми решениями:

Решить систему уравнений Ax=B, используя LU-разложение
Требуется решить систему уравнений Ax=B, используя LU-разложение. Начал считать и застрял на этом...

Решить систему уравнений, используя switch
x*z, если z>0 y= x, если z=0 x/z, если z<0 решить...

Как создать таблицу из трех массивов используя цикл while
Привет! У меня задание сделать вот такую таблицу из массивов, как на картинке ниже, используя цикл...

Решить систему линейных уравнений, используя метод итераций
преобразовать матрицу к диагональным преобразователям. Первая и вторая строчка подходят под...

22
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
15.01.2018, 05:02 2
Армине, вам коэффициенты D всё равно придётся забивать вручную. Или у вас уже имеется массив коэффициентов , и вам нужно выбрать из него только некоторые?
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
15.01.2018, 09:00  [ТС] 3
коэффициенты не проблема. в зависимости от I, j они принимают определенные значения. главное система. мне ,чтобы эту систему написать вручную, понадобиться несколько дней.
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
15.01.2018, 09:02 4
Армине, то есть коэффициенты вычисляются в программе до системы? Или как? Выражайте, пожалуйста, свою мысль яснее.
Вряд ли кто может догадаться, откуда вы берёте коэффициенты.
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
15.01.2018, 13:30  [ТС] 5
Например,
Matlab M
1
D [3,1]=0, D [3,3]=1,  D [1,1]=cos phi
и т.д. Только
Matlab M
1
I, j,k,l,...=1,2,3.
А количество различных индексов 8. И все индексы меняются от 1 до 3.
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
15.01.2018, 15:53 6
Цитата Сообщение от Армине Посмотреть сообщение
А количество различных индексов 8. И все индексы меняются от 1 до 3.
И что?
Вы опишите задачу полностью, а то описываете какими-то фрагментами, считая, что раз понятно вам, то понятно и всем. Но разница в том, что вы знаете задачу полностью, а остальные видят только приводимые вами фрагменты.
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
15.01.2018, 17:06  [ТС] 7
Задача написать в развернутом виде систему
Matlab M
1
C'=D*C
, где
Matlab M
1
C'=(C[IJKLMNPQ]); C=(C[ijklmnpq])
-- векторы в новой и старой системе.
Matlab M
1
D
-- матрица преобразования и
Matlab M
1
D[1,1]=cos phi, D[1,2]=sin phi, D[2,1]=-sin phi, D[2,2]=cos phi, D[3,1]=D[3,2]=0, D[3,3]=1
. При этом
Matlab M
1
C[ijklmnpq]=C[mnpqijkl]
. Все индексы
Matlab M
1
I,J,K,L,M,N,P,Q,i,j,k,l,m,n,p,q
меняются от 1 до3
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
15.01.2018, 17:19 8
C - это многомерный массив?

Добавлено через 1 минуту
Цитата Сообщение от Армине Посмотреть сообщение
1
D
-- матрица преобразования
Не понял. D -матрица 3х3. Если к ней приписать единицу, то матрицы не получится.
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
15.01.2018, 18:28  [ТС] 9
Забыла указать вид этой матрицы
Matlab M
1
D=D(I,i)*D(J,j)*D(K,k)*D(L,l)*D(M,m)*D(N,n)*D(P,p)*D(Q,q)
Конечно, это не три на три. И содержит много нулей
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
15.01.2018, 18:33 10
Армине, не знаю, ждите того, кто догадается, что из чего вы хотите сделать. Лично я по вашим описаниям догадаться так и не сумел.
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
15.01.2018, 19:02  [ТС] 11
жаль, всего лишь нужно написать большую систему уравнений используя циклы, чтобы не вводить каждый элемент в отдельности. больше ничего.
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
15.01.2018, 19:09 12
Цитата Сообщение от Армине Посмотреть сообщение
всего лишь нужно написать большую систему уравнений используя циклы, чтобы не вводить каждый элемент в отдельности. больше ничего.
Я понимаю, что больше ничего. Но без данных и толкового объяснения с вашей стороны вряд ли кто вам поможет.
0
164 / 144 / 49
Регистрация: 29.10.2014
Сообщений: 738
15.01.2018, 21:11 13
Может Вы хотите 4 цикла, первый по i, второй по j, третий по k, четвертый по l изменяются от 1 до 6.
У каждого свое уравнение
Matlab M
1
C'=D*C
Если это так, то попробуйте написать 1 цикл с 1 уравнением, тогда может нам понятнее будет.
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
16.01.2018, 00:07  [ТС] 14
У меня не получается использовать сумму в цикле
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
16.01.2018, 07:32 15
Армине, тогда вам остаётся полностью и подробно написать решаемую вами задачу. До сих пор вы не удосужились этого сделать.
0
164 / 144 / 49
Регистрация: 29.10.2014
Сообщений: 738
16.01.2018, 08:28 16
Напишите без суммы, а там посмотрим.
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
16.01.2018, 16:48  [ТС] 17
хочется написать такую систему, но очень большую.

Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
syms y y1 y2 y3 x x1 x2 x3 
syms a a11 a12 a13 a21 a22 a23 a31 a32 a33 
 
x=[x1
    x2
    x3];
y=[y1
    y2
    y3];
a=[a11 a12 a13
    a21 a22 a23
    a31 a32 a33];
y=a*x
 
y = 
 a11*x1 + a12*x2 + a13*x3
 a21*x1 + a22*x2 + a23*x3
 a31*x1 + a32*x2 + a33*x3
если использовать цикл for без суммы, то получается какая то абракадабра

Matlab M
1
2
3
4
5
6
7
8
9
10
syms y y1 y2 y3 x x1 x2 x3 
syms a a11 a12 a13 a21 a22 a23 a31 a32 a33 
 
n=3
for i=1:n
    for j=1:n
        y(i)=(a(i,j)*x(j))
    end
end
print(y)
нужно заменить векторы х и у следующими
Matlab M
1
C'(IJKLMNPQ), C(ijklmnpq)
а элементы матрицы D определяются как
Matlab M
1
D(I,i)*D(J,j)*D(K,k)*D(L,l)*D(M,m)*D(N,n)*D(P,p)*D(Q,q)
при этом известно, что
Matlab M
1
2
3
4
5
6
7
8
9
D(1,1)=cos(x); 
D(1,2)=sin(x); 
D(1,3)=0; 
D(2,1)=-sin(x); 
D(2,2)=cos(x); 
D(2,3)=0 ;
D(3,1)=0 ;
D(3,2)=0 ;
D(3,3)=1;
все индексы меняются от 1 до 3.

вручную все компоненты ввести не возможно. Это работа на несколько дней. да и ошибки можно не заметить.

для начала можно написать поменьше систему. дальше все по аналогии можно продолжить

Добавлено через 10 минут
Matlab M
1
C'(IJKLMNPQ)=(D(I,i)*D(J,j)*D(K,k)*D(L,l)*D(M,m)*D(N,n)*D(P,p)*D(Q,q))*C(ijklmnpq)
суммирование в цикле будет по индексам
Matlab M
1
i,j,k,l,m,n,p,q
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
16.01.2018, 18:59 18
Могу только предложить разместить все произведения коэффициентов D в многомерном массиве
Matlab M
1
2
3
d=[cos(x) sin(x) 0 -sin(x) cos(x) 0 0 0 1];
[DI,DJ,DK,DL,DM,DN,DP,DQ]=ndgrid(d);
D=DI.*DJ.*DK.*DL.*DM.*DN.*DP.*DQ;
Далее не могу ничего предложить, вы ведь до сих пор тщательно скрываете, что, например, скрывается в массиве С.
0
0 / 0 / 0
Регистрация: 27.08.2016
Сообщений: 83
16.01.2018, 19:15  [ТС] 19
Matlab M
1
C, C'
это всего лишь векторы с компонентами
Matlab M
1
2
C(1,1,1,1,1,1,1,1), C(1,1,1,1,1,1,1,2), C(1,1,1,1,1,1,2,2), ... C(3,3,3,3,3,3,3,3),
C'(1,1,1,1,1,1,1,1), C'(1,1,1,1,1,1,1,2), C'(1,1,1,1,1,1,2,2), ... C'(3,3,3,3,3,3,3,3)[/
физического смысла никакого не имеют. чистая математика, просто усложняется из за размеров вектора и матрицы.
0
Модератор
1747 / 1593 / 532
Регистрация: 13.09.2015
Сообщений: 5,541
16.01.2018, 19:36 20
Армине, своими записями вы запутываете других. Так как у вас записано, читается как обращение к элементам 8-мерного массива. Но я подозреваю, что С - это вектор из 8 чисел. Верна ли моя догадка?
0
16.01.2018, 19:36
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.01.2018, 19:36
Помогаю со студенческими работами здесь

Решить систему линейных уравнений, используя функции Find
Задание 3. Решить систему линейных уравнений, используя функции Find; матричным способом, используя...

Решить систему дифференциальных уравнений. не используя стандартные функции
Доброго времени суток! столкнулся со следующей проблемой. По заданию нужно решить систему...

Решить систему линейных уравнений, используя разные способы
Решить систему линейных уравнений: 1) используя функцию Find; 2) матричным способом и используя...

Используя метод Гаусса, решить систему линейных уравнений с точностью до 0,0001
Используя метод Гаусса, решить систему линейных уравнений с точностью до 0,0001. Коэффициенты...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта Gowin Eda и снимок. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
Как создать нейросеть для генерации картинок на Python
InfoMaster 12.01.2025
Генерация изображений с помощью искусственных нейронных сетей стала одним из наиболее захватывающих направлений в области компьютерного зрения и машинного обучения. В этой статье мы рассмотрим. . .
Создание нейросети для генерации текста на Python
InfoMaster 12.01.2025
Нейросети, или искусственные нейронные сети, представляют собой модели машинного обучения, вдохновленные работой человеческого мозга. Они состоят из множества взаимосвязанных узлов, или "нейронов",. . .
Как создать нейросеть распознавания изображений на Python
InfoMaster 12.01.2025
Введение в распознавание изображений с помощью нейросетей Распознавание изображений с помощью нейронных сетей стало одним из самых впечатляющих достижений в области искусственного интеллекта. Эта. . .
Основы искуственного интеллекта
InfoMaster 12.01.2025
Искусственный интеллект (ИИ) представляет собой одну из наиболее динамично развивающихся областей современной науки и технологий. В широком смысле под искусственным интеллектом понимается способность. . .
Python и нейросети
InfoMaster 12.01.2025
Искусственные нейронные сети стали неотъемлемой частью современных технологий, революционизировав множество областей - от медицинской диагностики до автономных транспортных средств. Python, благодаря. . .
Python в машинном обучении
InfoMaster 12.01.2025
Python стал неотъемлемой частью современного машинного обучения, завоевав позицию ведущего языка программирования в этой области. Его популярность обусловлена несколькими ключевыми факторами, которые. . .
Создание UI на Python с TKinter
InfoMaster 12.01.2025
TKinter — это одна из наиболее популярных библиотек для создания графических интерфейсов пользователей (GUI) в языке программирования Python. TKinter входит в стандартную библиотеку Python, что. . .
HTML5 в разработке мобильных приложений
InfoMaster 12.01.2025
Введение: Обзор роли HTML5 в мобильной разработке В современном мире мобильных технологий HTML5 стал ключевым инструментом для разработки кроссплатформенных приложений. Эта технология произвела. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru