Калькулятор уравнений матриц: Умножение матриц онлайн

Решатель матричных уравнений Python Ru Python спросил

Изменено 4 года, 11 месяцев назад

Просмотрено 1к раз

Вот проблема: я пытаюсь решить матричное уравнение второго порядка вида:

Где X (найти) и C (известно) имеют размеры [nxn]. (n порядка 1000). C — известная симметричная ковариационная матрица. (и X тоже должен быть симметричным)

Вот мой код:

 из sympy importsolve
из импорта sympy Indexed, IndexedBase, Tuple
импортировать numpy как np
X = IndexedBase('X',shape=(n,n))
eqs = Кортеж (np.dot (X, X) -np.dot (C, X) -np.eye (n))
решить (уравнения, X)
 

Правильно ли это сделать? Мой код занимает много времени. Я ищу любой тип алгоритма, который мог бы помочь мне эффективно решить такое уравнение.

  • питон
  • матрица
  • sympy
  • уравнение

4 9(1/2) //вычесть E с обеих сторон

Матрица квадратного корня может быть, а может и не быть тем, что вы хотите решить символически. SymPy, безусловно, позволит вам представить его символически, но пока что в моих попытках (в Python3 на MinGW64) оказалось, что он не может вычислить его численно.

Ваша матрица C симметрична, поэтому мы можем проверить, имеет ли член под квадратным корнем (т.е. степень 1/2 ) явную формулу вычисления. Несколько предварительных фактов:

Согласно Википедии (симметричная матрица): 92 + I) симметричен.

Таким образом, можно использовать квадратный корень через диагонализацию (4) выше. А квадратный корень диагональной матрицы вычисляется путем извлечения квадратного корня из элементов по диагонали. Здесь вы можете столкнуться с другой проблемой, что если эти элементы отрицательные, ваш ответ будет сложным.

Есть также потенциально несколько ответов для каждого квадратного корня, что может дать вам несколько ответов для размышления. Скорее всего, поэтому SymPy не может дать числовой ответ.

Ваш код неверен. NumPy предназначен для числовых вычислений, он не будет создавать объект SymPy, представляющий левую часть вашего уравнения. И это не поможет вам получить аналитическое решение. Вот пример решения матричной системы с помощью SymPy; это 2 на 2, а не 1000 на 1000.

 import sympy as sym
X = sym.Matrix(sym.MatrixSymbol('X', 2, 2))
covar = sym.Matrix([[2, 1], [1, 3]])
sym.solve([X**2 - covar*X - sym.eye(2), X-X.T], X)
 

Обратите внимание, что умножение матриц SymPy равно * . Первое уравнение — это то, что вы написали, второе требует, чтобы X был симметричным (

X.T — это транспонирование X).

Однако уже 3 на 3 дело проблематично, а 1000 на 1000 совсем безнадежно. Нельзя просто решить систему из 500 000 нелинейных уравнений, бросив ее в SymPy.

Вы можете попробовать многовариантные решатели SciPy, чтобы получить несколько численных решений, но это будет только одно численное решение из многих. Правильный подход к матричным уравнениям типа X**2 - C*X - I = 0 — не кидать их в комп; это делать математику.

4

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя электронную почту и пароль

Опубликовать как гость

Электронная почта

Обязательно, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

404 — СТРАНИЦА НЕ НАЙДЕНА

Почему я вижу эту страницу?

404 означает, что файл не найден. Если вы уже загрузили файл, имя может быть написано с ошибкой или файл находится в другой папке.

Другие возможные причины

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

