Рекурсивные вычисления с несколькими переменными
Удобно использовать запись вектора Mathcad, чтобы выполнить многократные вычисления нескольких переменных одновременно. Эта разновидность рекурсивных вычислений — мощный метод для решения системы уравнений в конечных разностях.
При выполнении многократных вычислений нескольких переменных на каждом шаге вычисляются значения переменных на основе всех их предыдущих значений. Нельзя сделать это с отдельными уравнениями, потому что, когда Mathcad видит формулу с дискретным аргументом, он пытается вычислить её для каждого значения дискретного аргумента перед переходом к следующему уравнению. Значит, следует создать одну формулу, которая выполняет вычисления со всеми переменными одновременно.
Например, рассмотрим модель эпизоотии с четырьмя переменными: через i обозначим число инфицированных животных, через s — число восприимчивых, через d — число умерших, через r — число выздоровевших и приобретших иммунитет. Четыре уравнения, которые связывают эти переменные в каждый момент:
il+1 = 0.0001 sl il sl+1 = sl - 0.0001 sl il dl+1 = dl + 0.55 il rl+1 = rl + 0.45 il |
Рисунок 11: Вычисления в модели распространения инфекции.
Рисунок 11 показывает, как выполнить одновременные вычисления, используя эти уравнения.
Сделаем одно очень важное замечание относительно этого примера: все индексы l+1 собраны по левую сторону уравнения. Правая сторона содержит только индекс l. Mathcad вычисляет все выражения справа перед выполнением любых присваиваний левой стороне. Это означает, что ничто справа не может зависеть ни от чего слева.
- Буквенные индексы
- Ниже приводится полный список предопределенных переменных Mathcad и их значений по умолчанию:
- Используемые числа
- Специальные операции над комплексными числами
- Многозначные функции
- Создание вектора
- Создание матрицы
- Изменение размера матрицы
- Нижние индексы и элементы вектора
- Изменение способа отображения массивов
- Графическое представление матриц
- Ограничение входных массивов
- Ограничение отображаемых массивов
- Ограничение размеров массива
- Размеры и диапазон значений массива
- Специальные типы матриц
- Специальные характеристики матрицы
- Формирование новых матриц из существующих
- Собственные значения и собственные векторы
- Разложения
- Решение линейной системы уравнений
- Определение составного массива
- Отображение составных массивов
- Операторы и функции для составных массивов
- Определение и использование дискретного аргумента
- Многократные вычисления по дискретному аргументу
- Множественные дискретные аргументы и двойные индексы
- Рекурсивные вычисления с несколькими переменными
- Рекурсивные вычисления с вектором
- Советы по набору операторов
- Переменный верхний предел суммирования
- Оператор суммирования элементов вектора
- Производные более высокого порядка
- Переменные пределы интегрирования
- Изменение точности вычисления интегралов
- Криволинейные и двойные интегралы
- Определение пользовательского оператора
- Использование пользовательского оператора
- Запись функций как операторов
- Тригонометрические функции и обратные им.
- Гиперболические функции
- Логарифмические и показательные функции
- Функции Бесселя
- Специальные функции
- Введение в дискретное преобразование Фурье
- Функция if
- Циклы “while”
- Оператор “break”
- Циклы “for”
- Подпрограммы
- Рекурсия
- Что делать, когда функция root не сходится
- Некоторые советы по использованию функции root
- Решение уравнений с параметром
- Нахождение корней полинома
- Как использовать найденное решение
- Что делать, когда Mathcad не может найти решения
- Что делать, когда имеется слишком мало ограничений
- Многократное решение уравнений
- Решение одинаковых задач относительно разных переменных
- Приближенные решения
- Использование символьного решения уравнений
- Дифференциальные уравнения первого порядка
- Дифференциальные уравнения второго порядка
- Уравнения более высокого порядка
- Системы оду первого порядка
- Системы дифференциальных уравнений более высокого порядка
- Гладкие системы
- Медленно изменяющиеся решения
- Нахождение приближенного решения только в конечной точке
- Двухточечные краевые задачи
- Дифференциальные уравнения с частными производными