Маткад эта переменная не определена что делать
Перейти к содержимому

Маткад эта переменная не определена что делать

  • автор:

Сообщения об ошибках

Это приложение является алфавитным списком диагностических сообщений об ошибках в математических выражениях. Они появляются при попытке ввода, обработки или вычисления выражения, в котором Mathcad обнаруживает ошибку. Для описания диагностических сообщений по работе символьного процессора см. главу «Символьные вычисления».

Если Mathcad находит ошибку при попытке вычисления функции, определенной пользователем, он помечает сообщением об ошибке имя функции, а не ее определение. В этом случае проверьте определение функции, чтобы понять, что вызвало ошибку.

Вложенные блоки — ключевое слово Given использовано дважды в строке без последующих Find или Minerr. Mathcad не разрешает вложенные блоки решения уравнений, хотя можно определить функции через блоки решения уравнений и затем использовать их в других блоках решения уравнений. См. главу «Решение уравнений»;

Диапазон недопустим — попытка использования дискретного аргумента внутри блока решения уравнений. Чтобы решать систему уравнений для многих значений параметров, см. раздел «Как лучше искать корни» на стр.353;

Дисбаланс скобок (unmatched parenthesis) — вы ввели или пытались вычислить выражение, содержащее левую скобку без соответствующей ей правой. Исправьте выражение, удалив левую скобку или поставив в нужном месте правую;

Длинное выражение в символах — результат символьного преобразования настолько длинен, что не может быть помещен в рабочий документ;

Длинный входной список (list too long) — введено слишком много элементов в списке, разделенном запятыми. Это может произойти при попытке вывести на график больше выражений, чем допускается Mathcad, или при попытке создать таблицу с более чем пятьюдесятью элементами;

Должен быть диапазон (must be range) — что-либо, не являющееся дискретным аргументом, использовано в месте, где он требуется, например, в качестве индекса для суммирования. Индекс для суммирования располагается под знаком суммы и должен быть предварительно определен как дискретный аргумент;

Должна быть квадратной — это сообщение об ошибке отмечает неквадратную матрицу в операции, в которой требуется квадратная, например, при вычислении детерминанта, обращении или возведении матрицы в степень;

Должно быть безразмерным (must be dimensionless) — указанное выражение имеет размерность, хотя ситуация требует, чтобы оно было безразмерным. Единицы измерения нельзя использовать для аргументов некоторых функций (например, cos и In) или в показателе степени. Например, выражение co5 (lL) является недопустимым;

Должно быть вектором (must be vector) — это сообщение отмечает скаляр или матрицу в операции, требующей векторный аргумент;

Должно быть вещественным (must be real) — мнимое или комплекснозначное выражение использовано там, где Mathcad требует вещественнозначное выражение. Например, Mathcad требует вещественнозначные аргументы для некоторых встроенных функций и вещественнозначные индексы;

Должно быть возрастающим (must be increasing) — вектор, элементы которого не расположены в порядке строгого возрастания, использован в качестве аргумента одной из функций Ispline, pspline, cspline, interp, linterp и hist. Первый аргумент этих функций должен быть вектором со строго возрастающими элементами. (При этом следует помнить о том, что, если ORIGIN есть О, Mathcad включает в число элементов вектора элемент с нулевым индексом, и если он не определен явно, его значение полагается равным нулю);

Должно быть массивом (must be array) — попытка выполнить операцию, которую можно выполнять только на массиве, со скаляром. Например, можно увидеть это сообщение об ошибке при попытке транспонировать число, поскольку в таком контексте операция транспонирования не имеет смысла;

Должно быть многомерным массивом — следует использовать матрицу, имеющую более чем одну строку либо более чем один столбец;

Должно быть ненулевым (must be nonzero) — попытка вычислить встроенную функцию от нуля, хотя для нуля она не определена;

Должно быть положительным (must be positive) — это сообщение отмечает чертеж, в котором одна из границ по оси, использующей логарифмический масштаб, равна нулю или отрицательна. Mathcad может выводить на график вдоль логарифмической оси только положительные значения;

Должно быть скаляром (must be scalar) — векторное или матричное выражение использовано там, где требуется скаляр, например в качестве аргумента функции identity;

Должно быть трехмерным вектором (must be 3-vector) — попытка найти векторное произведение от операндов, не являющихся трехмерными векторами. Векторное произведение определено только для векторов с тремя элементами;

Должно быть целым (must be integer) — использовано нецелое выражение там, где требуется целое, например как аргумент функции identity или как индекс, нижний или верхний. (Хотя можно определять дискретные аргументы с дробными значениями, например х: =1, 1.1 .10 — их нельзя использовать как нижние индексы);

Допустим только один массив (only one array allowed) — попытка ввести более чем один массив в поле ввода для карты линий уровня. Mathcad в этом случае допускает не более чем один массив, поскольку карта линий уровня может представлять не более чем одну функцию одновременно;

Дублирование (duplicate) — попытка определить одну переменную дважды в одном определении. Это сообщение появляется, когда вы создаете вектор по левую сторону определения и используете одно имя в этом векторе дважды;

Индекс вне границ (index out of bounds) — это сообщение помечает индекс, ссылающийся на несуществующее значение массива. Такое сообщение можно видеть при использовании отрицательного верхнего или нижнего индекса (или индекса, меньшего, чем ORIGIN, если ORIGIN > 0) либо при использовании верхнего или нижнего индекса для ссылки на элемент массива с номером, большим, чем возможно согласно определению в документе;

Мало нижних индексов (too few subscripts) — для матрицы использован один нижний индекс. Указание на элементы матрицы возможно при помощи двух нижних индексов, разделяемых запятой;

Не может быть определено (cannot be denned) — слева от символа определения (: =) помещено неопределяемое выражение. Mathcad допускает следующие виды выражений слева от символа определения:

Простое имя переменной: х

Имя переменной с нижним индексом: х;

Имя переменной с верхним индексом: x <l>

Матрица имен переменных, порожденная нажатием [Ctri] M. Матрица может содержать лишь простые имена переменных или имена переменных с нижними индексами

Имя функции с аргументами: j (x, у)

Использование других видов выражений некорректно. Если нужно вычислить результат вместо определения переменной, следует поставить знак равенства (=) вместо нажатия двоеточия;

Не содержит верхних индексов (cannot take subscript) — верхний индекс использован не для матрицы, а для чего-то другого;

Не содержит нижних индексов (cannot take subscript) — нижний индекс использован не для вектора или матрицы, а для чего-то другого;

Не является именем (not a name) — число или другая комбинация символов использованы там, где Mathcad требует имя, например как второй аргумент функции root. Примеры того, что не является именем: / (X)) (функция), 3 (число), х + 2 (выражение);