Если вы перейдете по временному URL-адресу (http://ip/~username/) и получите эту ошибку, возможно, проблема связана с набором правил, хранящимся в файле .htaccess. Вы можете попробовать переименовать этот файл в .htaccess-backup и обновить сайт, чтобы посмотреть, решит ли это проблему.

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

Вы используете WordPress? См. Раздел об ошибках 404 после перехода по ссылке в WordPress.

Как найти правильное написание и папку

Отсутствующие или поврежденные файлы

Когда вы получаете ошибку 404, обязательно проверьте URL-адрес, который вы пытаетесь использовать в своем браузере. Это сообщает серверу, какой ресурс он должен использовать попытка запроса.

http://example.com/example/Example/help.html

В этом примере файл должен находиться в public_html/example/Example/

Обратите внимание, что в этом примере важен CaSe . На платформах с учетом регистра e xample и E xample не совпадают.

Для дополнительных доменов файл должен находиться в папке public_html/addondomain.com/example/Example/, а имена чувствительны к регистру.

Неработающее изображение

Если на вашем сайте отсутствует изображение, вы можете увидеть на своей странице поле с красным размером X , где отсутствует изображение. Щелкните правой кнопкой мыши на X и выберите «Свойства». Свойства сообщат вам путь и имя файла, который не может быть найден.

Это зависит от браузера. Если вы не видите на своей странице поле с красным X , попробуйте щелкнуть правой кнопкой мыши страницу, затем выберите «Просмотр информации о странице» и перейдите на вкладку «Мультимедиа».

http://example.com/cgi-sys/images/banner.PNG

В этом примере файл изображения должен находиться в папке public_html/cgi-sys/images/

Обратите внимание, что в этом пример. На платформах, которые обеспечивают чувствительность к регистру PNG и png — это не одно и то же место.

Ошибки 404 после перехода по ссылкам WordPress

При работе с WordPress ошибки 404 Page Not Found часто могут возникать, когда была активирована новая тема или когда были изменены правила перезаписи в файле .htaccess.

Когда вы сталкиваетесь с ошибкой 404 в WordPress, у вас есть два варианта ее исправления.

Вариант 1. Исправьте постоянные ссылки
  1. Войдите в WordPress.
  2. В меню навигации слева в WordPress нажмите  Настройки > Постоянные ссылки (Обратите внимание на текущую настройку. Если вы используете настраиваемую структуру, скопируйте или сохраните ее где-нибудь. )
  3. Выберите  По умолчанию
    .
  4. Нажмите  Сохранить настройки .
  5. Верните настройки к предыдущей конфигурации (до того, как вы выбрали «По умолчанию»). Верните пользовательскую структуру, если она у вас была.
  6. Нажмите  Сохранить настройки .

Во многих случаях это сбросит постоянные ссылки и устранит проблему. Если это не сработает, вам может потребоваться отредактировать файл .htaccess напрямую.

Вариант 2. Измените файл .htaccess

Добавьте следующий фрагмент кода в начало файла .htaccess:

# НАЧАЛО WordPress

RewriteEngine On
RewriteBase / 9index.php$ — [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# Конец WordPress

Если ваш блог показывает неправильное доменное имя в ссылках, перенаправляет на другой сайт или отсутствуют изображения и стиль, все это обычно связано с одной и той же проблемой: в вашем блоге WordPress настроено неправильное доменное имя.

Как изменить файл .htaccess

Файл .htaccess содержит директивы (инструкции), которые сообщают серверу, как вести себя в определенных сценариях, и напрямую влияют на работу вашего веб-сайта.

Перенаправление и перезапись URL-адресов — это две очень распространенные директивы, которые можно найти в файле .htaccess, и многие скрипты, такие как WordPress, Drupal, Joomla и Magento, добавляют директивы в .htaccess, чтобы эти скрипты могли работать.

Возможно, вам потребуется отредактировать файл .htaccess в какой-то момент по разным причинам. В этом разделе рассказывается, как редактировать файл в cPanel, но не о том, что нужно изменить. статьи и ресурсы для этой информации.)

Существует множество способов редактирования файла .htaccess
  • Отредактируйте файл на своем компьютере и загрузите его на сервер через FTP
  • Использовать режим редактирования программы FTP
  • Используйте SSH и текстовый редактор
  • Используйте файловый менеджер в cPanel

Самый простой способ отредактировать файл . htaccess для большинства людей — через диспетчер файлов в cPanel.

Как редактировать файлы .htaccess в файловом менеджере cPanel

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

Откройте файловый менеджер
  1. Войдите в cPanel.
  2. В разделе «Файлы» щелкните значок File Manager .
  3. Установите флажок для Корень документа для и выберите доменное имя, к которому вы хотите получить доступ, из раскрывающегося меню.
  4. Убедитесь, что установлен флажок Показать скрытые файлы (точечные файлы) «.
  5. Нажмите  Перейти . Файловый менеджер откроется в новой вкладке или окне.
  6. Найдите файл .htaccess в списке файлов. Возможно, вам придется прокрутить, чтобы найти его.
Для редактирования файла .htaccess
  1. Щелкните правой кнопкой мыши файл .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *