Блоки решений > Пример: Функции оптимизации
Пример: Функции оптимизации
Этот пример показывает, как передавать вектор начальных приближений в функции Maximize или Minimize.
1. Определите функцию f(x).
Щелкните для копирования этого выражения
2. Определите x как вектор начальных приближений.
Щелкните для копирования этого выражения
3. Передайте вектор x как аргумент в функцию Maximize.
Щелкните для копирования этого выражения
Произойдет ошибка, так как PTC Mathcad предполагает, что x является одиночным значением, а не вектором.
Чтобы избежать этой ошибки, необходимо итерировать начальные приближения и отправлять их в функцию Maximize по одному, как показано ниже.
4. Используйте оператор диапазона, чтобы определить вектор начальных приближений.
Щелкните для копирования этого выражения
5. Определите две новые функции для выполнения максимизации и минимизации функции f (x).
Щелкните для копирования этого выражения
Щелкните для копирования этого выражения
6. Напишите короткую программу для итерирования начальных приближений, вычисления максимума и минимума для такого начального приближения и сохранения результата в векторы maximums и minimums соответственно.
Щелкните для копирования этого выражения
Те же результаты можно получить, используя оператор векторизации следующим образом:
Щелкните для копирования этого выражения
И Ms, и Qs возвращают вектор из двух 7-элементных векторов, содержащих вычисленные максимумы и минимумы.
7. Определите переменную j как длину возвращенного вектора максимальных значений.
Щелкните для копирования этого выражения
8. Постройте график функции f(x) вместе с точками максимумов и минимумов, возвращенными программой.
Щелкните для копирования этого выражения
9. Постройте график функции f(x) вместе с точками максимумов и минимумов, возвращенными оператором векторизации.
Щелкните для копирования этого выражения
Оба метода возвращают одинаковые результаты.
Было ли это полезно?