Неверная операция с массивом (illegal array operation) — ‘попытка применить к вектору или матрице функцию или оператор, которые требуют скалярные аргументы. Например, это сообщение можно видеть при попытке применения функции синус к квадратному корню из матрицы Если же нужно применить оператор или функцию к каждому элементу матрицы, используйте оператор векторизации, как описано в главе «Векторы и матрицы»;

Неверное имя функции (illegal function name) — использовано выражение, которое Mathcad интерпретирует как функцию, но имя функции неверно. Это сообщение появится, например, в случае использования числа как имени функции: 6 (х). Чаще всего оно возникает, если пропущен оператор типа *, что заставляет Mathcad интерпретировать скобки в выражении как признак функции, а не как группирование операций;

Неверное употребление ORIGIN (illegal ORIGIN) — ORIGIN определен через нецелое значение или значение с величиной, большей 16 000 000. Это сообщение отмечает первое использование индекса после неверного употребления ORIGIN;

Неверный контекст (illegal context) — оператор или функция использованы в контексте, запрещаемом Mathcad. Например, это сообщение можно видеть в следующих случаях:

точка с запятой использована где-либо вне корректного определения диапазона. (Точка с запятой в этом случае выводится на экран как многоточие) Можно использовать точку с запятой только в определении диапазона для дискретного аргумента функции WRITE или APPEND использованы где-либо вне левой стороны определения. Эти функции не могут применяться в выражениях или в правой части определения имя существующей функции использовано как имя переменной или имя существующей переменной использовано как имя функции;

Неверный множитель (illegal factor) — в поле ввода единиц в конце выражения, возвращающего численный результат, введено неверное выражение. Допустимы вещественные ненулевые скалярные значения;

Неверный порядок (invalid order) — отмечает попытку вычислить производную с указанным порядом, который не является целым числом от 0 до 5 включительно;

Неверный размер вектора (wrong size vector) — это сообщение указывает на функцию преобразования Фурье, аргумент которой имеет число элементов, отличное от допустимого, fft требует в качестве аргумента вектор с количеством элементов 2°, где п — целое число, большее 1. ifft требует вектор с 1+2″ элементами, где n — целое число, большее 0. Если ORIGIN равен нулю, Mathcad автоматически включает элемент с нулевым индексом как компоненту вектора-аргумента;

Некорректная точность аппроксимации (illegal tolerance) — это сообщение отмечает выражение, использующее TOL интеграл, или вхождения Root, Find или Minerr, для которых TOL 3> 1 или TOL <^ 0. Для устранения этой ошибки нужно где-либо выше отмеченного выражения установить значение TOL между нулем и единицей;

Неопределенная размерность — выражение с единицами измерения возводится в степень, включающую дискретный аргумент или вектор. Mathcad не может определить размерность результата, который будет изменяться в зависимости от показателя степени. Если выражение имеет размерность, его можно возводить только в степень с фиксированным вещественным показателем;

Не определено (undefindet) — показанное в негативном изображении имя функции или переменной не определено. Чтобы его определить, введите имя переменной с последующим двоеточием (:) и выражение или число, ее определяющее. Это сообщение часто означает, что для определения переменной использован знак равенства (=) вместо двоеточия. Для создания определения следует использовать двоеточие. Если используется знак равенства, Mathcad считает, что нужно вычислить значение переменной. Это сообщение также появляется при некорректном использовании переменной в глобальном определении. Если переменная используется в правой части глобального определения, она должна быть определена глобально выше него. Если используется локально определенная переменная или переменная, глобальное определение которой находится ниже места ее использования, Mathcad отмечает, что переменная не определена. Сообщение «не определено» часто указывает на то, что где-то выше в рабочем документе содержится ошибка. Если определение некорректно, то ниже в документе любые выражения, зависящие от этого определения, показываются в негативном изображении;

Неправильный диапазон (illegal range) — дискретный аргумент определен неправильно. При определении диапазона следует использовать одну из следующих форм записи:

Rval: =nl. п2 Rval: =nl, n2. п2

Это набирается нажатием клавиш Rval: nl; n2 и Rval: nl,n2; n2 соответственно. В определении диапазона допустимо использовать максимум одну запятую и одну точку с запятой. Если используется вторая форма записи, величина п2 должна лежать между значениями п и п3, но не равняться п;

Нескалярная величина (no scalar value) — вектор или выражение, содержащее дискретный аргумент, используются там, где требуется скалярная величина. Например, можно увидеть это сообщение при попытке ввести равенство вида х: = /, если / — дискретный аргумент. Нельзя определить один дискретный аргумент через другой непосредственно, для этого следует использовать выражения, подобные xi. Данная ошибка часто возникает при построении графиков, если ввести в поле ввода имя вектора х вместо xi;

Несовместимые единицы (incompatible units) — отмечает выражение, в котором складываются, вычитаются или выполняются иные операции с выражениями, имеющими различную размерность. Например, это сообщение об ошибке можно видеть при попытке:

сложить или вычесть два выражения, имеющие различную размерность, например 3 кг + 5 сек

создать вектор, матрицу или таблицу, в которой не все элементы имеют одинаковую размерность

создать чертеж, в котором два выражения, имеющие различную размерность, откладываются по одной оси;

Несовпадение размеров массивов (array size mismatch) — попытка произвести операцию с векторами или матрицами, размеры которых не подходят для этой операции. Многие операции требуют, чтобы их векторные аргументы были одного размера, например произведение или функции linterp и со/г. Сложение и вычитание векторов и матриц тоже требуют соответствия размерности. Умножение матриц требует, чтобы количество столбцов первой матрицы совпадало с количеством строк второй;

Нет соответствующего Given (no matching Given) — это сообщение указывает на функции Find или Minerr без соответствующего им слова Given. Каждый блок решения уравнений, начинающийся со слова Given, должен оканчиваться словом Find или Minerr;

Неуместная запятая (misplased comma) — запятая использована там, где ее не должно быть. Можно использовать запятую в одном из следующих случаев:

для разделения аргументов функций

для разделения первых двух элементов диапазона в определении дискретного аргумента

для разделения величин, откладываемых на чертеже вдоль одной оси

для разделения элементов в таблице ввода

для разделения нижних индексов элемента матрицы.

Использование запятой для любых других целей в Mathcad недопустимо;

Особенность — попытка вычислить функцию или выполнить операцию с недопустимым значением. Например, это сообщение можно видеть при делении на ноль или попытке обратить вырожденную матрицу (с нулевым определителем);

Отсутствует сходимость — Mathcad не способен вычислить результат интегрирования, дифференцирования, функции root, Find или Minerr с требуемой точностью. Для дополнительной информации см. описания соответствующих операторов и функций;

Ошибка в блоке (error in solve block) — можно видеть это сообщение при вычислении пользовательской функции, выражаемой через блок решения уравнений, содержащий ошибку. Для устранения данной ошибки устраните ошибку в блоке решения уравнений. (Если использовать блок решения уравнений непосредственно, не определяя через него функцию, можно получить детализированное диагностическое сообщение);

Ошибка в константе (error in constant) — Mathcad интерпретирует указанное выражение как некорректную константу. Mathcad воспринимает все начинающееся с цифры как константу. Если ввести цифру и непосредственно за ней несколько букв, Mathcad интерпретирует это как некорректную константу. Полный список всех возможных корректных форм констант приведен в разделе «Окончания чисел» приложения;

Ошибка в списке (error in list) — указанная функция содержит некорректный список аргументов. Правильное определение функции начинается таким образом:

Список аргументов в скобках может состоять из одного или нескольких имен, разделенных запятой. Любой другой вид списка неправилен. Это сообщение об ошибках появляется также, если создан недопустимый список в другом контексте, например в списке выражений для оси ординат графика;

Ошибка области определения (domain error) — попытка вычислить значение функции, имеющей аргумент, выходящий за область определения. Например, попытка вычислить 1п (0).

Ошибка файла (file error) — система столкнулась с ошибкой при чтении файла с помощью функции READ или READPRN. См. главу «Файлы данных», где описаны допустимые форматы файлов данных;

Переполнение стека определений (definition stack overflow) — использовано слишком мнот о вложенных функций;

Переполнение стека (stack overflow^ — вычисление выражения привело к переполнение внутреннего стека Mathcad. Это может быть результа ‘ом слишком сложного выражения или рекурсивного с пределения функции;

Переполнение (overflow) — попытка вычислить выражение, которое превосходит наибольшее число, которое может быть представлено Mathcad (примерно 10 307 ). Это может случиться не только когда велик сам по себе конечный результат, но и в случае превышения этого предела любым промежуточным результатом;

Потеряны значащие цифры (significance lost) — это сообщение отмечает попытку вывести функцию от величины, которая лежит за пределами диапазона, где зна чение функции может быть вычислено точно. Например, оно появится при попытке вычислить sin (10 100 ). Поскольку величина sin (IQi 00 ) зависит от совершенно определенных цифр числа IQi 00 , то любое значение, которое Mathcad сможет вернуть, не будет иметь значащих цифр. Вместо возвращения результата, точность которого не обоснована, Mathcad выдает данное сообщение;

Прервано (interrupted) — вы прервали Mathcad нажатием клавиши [Esc] при выполнении вычислений. Для пересчета помеченного выражения щелкните мышью на выражении и нажмите [F9] ;

Пропущенный знак операции (missing operator) — в выражении или уравнении пропущен один из знаков операции;

Пропущенный операнд (missing operand) — в выражении пропущен один из операндов. Например, это сообщение можно видеть при вводе знака плюс без ввода слагаемых и последующем нажатии знака равенства. Mathcad показывает поле ввода (маленький прямоугольник) на месте пропущенного операнда;

Размерность в невещественной степени — выражение с единицами измерений возведено в комплекснознач-ную или мнимую степень. Если выражение имеет размерность, оно может быть возведено только в вещест-веннозначную степень, иначе Mathcad не может определить единицы, в которых выражен результат;

Решение не найдено (did not find solution) — Mathcad не нашел решения системы уравнений. Чтобы блок решения уравнений выдал в качестве решения приближающий результат, используйте функцию Minerr вместо функции Find. Подробнее см. главу «Решение уравнений»;

Слишком большое выражение (equation too large) — для вычисления в Mathcad введено слишком большое выражение. Разделите выражение на два или более подвыражений;

Слишком большой нижний индекс (subscript too large) — попытка использовать нижний индекс, превышающий пределы, допускаемые Mathcad;

Слишком велико, чтобы отобразить (too large to display) — попытка вывести вектор или матрицу размера больше, чем допускается Mathcad;

Слишком мало аргументов (too few arguments) — указанное выражение содержит функцию со слишком малым количеством аргументов. Для встроенных функций число аргументов фиксировано; см. главу «Встроенные функции». Для функций пользователя число параметров зависит от определения, сделанного в рабочем документе;

Слишком мало ограничений (too few constraints) — это сообщение указывает на Find или Given с количеством ограничений, меньшим числа переменных. Добавьте несущественные ограничения или уменьшите число переменных, относительно которых ищется решение. Подробнее см. главу «Решение уравнений»;

Слишком мало элементов (too few elements) — это сообщение указывает на преобразование Фурье, кубический сплайн или функцию линейной интерполяции, применяемую для вектора со слишком малым количеством компонентов. Преобразование Фурье и обратное к нему требуют как минимум четыре элемента вектора;

Слишком много аргументов (too many arguments) — указанное выражение содержит функцию со слишком малым количеством аргументов. Для встроенных функций число аргументов фиксировано; см. главу «Встроенные функции». Для функций пользователя число параметров зависит от определения, сделанного в рабочем документе;

Слишком много индексов (too many subscripts) — использовано два или более нижних индекса для вектора либо три или более индекса для матрицы;

Слишком много ограничений (too many constraints) — в блоке решения уравнений используются более пятидесяти ограничений;

Слишком много точек (too many points) — попытка вывести на график точек больше, чем Mathcad может обработать для одного графика;

Слишком много файлов — открыто слишком много файлов с использованием таких функций доступа к файлам, как WRITEPRN, READPRN, или других функций этого типа. Одновременно таким образом может быть открыто не более 30 файлов. Выберите команду Присоединить к файлу из меню Файл, введите имя од ной из используемых файловых переменных и нажмите «Отсоединить»;

Только символьный оператор — попытка получить численный результат у выражения, которое должно быть вычислено только символьно. Некоторые операторы должны вычисляться только символьно, как описано в главе 17 «Символьные вычисления»;

Файл не найден (file not found) — система не нашла файла данных, указанного в качестве параметра для функции READ или READPRN, либо для импорта в графическую область.

Маткад эта переменная не определена что делать

  • f (х, . ) — функция;
    • f — имя функции;
    • х. — список переменных.
    • встроенные функции;
    • функции, определенные пользователем.
    • Введите в желаемом месте документа имя функции (f).
    • Введите левую скобку «(«, имена переменных через запятую х, у и правую скобку «)». При вводе левой скобки и запятой автоматически будут появляться соответствующие местозаполнители.
    • Введите оператор присваивания с панели инструментов или нажатием клавиши .
    • Введите в появившийся местозаполнитель выражение, определяющее функцию x 2 -cos(x+y), пользуясь клавиатурой или панелями инструментов.

    • Введите это выражение, например х у.
    • Нажмите клавишу .

    • Введите это выражение: В sin(asin(С Х)).
    • Введите оператор символьного вывода сочетанием клавиш +, либо нажатием соответствующей кнопки (рис. 3.4) на панели Symbolic (Символика) или Evaluation (Выражения).

    • большие и маленькие буквы — Mathcad различает регистр: так, имена х и х определяют разные переменные. Кроме того, Mathcad различает и шрифт, например имена х и х воспринимаются как разные;
    • числа от 0 до 9;
    • символ бесконечности (клавиши + + );
    • штрих (клавиши + );
    • греческие буквы — они вставляются с помощью панели Greek (Греческие символы);
    • символ подчеркивания;
    • символ процента;
    • нижний индекс.
    • имя не может начинаться с цифры, символа подчеркивания, штриха или процента;
    • символ бесконечности должен быть только первым в имени;
    • все буквы в имени должны иметь один стиль и шрифт;
    • имена не могут совпадать с именами встроенных функций, констант и размерностей, например sin или TOL. Тем не менее, допускается их переопределение, но тогда одноименная встроенная функция больше не будет использоваться по первоначальному назначению;
    • Mathcad не различает имен переменных и функций: если сначала определить функцию f (х), а потом переменную f, то в оставшейся части документа будет утеря* доступ к функции f (x).
    • Нажмите клавиши + + — появится пара квадратных скобок с местозаполнигелем внутри.
    • Введите в местозаполяитель последовательность любых символов, например a+b.
    • Введите первый символ (а), который должен быть допустимым для имен Mathcad.
    • Нажмите клавиши + + для перехода в специальный «текстовый» режим редактирования.
    • Введите последовательность любых символов (+).
    • Еще раз нажмите клавиши + + , чтобы вернуться в обычный режим редактирования. Теперь можно продолжать ввод допустимых символов в имя (b).
    • нажатием соответствующей клавиши (или сочетания клавиш) на клавиатуре;
    • нажатием указателем мыши соответствующей кнопки на одной из математических панелей инструментов.
    • сложение и вычитание: + — (листинг 3.14);
    • умножение и деление: / + (листинг 3.15);
    • факториал: ! (листинг 3.16);
    • модуль числа: |х| (листинг 3.16);
    • квадратный корень: (листинг 3.17); степени: (листинг 3.17);
    • возведение х в степень у: х y (листинг 3.17);
    • изменение приоритета: скобки (листинг 3.18);
    • численный вывод: = (все листинги).

    • Щелкните правой кнопкой мыши на выражении, содержащем оператор умножения.
    • Выберите первый пункт появившегося контекстного меню View Multiplication As (Представление умножения).
    • В подменю выберите пункт, соответствующий стилю представления умножения: в виде обычной точки (Dot), точки с уменьшенным расстоянием от него до сомножителей (Narrow Dot), толстой точки (Large Dot), крестика (X), без символа с небольшим расстоянием между сомножителями (Thin Space), вообще вместе (No Space). Чтобы просмотреть, как будет выглядеть выражение в двух последних представлениях, нужно снять с него выделение. Чтобы вернуть представление по умолчанию, выберите в подменю контекстного меню пункт Default.

    • дифференцирование и интегрирование;
      • производная (листинг 3.20);
      • N-Я производная (листинг 3.20);
      • определенный интеграл (листинг 3.21);
      • неопределенный интеграл (листинг 3.21).
      • сумма (листинг 3.22);
      • произведение (листинг 3.22);
      • сумма ранжированной переменной (листинг 3.23);
      • произведение ранжированной переменной (листинг 3.23).
      • двусторонний;
      • левый;
      • правый.

      • Вставьте с панели Boolean (Булевы операторы) соответствующий оператор =.
      • В появившиеся местозаполнители вставьте операнды (две единицы).
      • Нажмите клавишу , чтобы получить ответ.

      • больше (Greater Than);
      • меньше (Less Than);
      • больше или равно (Greater Than or Equal);
      • меньше или равно (Less Than or Equal);
      • равно (Equal);
      • не равно (Not Equal to);
      • и (And);
      • или (Or);
      • исключающее или (Exclusive or);
      • отрицание (Not).

      • Оценить численно (Evaluate Numerically) (см. разд. 3.1.5)
      • Вычислить символьно (Evaluate Symbolically) (см. разд. 3.1.6)
      • Присваивание (Definition) (см. разд. 3.1.2)
      • Глобальное присваивание (Global Definition)

      • Введите имя оператора, например, bin.
      • Наберите знак скобки , затем список из двух операндов через запятую, , , , затем закрывающую скобку .
      • Введите оператор присваивания .
      • Введите выражение, зависящее от операндов, действие которого необходимо присвоить оператору (х-у 2).
      • Введите имя оператора. Для этого нажмите клавиши , + + + , , затем снова + + , потом сотрите в имени букву «а».
      • После знака % наберите скобку «(«, далее «х11, затем еще одну скобку «)».
      • .
      • Введите выражение х100.
      • Нажмите кнопку Tree Operator (Оператор дерево) на панели Evaluation (Выражения) (рис. 3.12, справа).
      • В появившиеся местозаполнители введите имя оператора (на вершине графа) и значения операндов (в ответвления дерева).
      • Введите оператор присваивания, нажав клавишу .

      • автоматический режим (automatic mode) — все вычисления проводятся автоматически по мере ввода формул;
      • ручной режим (manual mode) — начало вычислений каждой формулы или всего документа производится пользователем.

      • Для того чтобы вычислить все формулы во всем документе, выполните команду Tools / Calculate / Calculate Worksheet (Математика / Пересчитать / Пересчитать все).
      • Для вычисления всех формул в видимой части документа выберите пункт Tools / Calculate / Calculate Now (Сервис / Пересчитать / Пересчитать) либо нажмите клавишу , либо щелкните на кнопке с изображением знака равенства (Calculate) на стандартной панели инструментов
      • Прервать вычисления можно обычным образом, нажав клавишу .

      • Щелкните правой кнопкой мыши на формуле.
      • Выберите в контекстном меню пункт Disable Evaluations (Выключить вычисления), как показано на рис. 3.18.

      • Recalculate automatically (Пересчитать автоматически) — включение режима автоматических вычислений.
      • Use strict singularity checking for matrices (Использовать проверку матриц на сингулярность) — опция, появившаяся в версии Mathcad 2001, которая важна при некоторых операциях с матрицами. Она означает проведение дополнительной проверки на сингулярность матрицы перед использованием численных алгоритмов, что позволяет, во избежание неправильного применения численного метода, выдать заранее сообщение об ошибке, если матрица сингулярная.
      • Optimize expressions before calculating (Оптимизировать выражения перед вычислением) — включение режима оптимизации.
      • Use exact equality for Boolean comparisons (Использовать точное равенство для логического сравнения) — когда флажок выбран, применяется жесткий критерий точного равенства чисел (точнее, числа при сравнении считаются равными, если отличаются по модулю менее чем на 10 -307). Если флажок снят, используется более мягкий критерий (относительное различие чисел по модулю менее чем на 10 -12).

      • определение (присвоить значение) – вводится через двоеточие [:]
      • вычисление – вводится через знак равенства [=]

      Эти два знака равенства принципиально различны, поэтому их не следует путать.

      Эта переменная не определена mathcad ошибка

      Тип бесконечности вводится нажатием сочетания клавиш + + .

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

      Can only evaluate an n-th order derivative when n=0,1..5.

      Можно вычислить n-й порядок производной, только когда п=0,1..5

      Порядок производной должен быть одним из следующих чисел: 0, 1, 2,. ..5.

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

      Can’t evaluate this function when its argument less than or equal to zero

      Невозможно вычислить эту функцию, когда ее аргумент меньше или равен нулю

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

      Отрицательные числа и ноль не могут быть расположены нигде на логарифмических осях. Смените тип осей графика или постройте его для других значений

      Can’t converge to a solution

      Не сходится к решению

      Численный метод расходится (не может найти решения)

      Убедитесь, что операция не применяется к функции в области непосредственной близости точки ее сингулярности (деления на ноль). Попробуйте поменять параметры численного метода (например начальное приближение).

      Попробуйте увеличить константу TOL, т. е. осуществить поиск решения с худшей погрешностью.

      Попробуйте поменять численный алгоритм, если это возможно (вызвав контекстное меню нажатием на месте ошибки правой кнопки мыши)

      Can’t define the same variable more than once in the same expression

      Невозможно определить ту же самую переменную более одного раза в одном и том же выражении

      Вы пытаетесь вычислить одну и ту же переменную дважды в одном выражении

      Пример подобной ошибки: если Вы создаете вектор с левой стороной а := и используете это же имя справа, то получите ошибку

      Can’t determine what units the result of this operation should have

      Невозможно определить, в каких единицах следует быть результату этой операции

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

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

      Cant divide by zero

      Деление на ноль невозможно

      Где-то в программе или внутри численного метода возникло деление на ноль

      Найдите место деления на ноль и устраните его

      Попробуйте поменять параметры численного метода, константы точности или сам численный алгоритм

      Could not find a solution

      Невозможно найти решение

      Численный метод расходится (не может найти решения)

      См. «Can’t converge to a solution»

      Can’t find the data file you’re trying to use

      Невозможно найти файл, который Вы пытаетесь использовать

      Невозможно найти файл данных или другой тип файла, к которому Вы обращаетесь

      Удостоверьтесь, что такой файл существует в указанном месте

      Can’t have anything with units or dimensions here

      Здесь нет ничего в единицах измерений или в размерностях

      Это выражение использует единицы измерений где-то, где они не разрешены

      Единицы измерений не разрешены:

      — в аргументах большинства функций;

      — в экспонентах; — в верхних и нижних индексах.

      Для того чтобы использовать выражения с единицами измерений, вначале переведите это выражение в UnitsOf (выражение)

      Can’t have more than one array in a contour plot

      Нельзя иметь более одного массива в контурном графике

      Вы вводите более одного массива в местозаполнитель контурного или поверхностного графика

      Можно иметь только один массив в данном местозаполнителе, т. к. графики могут выдавать лишь одну поверхность в один момент времени

      Can’t perform this operation on the entire array at once. Try using «vectorize» to perform it element by element

      Невозможно представить эту операцию в целом массиве сразу. Попытайтесь использовать векторизацию, чтобы представить элемент за элементом

      Например, можно увидеть это сообщение при попытке разделить один вектор на другой

      Для того чтобы применять функцию или оператор к каждому элементу вектора или матрицы, используйте оператор векторизации

      Can’t plot this many points

      Невозможно начертить график с таким большим количеством точек

      Попытка построения графика с числом точек, превосходящим возможное

      Попробуйте сделать число точек меньше, чем 150 000

      Can’t put a «:=» inside a solve block

      Нельзя помещать «:=» внутрь вычислительного блока

      Внутри вычислительного блока не должно быть формулировки присваивания. Он должен содержать только булевы выражения

      Используйте панель с булевыми операторами

      Can’t raise an expression having units to a complex power

      Нельзя возводить в комплексную степень ыражение, имеющее единицы измерений

      Это выражение содержит единицы измерений, а Вы возводите его в комплексную степень

      Выражение с единицами измерений можно возводить только в действительную степень. Для того чтобы возводить в комплексную степень выражение с единицами измерений, вначале переведите это выражение в UnitsOf (выражение) — единицы измерений будут отменены

      Can’t solve a system having this many equations

      Невозможно решить систему, имеющую так много уравнений

      Mathcad не способен решить систему

      См. определение термина «вычислительный блок » (гл. 8)

      Can’t understand something in this data file

      Невозможно что-то понять в файле данных

      Файл, к которому Вы пытаетесь получить доступ при помощи READ или READ*, имеет дефект

      Файл должен быть ASCII-текстом

      Все строки файла должны иметь тот же номер значений, что используется в READ*

      Если файл имеет требуемый формат, а это сообщение продолжает появляться, попробуйте удалить любую часть текста из файла

      Can’t understand the name of this function

      Невозможно понять имя этой функции

      Такое сообщение может появиться, если в качестве имени функции используется, например, число 6(х)

      Выражение должно соответствовать требованиям, предъявляемым в Mathcad к написанию имен функций

      Can’t understand the way this range variable is defined

      Невозможно понять определение ранжированной переменной

      Определение ранжированной переменной неверно

      Вводя область определения ранжированной переменной, необходимо использовать один из следующих видов:

      Rvar := nl . .n2 Rvar := nl,n2 . .пЗ

      Cant understand this number

      Невозможно понять это число

      Это выражение содержит символ или десятичную точку там, где это непозволительно

      Вы увидите эту ошибку, например, если случайно запишете число так: .452.

      Cant use a range variable in a solve block

      Невозможно использовать ранжированную переменную в вычислительном блоке

      Эта ошибка появится, если использовать область определения переменной в неподходящем месте

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

      Cannot evaluate this accurately at one or more of the values you specified

      Невозможно точно вычислить одно или более значений

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

      Проверьте область определения функции

      Cross product is defined only for vectors having exactly three elements

      Векторное произведение определяется только для векторов, имеющих точно три элемента

      Векторное произведение определяется только для векторов, имеющих точно три элемента

      См. определение векторного произведения (гл. 9)

      Can’t evaluate this expression. It may have resulted in an overflow or an infinite loop

      Невозможно вычислить это выражение. Это может быть результатом переполнения или бесконечных циклов

      Это функциональное определение может содержать слишком много вложенных функций. Или функция может быть константой в бесконечных циклах

      Проверьте несколько итераций цикла

      Degree of the polynomial must be between 1 and 99.

      Степень полинома должна находиться в пределах между 1 и 99

      Вектор, пропущенный через функцию поиска корней полинома, должен содержать по крайней мере 2 и не более 99 элементов

      Dimensions must be >4

      Размерность должна быть >4

      Эта матрица должна иметь по крайней мере 4 ряда и 4 столбца

      Исправление ошибок

      Определив выражение, вызвавшее ошибку, нужно его отредактировать с целью устранения ошибки или исправить определение переменной, приведшей к ошибке. После щелчка по выражению и начала редактирования MathCAD удаляет сообщение об ошибке. После щелчка вне уравнения (или нажатия клавиши [F9]), MathCAD повторно вычисляет выражение. Если ошибка устранена, то MathCAD затем повторно вычисляет другие выражения, зависящие от измененного.

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

      Рассмотрим допустимые в MathCAD имена переменных и функций. Имена в MathCAD могут содержать любые из следующих символов:

      · прописные и строчные латинские буквы;

      · цифры от 0 до 9

      · знак подчеркивания _

      · штрих ` Это не апостроф. Находится на одной клавише с тильдой

      · греческие буквы. Есть два способа набрать греческую букву: напечатать римский эквивалент и нажать [Ctrl]+Gили щелкнуть по соответствующему символу на палитре греческих символов

      · символ бесконечности, который можно задать как комбинацию клавиш[Ctrl]+[Shift]+Z.

      · Имена переменных и функций не могут включать пробелы или любые другие символы, не перечисленные выше.

      MathCAD не делает различий между именами переменных и именами функций. Если определить вначале f(x), а затем переменную f, окажется невозможным использовать f(x) где-либо ниже определения f некоторые имена уже используются MathCAD для встроенных констант, единиц измерения и функций. Хотя эти имена можно переопределить, этот уничтожит их встроенные значения.

      MathCAD различает в именах символы верхнего и нижнего регистра, а также различные шрифты.

      Кроме того, среда MathCAD включает так называемые предопределенные переменные. MathCAD содержит 8 переменных, значения которых определены сразу после запуска программы. Они называются встроенными или предопределенными. Эти переменные имеют или общепринятое значение (например, пи или е), или используются как внутренние переменные, управляющие работой MathCAD. Эти переменные можно переопределять, например, определим е:= 2. Ниже этого определения переменная е примет в рабочем документе новое значение.

      Приведем примеры некоторых встроенных переменных:

      е=2.71828 – основание натурального логарифма;

      Е=10^307 – машинная бесконечность;

      MathCAD интерпретирует все, начинающееся цифрой, как число. Цифра может сопровождаться:

      · цифрами после десятичной точки;

      · символами h или o для шеснадцатеричных и восьмеричных чисел; символами i или j для комплексных чисел. Комплексные числа MathCAD воспринимает в форме a+bi (или a+bj). Специальные функции и операторы для работы с комплексными числами:

      · Re(z) – вещественная часть числа z;

      · Im(z) – мнимая часть числа z;

      · Arg(z) – аргумент числа z (угол в комплексной плоскости между вещественной осью и радиус-вектором, определяемым числом z);

      · |z| – модуль числа z.

      Одиночное число в MathCAD называют скаляром. Столбец чисел называется вектором, а прямоугольная таблица чисел — матрицей. Способы создания массива:

      · заполнить массив пустых полей

      · использовать дискретный аргумент

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

      Эта переменная не определена mathcad ошибка

      MathCAD — это просто! Часть 27. Программирование и ошибки: вместе веселее!

      Что ж, хотя мы уже немало всего успели обсудить насчет программирования в такой замечательной математической среде, как MathCAD, еще немало весьма существенных тем осталось за кадром. И, пожалуй, самая существенная из них — это взаимодействие начинающего программиста, пишущего программы в MathCAD’е, и ошибок в его программах. Именно на ней мы с вами сейчас и остановимся.

      В общем-то, если сказать, что ошибки никто не любит, это будет не так уж далеко от истины. Точнее, никто не любит собственные ошибки. Чужие любят все, а не только экзаменаторы и разнообразные инспекторы. Однако, к сожалению, при программировании (а написание небольших вспомогательных программок в MathCAD’е, как я уже когда-то давно тому назад говорил, это тоже программирование) ошибки попросту неизбежны. Даже самые лучшие программисты совершают ежедневно множество ошибок, и никто, в общем-то, за это не применяет к ним особых санкций. Существует даже такое мнение, что программа без ошибок совершенно бесполезна — если в ней нет ошибок, значит, в ней нет и никакой полезной функциональности, потому что не ошибается только тот, кто ничего не делает. Так что ошибки в программах — это вполне естественные спутники каждого, кто пишет даже самые маленькие программки, а потому и бояться их не следует. Тем не менее, с ошибками в программах можно и нужно бороться. И для этого существуют специальные средства, некоторые из которых доступны и тем, кто пишет программы в MathCAD’е. Однако, прежде чем рассказывать о том, что это за средства, и как ими нужно пользоваться, нужно, как мне лично кажется, поговорить еще немного о том, вокруг чего будет сосредоточена наша борьба — то есть о самих ошибках.

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

      Самые простые ошибки — синтаксические. Как вы уже имели возможность воочию убедиться, при программировании очень важно придерживаться определенных правил в записи конструкций. Например, если вы вместо имени функции rkfixed напишете в программе tkfixed, ошибившись при вводе на одну букву и нажав на соседнюю с r клавишу t, то как раз и получите в свое распоряжение самую что ни на есть классическую синтаксическую ошибку. Ни к каким особенно страшным последствиям она (как, впрочем, и все другие ошибки аналогичного класса) не приведет: программа просто не сможет быть выполнена по той причине, что MathCAD не сможет найти функцию, которую вы ему указали. Искать такие ошибки тоже совсем не сложно — они всегда хорошо видны, поскольку даже сама среда подсвечивает их, чтобы можно было найти особенно быстро. Исправлять, соответственно, тоже очень просто: достаточно записать идентификатор правильно, и все в программе станет на положенные места. MathCAD, кстати, избавляет пользователя от множества таких ошибок благодаря необходимости вводить все операторы, управляющие ходом программы, с помощью специальных горячих клавиш или соответствующих кнопок на панели инструментов Программирование. Если бы их нужно было, напротив, набирать вручную с клавиатуры, то и возможности сделать синтаксическую ошибку были бы несравнимо шире.

      Второй тип ошибок — ошибки алгоритмические. Это такие ошибки, которые, в принципе, не мешают выполнению программы, но делают результаты такого выполнения полностью лишенными всякого смысла. Многие из таких ошибок — банальные опечатки: там, где нужно было поставить плюс, вы, например, поставили в спешке минус или же сделали что-нибудь другое примерно в таком же духе. Конечно, сказать, что алгоритмические ошибки — это сплошь и рядом одни только опечатки, было бы, мягко говоря, не до конца верно. Потому что очень многие из них являются следствием недостаточности знаний писавшего программу — то есть если ошибочно составлена сама последовательность действий, которые должен сделать MathCAD для того, чтобы вы могли получить интересующий вас результат. Еще великое множество алгоритмических ошибок — результат банальной невнимательности: например, присвоение значения не той переменной, ее необнуление либо, например, вывод не той переменной в качестве результата выполнения вашей программы. В общем-то, именно об алгоритмических ошибках мы с вами сейчас и будем говорить более подробно. Однако есть еще один, особенно неприятный, тип ошибок.

      Третий тип — это ошибки мистические. Да-да, именно мистические, я не оговорился. Какие именно это ошибки? Это ошибки, имеющие совершенно непонятную природу и столь же непонятный способ лечения — как правило, это проявления ошибок не в вашей программе, а в каком-то из внутренних компонентов MathCAD’а. К сожалению, эти ошибки, в «большом» программировании встречающиеся не так уж, в общем-то, и часто, в MathCAD’е не такие уж редкие гости. Отчасти это объясняется тем, что MathCAD — это все-таки средство расчетов, а не программирования, которое играет в этой среде второстепенную и вспомогательную роль, но, конечно, когда реально сталкиваешься с такими вот мистическими ошибками, это все не слишком успокаивает. Хотя поначалу почти все ошибки в программах кажутся мистическими, на самом деле большая их часть все-таки имеет рациональную природу. Если же природа появившейся ошибки вам совершенно непонятна, то вам следует коренным образом перестроить структуру программы или хотя бы тот ее фрагмент, в котором локализовалось проявление этой ошибки. Практически во всех случаях этот не слишком хитрый прием позволяет полностью избавить программу от досадной непонятной ошибки.

      Что ж, о самих ошибках мы с вами, можно считать, побеседовали. Теперь давайте, пожалуй, перейдем к тому, какими именно способами можно бороться с самыми распространенными из них — то есть алгоритмическими. Об остальных, в общем-то, я уже довольно подробно все рассказал, а вот что касается алгоритмических ошибок, то здесь нужно будет в большинстве случаев прибегнуть к помощи специализированных встроенных в MathCAD инструментов.

      Отладка в MathCAD’е

      Процесс поиска и устранения алгоритмических ошибок называется по-русски отладкой. По-английски этот же самый процесс называется debugging, то есть, если дословно, «избавление от жучков». В общем-то, и по-русски довольно часто можно услышать термины «дебагинг» или «баг», однако во избежание путаницы мы будем использовать слово «отладка» (если, конечно, не возражаете). Кстати, история возникновения английского термина весьма любопытна, и, вполне возможно, вы ее слышали. Первые компьютеры были машинами весьма громоздкими и дорогостоящими, а потому и всевозможные поломки для них были делом далеко не просто устранимым. Когда выяснилось, что причиной очередной поломки стал жучок, забравшийся внутрь компьютера и вызвавший замыкание, в счете за ремонт записали: «debugging». Рука шутника оказалась легкой — термин, как видите, прижился и используется на протяжении уже многих десятилетий.

      В чем же заключается процесс отладки? На самом деле ничего особенно таинственного и трудного для понимания здесь нет. Просто во время отладки у вас есть возможность выполнять программу не сразу «залпом», как это происходит обычно, а пошагово, то есть выполнять последовательно друг за другом каждую строчку программы, делая, когда нужно, паузы для осмысления работы программы и просмотра промежуточных значений каждой из переменных. Отладка используется при разработке любых программ, а потому и создатели MathCAD включили поддержку этого удобного и, в общем-то, достаточно универсального средства выявления ошибок в свой программный продукт. Доступ к инструментам, используемым при отладке программ в MathCAD’е, осуществляется через подпункт Debug меню Tools в главном рабочем окне MathCAD’а (см. соответствующий скриншот).

      Стоит отметить, что, поскольку MathCAD — это среда, ориентированная не на программирование, а на различные вычислительные действия, то отладка в ней имеет более широкое применение, чем только отладка программ, которые пишет пользователь. Отлаживать можно и все вычисления даже в том случае, если они выполняются без применения какого-либо программирования с вашей стороны. В общем-то, поскольку такая возможность будет весьма полезной для большинства читателей не столько при программировании в MathCAD’е, сколько при обычных вычислениях, то именно с такой позиции мы с вами и станем рассматривать отладку в этой мощной математической среде. Нам также понадобится панель отладки. Ее включают так же, как все остальные панели инструментов, в меню View -> Toolbars. Конечно, эта панель, как вы могли уже заметить, дублирует отладочное меню в Tools -> Debug, однако, думаю, нажать на кнопку, расположенную на этой панели, будет все-таки проще и быстрее, чем искать соответствующий пункт в надежно спрятанном от пользователя меню.

      При переходе в отладочный режим (кнопка либо пункт меню Toggle Debug Mode) внешний вид главного окна MathCAD’а меняется (см. скриншот): внизу появляется специальное окно, используемое для просмотра промежуточной отладочной информации. Оно называется Trace Window.

      Однако о том, что именно отображается в этом самом окне, а также о том, что от нас требуется сделать с документом перед тем, как его можно будет уже полноценно отлаживать, мы с вами поговорим, пожалуй, в следующий раз, чтобы не перегружать вас разнообразной полезной информацией. Сейчас же подведем итоги разговора про ошибки, возникающие в процессе написания программ в математической среде MathCAD.

      Как видите, ошибок в программах действительно бояться не следует. Это вполне нормальная составляющая процесса программирования, неизбежно проявляющаяся в каждом из результатов этого процесса. Тем не менее, с ошибками можно и нужно бороться, и с большинством из них это можно производить с весьма высокой вероятностью достижения успеха. Хотя, конечно же, встречаются и такие ошибки, с которыми трудно будет разобраться даже тому, кто на программировании, что называется, собаку съел. Но все-таки они встречаются не так уж часто. Так что в программировании, если вы хотите избежать мучений, связанных с поиском ошибок, очень важна ваша внимательность. Если вы будете достаточно внимательны при написании программы, то риск допустить ошибку будет сравнительно невелик. Впрочем, это правило применимо не только к программированию.

      Эта переменная не определена mathcad ошибка

      Mathcad раскрывается в полной мере при использовании переменных и функций.

      Два знака равенства

      В математических вычислениях мы используем множество различных констант, переменных, операторов и знаков равенства. Обычно в жизни мы используем знак равенства для многих разных операций, но Mathcad отличает их. Наиболее важными операциями являются:

      • определение (присвоение значения) — используется двоеточие;
      • вычисление — используется знак равенства.

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

      Два знака равенства, которые изображены выше, имеют совершенно разные значения, поэтому нужно очень внимательно относится к ним.

      Поставьте курсор перед числом 4 в примере выше.

      Удалите число 4 клавишей [Delete], и введите 5. Нажмите на пустой области, чтобы выйти из области вычисления и увидите, что результат вычислений поменялся на 25:

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

      Использование переменных

      Введите такие выражения в область вычисления

      Проведите операции замены значения х на такие: 100, 0.5, -4 и 0.

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

      Дальше мы поговорим о том, какие имена можно использовать для переменных, а какие нельзя. Существуют такие правила: имя переменной не может начинаться с цифры и в ней нельзя использовать пробелы или знаки операторов. Имена могут начинаться:

      • с любой буквы как большой, так и маленькой;
      • с других символов, которые не являются операторами;
      • с символов из вкладки Математика -> Операторы и символы -> Символы;
      • с символов из таблицы символов ОС Windows.

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

      Подстрочные индексы

      Mathcad существует два типа подстрочных индексов:

      1. Описательный подстрочный индекс.
      2. Индекс массива (матрицы).

      Для ввода описательного индекса сначала введите желаемое имя переменной, а потом нажмите комбинацию [Ctrl+-], далее вводите подстрочный индекс.

      Переменная, которая имеет описательный индекс — это простая переменная, которой присвоено имя. Индекс массива сильно отличается от него. Такой индекс можно присвоить, если ввести квадратную скобку [ после имени переменной. Переменная может иметь один или два индекса массива:

      Индекс массива может иметь только числовое значение. При этом не путайте разные типы индексов, так как они довольно схожи визуально.

      Более четко разницу видно, если нажать мышкой на выражение

      Любая переменная может иметь оба индекса одновременно: описательный и индекс массива. Сначала всегда будет прописан описательный.

      Функции

      Использование переменных возможно только при определении их заранее. Но есть исключение из этого правила — определение функции. Можно произвести определение своей функции. Пример ниже.

      Переменная а имеет для функции локальное значение. Она не несет определения за пределами этой функции.

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

      Вы не будете сталкиваться с такой проблемой, если будете задавать переменной и функции различные имена. Об обозначениях мы поговорим в уроке 10.

      Функции могут иметь более одной переменной.

      Значения переменных х и у не изменяются и в этой функции.

      Встроенные функции

      Mathcad имеет очень много встроенных функций. Перейдите во вкладку Функции.

      Все функции вы можете увидеть, если нажмете на кнопку Все функции.

      Обратите внимание, что все тригонометрические функции в качестве аргумента получают угол не в градусах, а в радианах. Чтобы использовать градусы нужно выбрать их во вкладке Математика -> Операторы и символы -> Символы.

      Математика в тексте

      В текстовую область можно поместить область вычислений. Так вы сможете использовать в тексте подстрочные и надстрочные символы. Чтобы сделать это, при редактировании текстовой области нужно нажать на кнопку Математика во вкладке Математика -> Области.

      Резюме

      1. Mathcad использует два знака равенства отдельно для определения := и для вычисления =.

      2. Имя переменной нельзя начинать с цифры. Можно использовать для этого только буквы или символы, отличные от символов операторов. Символы можно вводить с панели Математика -> Операторы и символы -> Символы, а также брать из панели символов Windows.

      3. Для определения значения переменной нужно:

      • щелкнуть на пустую область;
      • ввести имя переменной;
      • ввести оператор определения [:=];
      • ввести значение переменной.

      4. Для присвоения переменной подстрочного описательного индекса нужно:

      • нажать мышкой в конце имени переменной;
      • нажать [Ctrl+-];
      • ввести подстрочный индекс.

      5. Для присвоения переменной индекса массива:

      • нажмите мышкой в конце имени переменной;
      • нажмите на клавиатуре на открывающуюся квадратную скобку [;
      • ввести нужный подстрочный индекс.

      6. Определять переменную нужно только выше или левее места использования ее в вычислениях.

      7. Имя функции вводится с теме же правилами, что и имя переменной, с той лишь разницей, что заканчивать имя функции нужно вводом открывающейся скобки [(]. В них будут размещаться аргументы функции.

      8. Переменные в функциях имеют определение только в рамках этой функции.

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

      Глобальное определение в PTC Mathcad 15 и PTC Mathcad Prime 3.0

      Оператор глобального определения позволяет определить выражение (переменную, функцию) в любом месте документа.

      a)

      Рис. 1. Оператор глобального определения в Mathcad 15 (а) и Mathcad Prime 3.0 (б).
      Если выражение определено глобально, то его можно использовать в других операциях независимо от того, выше или ниже эти операции находятся в документе:

      Рис. 2. Выполнение вычислений с глобальным и локальным определением в Mathcad 15 (а) и Mathcad Prime 3.0 (б).

      При необходимости, в Mathcad 15 внешний вид оператора глобального определения можно поменять на символ обычный символ равенства «=». Для это щелкните правой кнопкой мыши по оператору, в контекстном меню выберите View Definition As -> Equal.


      Рис. 3. Изменение внешнего вида оператора глобального определения.
      В Mathcad 15 возможно переопределение переменных, заданных глобально. В Mathcad Prime 3.0 подобное переопределение выдаст ошибку.

      б)
      Рис. 4. Переопределение переменной, заданной глобально, в Mathcad 15 (а) и Mathcad Prime 3.0 (б).

      Чтобы учесть все определения, Mathcad работает по следующему алгоритму:
      1. Первый проход документа сверху вниз – распознавание только операторов глобального определения и вычисление выражений.
      2. Второй проход документа – распознавание операторов локального определения и вычисление выражений с поправкой на выражения, которые определенны локально.
      Это важно учитывать, если Вы переопределяете выражения, заданные глобально. Демонстрация этого алгоритма приведена на рисунке 5.


      Рис. 5. Документ с переопределенными выражениями.
      Однако в Mathcad Prime 3.0 выражения, определенные глобально, переопределить уже нельзя (ни локально, ни глобально) – Mathcad выдаст ошибку (рис. 6).


      Рис. 6. Попытка переопределить переменную, заданную глобально в Mathcad Prime 3.0.

      Другой важный момент при использовании глобального определения: если Вы используете переменные для определения выражений, заданных глобально (т.е. используете переменную справа от символа ?), то эта переменная также должна быть определена глобально, причем выше того выражения, в котором она используется. Иначе переменная не будет определена (рис. 7).

      б)
      Рис. 7. Неправильное использование переменных в выражениях, заданных глобально, в Mathcad 15 (а) и Mathcad Prime 3.0 (б).

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

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