Mathcad 2616 When starting Mathcad the error message ‘2b4’ appears and Mathcad is unable to create an empty document or open existing files, or the error doc2b6 appears. To make sure Mathcad is correctly registered: For Mathcad 2000 or 2001 go to the Mathcad installation folder, run regtool.exe and choose ‘register components’ For Mathcad 8, go to the Mathcad installation folder and run regall.bat. A dos window should appear which processes a number of files. If instead you see a series of Bad Command or File Name statements you will need to take the additional steps outlined in the next section: ======================================================= — Do a search of your C: drive to locate a file REGSVR32.EXE. Depending on your version of Windows, in Windows Explorer (or My Computer) you either need to go to the Tools menu, then Find, then Files or Folders, or use the Search icon, and then look for this file . — Make a note of the locations where this file occurs. — Next go out to a DOS prompt. Depending on your version of Windows this will either be from the Start menu, then Programs and then ‘MS-DOS Prompt’; or Start, then Programs, then Accessories, then Command Prompt. — At the DOS prompt type PATH and press return. This will list the a number of directories. Make a note of these — in particular note whether C:Windows or C:WindowsSystem is listed (or c:Winnt or c:WinntSystem32 if you’re using NT). — Close this window, and in Windows Explorer (or My Computer) copy (not move) REGSVR32.EXE from one of the existing locations to one of the ones given by the PATH statement (preferably C:Windows or C:WindowsSystem if they were listed). — After this is corrected run REGALL.BAT again verifying that the errors are fixed. You should find that, after a successful run of regall.bat you will be able to start Mathcad successfully. ======================================================= Mathcad 8 onwards en
Сообщения об ошибках
-
Информация об
ошибках пользователя.
array size mismatch
попытка выполнить векторную или матричную
операцию над массивами, размеры которых
не соответствуют друг другу.
cannot be defined
указано недопустимое выражение слева
от оператора присваивания.
cannot take subscript
использован индекс не для обозначения
элемента вектора или матрицы.
cannot take superscript
используется верхний индекс не для
указания номера столбца матрицы.
definition stack overflow
переполнение стека определений.
did not find solution
при решении блока MathCAD не может найти
решение для конструкций, указанных в
теле блока. Чтобы увидеть любой результат
(даже не правильный), замените функцию
Find на Minerr.
dimension to nonreal power
указанное выражение использует единицы
измерения и возводится в комплексную
степень. Если выражение задано с единицами
измерения, то показатель степени должен
быть вещественным, в противном случае
MathCAD не сможет установить единицы
измерения для результата.
domain error
попытка вычислить значение функции для
недопустимого значения аргумента.
duplicate
попытка использовать одну и ту же
переменную в определении.
equation too large
задано очень длинное равенство для
оценки. Разбейте его на два или более.
error in constant
MathCAD интерпретирует указанное выражение
как недопустимую константу. MathCAD пытается
интерпретировать все, начинающееся с
цифры, как константу. Например, 2x.
error in list
указанная функция содержит недопустимый
список аргументов или ошибку при задании
списка. Такая же ошибка возникает и при
неправильном задании списка выражений
на осях при построении графиков.
file error
MathCAD обнаруживает ошибку при попытке
чтения данных из файла, связанного с
файловой переменной. Используйте команду
FILEName, чтобы
узнать, какой файл связан с указанной
пере менной. Просмотрите содержимое
файла с помощью команды DOS.
file not found
MathCAD не находит файл данных, связанный
с указанной переменной.
illegal array operation
попытка применить функцию или операцию,
которая требует скалярной величины, к
вектору или матрице. Вы увидите это
сообщение, если попытаетесь вычислить,
например, sinили квадратный корень из матрицы. Если
вы хотите применить указанный оператор
к каждому элементу массива, то используйте
операцию векторизации.
illegal context
попытка использовать оператор или
функцию в недопустимом MathCADом контексте.
Вы увидите это сообщение, например, если
ввели символ «;» не при задании
диапазона,
использовали функции WRITEилиAPPENDне с
левой стороны равенства,
использовали имя уже заданной
функции как имя переменной или имя
переменной как имя функции,
использовали конструкции с «=»
(вместо ««)
при решении блока.
illegal factor
введено недопустимое выражение в
«знакоместо» в конце равенства.
Если вы ввели выражение на этом
«знакоместе», то оно должно быть
вещественной скалярной величиной.
illegal function name
использовано выражение, которое MathCAD
интерпретирует как функцию с недопустимым
именем. Вы увидите это сообщение, если
будете использовать число в качестве
имени, например 6(x).
Вы также увидите эту ошибку, если опустите
оператор, например +, побуждая тем самым
MathCAD интерпретировать скобки в вашем
равенстве как определение функции
вместо операции группировки.
illegal origin
вы определили системную переменную
ORIGINне как
целое число или числом, превышающим16000. Эта ошибка
появится при первом использовании
индекса, после недопустимого задания
параметраORIGIN.
illegal range
неправильно задан диапазон изменения
переменной.
illegal TOLERANCE
это сообщение появится при вычислении
интеграла, производной, использовании
функции root,
если значение параметра точностиTOLбольше1или
меньше0. Укажите
значение встроенной переменной в
пределах от0до1.
incompatible units
вы ввели выражение с операциями сложения
и вычитания членов с несопоставимыми
единицами измерения. Например, при
сложении единицы длины 1Lс единицей массы1M.
indeterminate dimension
недопустимое возведение в степень
выражения, содержащего единицы измерения.
Степень не должна содержать переменную,
заданную диапазоном, или вектор.
index out of bound
это сообщение появляется тогда, когда
возникает обращение к несуществующему
элементу массива.
index too large
попытка использовать значение индекса,
превышающее предельное значение для
индекса в MathCADе 8000.
interrupted
вы прервали вычисления до их завершения
с помощью клавиш [Ctrl+A]или [Ctrl+Break]. В
строке сообщения появляется запрос на
подтверждение прерывания:Iterrupt
calculation ?
list too long
введено слишком много элементов в
списке. Такая ошибка может возникнуть
и в случае, если вы попытаетесь построить
графики для большого списка выражений.
misplaced comma
недопустимое использование знака «запятая». Например,
missing operand
в выражении отсутствует операнд. MathCAD
показывает «знакоместо» на месте
отсутствующего операнда.
missing operator
отсутствует оператор.
must be 3-vector
операнд должен быть вектором размерности
3 (например, векторное произведение).
must be array
попытка использовать скалярную величину
в операциях с массивами. Операнд должен
быть массивом.
must be dimensionless
указанное выражение использует единицы
измерения, что в данном контексте не
допустимо. Единицы измерения не допустимы
для аргументов некоторых функций
(например, sin, cos,
ln) или в показателе степени.
must be increasing
нарушено условие возрастания значений
элементов вектора.
must be integer
нарушено условие целочисленности
параметра в выражении.
must be nonzero
попытка вычислить значение встроенной
функции в нуле, где она не определена.
must be positiv
нарушено условие положительности
пределов по логарифмической шкале.
must be range
попытка использовать не индексную
переменную (например, при заполнении
«знакоместа» для индекса в операторе
суммирования).
must be real
операнд должен принимать вещественные
значения.
must be scalar
использовано векторное или матричное
выражение там, где требуется скалярная
величина.
must be square
указанная матрица должна быть квадратной
(например, при вычислении определителя
или обратной матрицы).
must be vector
использована матрица или скалярная
величина там, где требуется вектор в
качестве операнда.
nested solve block
вы указали два раза ключевое слово
начала блока Given,
не закончив первый блок применением
функцийFindилиMinerr.
no matching Given
используются функции FindилиMinerrбез
указания начала блока.
non-scalar value
попытка использовать нескалярное
выражение. Например,
not enough memory
не достаточно памяти.
not a name
вы использовали число или другую
недопустимую комбинацию символов там,
где MathCAD требует указать имя, например,
при задании второго аргумента функции
root.
not converging
MаthCAD не может дать ответ при вычислении
интеграла, производной, корня, при
решении блока в пределах требуемой
точности. Попытайтесь изменить значение
встроенной переменной TOLили начальное приближение для переменных,
для которых ищется решение с помощью
функцийroot, FindилиMinerr.
overflow
значение выражения превышает самое
большое число, допустимое в MathCADе: 10307.
significance lost и
significance reduced
значение аргумента функции вне допустимого
MathCADом промежутка. Такая
ошибка может возникнуть, например, при вычислении:
singularity
попытка оценить значение выражения для
недопустимого значения. Например, при
делении на 0.
stack overflow
переполнен внутренний стек MathCADа.
Упростите выражение, разбив его на два
или более.
too close to a region
между двумя областями новая область не
может быть создана.
too few arguments
указанное выражение содержит функцию
с неполным списком аргументов.
too few constraints
в блоке Given указано меньше ограничений,
чем число переменных, используемых при
обращении к функциям FindилиMinerr.
too few elements
вы применили функции преобразования
Фурье, функции интерполяции к вектору
с недостаточным числом элементов.
Линейная интерполяция и интерполяция
сплайнами требуют задания вектора как
минимум с двумя элементами.
too few subscripts
вы указали один индекс для элемента
матрицы.
too large to display
размеры вектора или матрицы превышают
максимально допустимые при выводе
MathCADом на экран.
too many arguments
превышено требуемое число аргументов
функции.
too many constraints
тело блока содержит более 50ограничений.
too many subscripts
указано слишком много индексов.
too many points
разрешающая способность дисплея не
позволяет вывести на экран указанное
число точек. Увеличьте размеры графика
или уменьшите число точек.
undefined
указанная переменная не определена.
Эта же ошибка возникает и в случае
использования оператора-результата
вместо оператора присваивания.
underflow
значение оцениваемого выражения по
абсолютной величине меньше минимально
допустимого в MathCADe числа 10-306.
unmatched parenthesis
не соблюдается баланс открывающихся и
закрывающихся скобок.
wrong size vector
aргумент функции преобразования Фурье
имеет неверное число элементов. Функции
fft,cfft,icfftтребуют
в качестве аргумента вектор с числом
элементов2n,
гдеn- целое
число, большее1.
Функцияifftтребует в качестве аргумента вектор с
числом элементов2n+1,
гдеn- целое,
большее0.
Эта глава посвящена основам вычислений в Mathcad. Она содержит все необходимые сведения о применении переменных и функций, операторов Присваивания, численного вывода и символьного вывода (см. разд. 3.1), а также других операторов (см. разд. 3.2). В заключение описываются основные средства управления процессом вычислений в Mathcad (см. разд. 3.3) и уверится несколько слов о том, каким образом происходит выдача сообщений об ошибках при вычислениях (см. разд. 3.4).
3.1. Переменные и функции
Основные инструменты математика — это операции с переменными величинами и функциями. В Mathcad переменные, операторы и функции реализованы в интуитивной форме, т. е. выражения в редакторе вводятся и вычисляются так, как они были бы написаны на листе бумаги. Порядок вычислений в документе Mathcad также очевиден: математические выражения и действия воспринимаются процессором слева направо и сверху вниз.
Перечислим основные действия, которые пользователь может совершать для определения и вывода переменных и функций.
3.1.1. Определение переменных
Чтобы определить переменную, достаточно ввести ее имя и присвоить ей неко-topoe значение, для чего служит оператор присваивания (см. следующий раздел).
3.1.2. Присваивание переменным значений
Чтобы присвоить переменной новое значение, например переменную х сделать равной 10:
Рис. 3.1. Результат ввода оператора присваивания
Результат перечисленных действий показан в листинге 3.1.
Кнопка оператора присваивания для удобства помещена сразу на две панели Calculator (Калькулятор) и Evaluation (Выражения).
Листинг 3.1. Присваивание переменной численного значения
Ввести новое значение переменной возможно как в виде числа, так и в виде математического выражения, содержащего другие переменные (листинг 3.2) и функции (см. следующие разделы), а также в виде строкового выражения (листинг 3.3.). В последнем случае будет создана переменная s не численного, а строкового типа.
Листинг 3.2. Присваивание переменной вычисленного значения выражения
Листинг 3.3. Присваивание переменной строкового значения
Если переменная с некоторым именем создается в данном документе впервые, то для ввода оператора присваивания, вместо двоеточия, допускается использовать символ равенства » :=» на символ равенства. Это делается для конкретного оператора присваивания с помощью пункта View Definition As контекстного меню (рис. 3.2) либо для всего документа с помощью команды Tools / Worksheet Options / Display)(Сервис / Опции документа / Отображение) (см. разд. «Управление отображением некоторых операторов»гл. 2).
Рис. 3.2. Различное отображение оператора присваивания
Помимо разобранного оператора присваивания (а он применяется наиболее часто), существует также возможность глобального присваивания.
- f — имя функции;
- х. — список переменных.
Легче всего ввести написание функции в документ при помощи клавиатуры.
В Mathcad формально можно разделить функции на два типа:
- встроенные функции;
- функции, определенные пользователем.
Применение функций обоих типов в расчетах совершенно одинаково, с тем исключением, что любую встроенную функцию можно сразу использовать в любом месте документа (о вставке встроенных функций в документ читайте в разд. «Знакомство с Mathcad» гл. 1), а пользовательскую функцию необходимо предварительно определить в документе до момента вычисления ее значения.
3.1.4. Определение функции пользователя
Для того чтобы определить функцию пользователя, например f(x,y) = x2-cos (x+y):
- Введите в желаемом месте документа имя функции (f).
- Введите левую скобку «(«, имена переменных через запятую х, у и правую скобку «)». При вводе левой скобки и запятой автоматически будут появляться соответствующие местозаполнители.
- Введите оператор присваивания с панели инструментов или нажатием клавиши .
- Введите в появившийся местозаполнитель выражение, определяющее функцию x 2 -cos(x+y), пользуясь клавиатурой или панелями инструментов.
Результат ввода иллюстрируется листингом 3.4.
Листинг 3.4. Определение функции пользователя
Все переменные, присутствующие справа в выражении определения функции, либо должны входить в список аргументов функции (в скобках, слева после имени функции), либо должны быть определены ранее. В противном случае будет выведено сообщение об ошибке, причем имя неопределенной переменной будет выделено красным цветом (рис. 3.3).
Рис. 3.3. Сообщение об ошибке («Эта переменная или функция ранее не определена»)
3.1.5. Вывод значений переменных и функций
Чтобы вычислить в документе некоторое математическое выражение, которое может состоять из переменных, операторов и функций (встроенных и определенных пользователем):
- Введите это выражение, например х у.
- Нажмите клавишу .
В результате справа от введенного знака равенства появится вычисленное значение выражения (листинг 3.5, предпоследняя строка). Нельзя изменять содержимое выражения справа от знака равенства, поскольку оно есть результат работы вычислительного процессора Mathcad, совершенно скрытой от глаз пользователя. Подчас (когда выражение содержит функции, реализующие разные численные методы, часто в сложных комбинациях) алгоритмы расчета бывают очень затейливыми и занимают существенное время. О том, что некоторое выражение документа находится в стадии вычисления, свидетельствует обрамляющая его зеленая рамка и невозможность предпринять какое-либо действие с программой Mathcad.
Листинг 3.5. Вычисление выражения.
Заметьте, что, перед тем как вычислить значение математического выражения, Вы обязаны определить значение каждой входящей в него переменной (две первых строки листинга 3.5). Вычисляемое выражение может содержать любое количество переменных, операторов и функций. Вывод текущего значения той или иной переменной приведен в последней строке листинга 3.5, а значения функции — в листингах 3.6 и 3.7.
Листинг 3.6. Вывод значения функции.
Листинг 3.7. Вывод значения функции (продолжение листинга 3.6)
При определении функций пользователя через различные переменные важную роль играет присутствие имен этих переменных в списке аргументов или определение их выше в тексте документа. Например, результаты вывода значения функции f (х,у) в листинге 3.6 остались бы точно такими же, если до или после определения функции присвоить переменным х и у некоторые значения. Так происходит потому, что значения аргумента заданы непосредственно в строке вычисления функции. Если же определить функцию f (х) так, как это сделано в листинге 3 8, то она будет зависеть от значения переменной у в момент определения f (х) (т. е. у=5), поскольку у не входит в список аргументов f (х). Фактически f (x) =x 2 -cos (х+5). Даже если где-нибудь ниже в программе пользователь переопределит значение у, Mathcad все равно будет помнить функцию f (х) как выражение x2-cos (х+5) (листинг 3.9).
Листинг 3.8. К определению функций пользователя
Листинг 3.9. К определению функций пользователя (продолжение листинга 3.8)
Внимательнее относитесь к обязательному требованию совпадения количества аргументов при определении и выводе значения функций. Сравните, например, листинги 3.6 и 3.8, в которых, несмотря на одинаковое выражение в правой части определения функции f, создаются две существенно разные функции f (х, у) и f (х), соответственно
Вводя знак равенства для вычисления математических выражений в Math-cad, Вы фактически применяете оператор вычисления или численного вывода (numerical evaluation). Его можно ввести также нажатием кнопки со знаком равенства на одной из панелей инструментов: Calculator (Калькулятор) или Evaluation (Выражения) (см. рис. 3.1). Оператор численного вывода означает, что все вычисления проводятся с числами, а различные встроенные алгоритмы реализуются соответствующими численными методами.
3.1.6. Символьный вывод
Наряду с численным выводом, в Mathcad имеется возможность символьного, или аналитического, вычисления значения выражения. Для символьных вычислений имеется ряд специальных средств, которые будут детально рассмотрены позднее (см. гл. 5), самое простое из них — это оператор символьного вывода (symbolic evaluation). Он обозначается символом -» и в большинстве случаев применяется точно так же, как оператор численного вывода, однако внутреннее различие между действием этих двух операторов огромно. Если численный вывод — это в обычном смысле этого слова «запрограммированный» расчет по формулам и численным методам, скрытый от глаза пользователя, то символьный вывод — результат работы системы искусственного интеллекта, встроенной в Mathcad и называемой символьным процессором. Работа символьного процессора также невидима (и, чаще всего, даже трудно представима) пользователю и заключается в анализе самого текста математических выражений. Конечно, гораздо более узкий круг формул можно рассчитать символьно, хотя бы потому, что, вообще говоря, относительно не такая большая часть математических задач допускает аналитическое решение.
Чтобы попытаться вычислить символьно математическое выражение, например В sin(arcsin(С Х)), где В,С,Х — некоторые переменные:
- Введите это выражение: В sin(asin(С Х)).
- Введите оператор символьного вывода сочетанием клавиш +, либо нажатием соответствующей кнопки (рис. 3.4) на панели Symbolic (Символика) или Evaluation (Выражения).
Рис. 3.4. Кнопка вставки оператора символьного вывода
После этого справа от символа оператора символьного вывода появится определенное аналитически значение выражения (листинг. 3.10) либо сообщение об ошибке «No answer found» (Ответ не найден). Если символьному процессору Mathcad не удается аналитически упростить выражение, то оно будет выдано справа от знака -» в том же виде, что и слева.
Листинг 3.10. Символьный вывод выражения
Листинг 3.11. Символьный вывод выражений, которое не удалось упростить
Присмотритесь внимательнее к листингам 3.10 и 3.11: для символьного вывода не требуется предварительно определять переменные, входящие в левую часть выражения! Если же переменным были все-таки присвоены ранее некоторые значения, символьный процессор просто подставит их в упрощенную формулу и выдаст результат с учетом этих значений (см. в качестве примера два следующих листинга — 3.12 и 3.13).
Точно так же, как рассчитываются численно значения функций, можно вычислять их и с помощью символьного процессора. Сравните соответствующие результаты, которые представлены в листинге 3.12 (конечно, символьный и численный ответы равны: 9 cos(8)=-1.31). Аналогично можно «символьно выводить значения переменных. Например, присвоить некоторой переменной значение функции или сложного выражения (листинг 3.13, вторая строка) и затем вывести значение переменной в символьном виде.
Листинг 3.12. Численный и символьный вывод значения функции
Листинг 3.13. ЧислвйныЙ и символьный вывод
Как показывают приведенные примеры, преимущество символьных вычислений заключается в выдаче аналитического результата, который для математика часто является более ценным. Поэтому, исходя из специфики конкретных задач, решайте, стоит ли наряду с численными расчетами попытаться получить и символьное решение.
3.1.7. Допустимые имена переменных и функций
В заключение перечислим, какие символы можно, а какие нельзя применять в именах, которые пользователь дает переменным и функциям, и перечислим ряд ограничений на присваивание имен. Допустимые символы:
- большие и маленькие буквы — Mathcad различает регистр: так, имена х и х определяют разные переменные. Кроме того, Mathcad различает и шрифт, например имена х и х воспринимаются как разные;
- числа от 0 до 9;
- символ бесконечности (клавиши + + );
- штрих (клавиши + );
- греческие буквы — они вставляются с помощью панели Greek (Греческие символы);
- символ подчеркивания;
- символ процента;
- нижний индекс.
С осторожностью используйте нижний индекс в определении имен переменных и функций, не путая его с индексом векторной переменной. Чтобы ввести имя с нижним индексом, например, K max: введите букву «K», затем точку «.», после чего линии ввода опустятся чуть ниже, и только затем сам нижний индекс max.
Теперь рассмотрим ограничения на имена переменных и функций:
- имя не может начинаться с цифры, символа подчеркивания, штриха или процента;
- символ бесконечности должен быть только первым в имени;
- все буквы в имени должны иметь один стиль и шрифт;
- имена не могут совпадать с именами встроенных функций, констант и размерностей, например sin или TOL. Тем не менее, допускается их переопределение, но тогда одноименная встроенная функция больше не будет использоваться по первоначальному назначению;
- Mathcad не различает имен переменных и функций: если сначала определить функцию f (х), а потом переменную f, то в оставшейся части документа будет утеря* доступ к функции f (x).
В некоторых случаях желательно использовать имена переменных и функций, содержащие символы операторов Mathcad или другие символы, которые нельзя вставлять в имена непосредственно. Для этого существуют две возможности.
Во-первых, имя, составленное из любых символов и заключенное в квадратные скобки, Mathcad будет воспринимать корректно (рис. 3.5, сверху). Например, чтобы ввести имя :
- Нажмите клавиши + + — появится пара квадратных скобок с местозаполнигелем внутри.
- Введите в местозаполяитель последовательность любых символов, например a+b.
Рис. 3.5. Специальные символы в именах переменных
Во-вторых, если Вас не устраивает наличие квадратных скобок в имени, то вставить в него специальные символы можно чуть более сложным способом. Например, для ввода имени a+b:
- Введите первый символ (а), который должен быть допустимым для имен Mathcad.
- Нажмите клавиши + + для перехода в специальный «текстовый» режим редактирования.
- Введите последовательность любых символов (+).
- Еще раз нажмите клавиши + + , чтобы вернуться в обычный режим редактирования. Теперь можно продолжать ввод допустимых символов в имя (b).
Результат этих действий показан в нижней строке рис. 3.5. Если требуется, чтобы имя начиналось со специального символа (средняя строка рис. 3.5), то необходимо выполнить все пункты 1-4, вводя в начале имени произвольный допустимый символ, а по завершении ввода просто стирая его.
Каждый оператор в Mathcad обозначает некоторое математическое действие в виде символа. В полном согласии с терминологией, принятой в математике, ряд действий (например, сложение, деление, транспонирование матрицы и т. п.) реализован в Mathcad в виде встроенных операторов, а другие действия (например, sin, erf и т. п.) — в виде встроенных функций. Каждый оператор действует на одно или два числа (переменную или функцию), которые называют операндами. Если в момент вставки оператора одного или обоих операндов не хватает, то недостающие операнды будут отображены в виде местозаполнителей. Символ любого оператора в нужное место документа вводится одним из двух основных способов:
- нажатием соответствующей клавиши (или сочетания клавиш) на клавиатуре;
- нажатием указателем мыши соответствующей кнопки на одной из математических панелей инструментов.
Напомним, что большинство математических панелей содержат сгруппированные по смыслу математические операторы, а вызвать эти панели на экран можно нажатием соответствующей кнопки на панели Math (Математика).
Везде в этом разделе будем рассматривать только второй способ вставки оператора Те же, кто предпочитает использовать клавиатуру, найдут перечень горячих клавиш в приложении 2.
Выше мы рассмотрели особенности применения трех операторов: присваивания (см. разд. 3.1.2), численного (см. разд. 3.1.5) и символьного вывода (см. разд. 3.1.6). Разберем в данном разделе действие прочих операторов Mathcad и возможности определения операторов пользователя.
3.2.1. Арифметические операторы
Операторы, обозначающие основные арифметические действия, вводятся с панели Calculator (Калькулятор), показанной на рис. 3.6:
- сложение и вычитание: + — (листинг 3.14);
- умножение и деление: / + (листинг 3.15);
- факториал: ! (листинг 3.16);
- модуль числа: |х| (листинг 3.16);
- квадратный корень: (листинг 3.17); степени: (листинг 3.17);
- возведение х в степень у: х y (листинг 3.17);
- изменение приоритета: скобки (листинг 3.18);
- численный вывод: = (все листинги).
Рис. 3.6. Панель Calculator
Листинг 3.14. Операторы сложения, вычитания и отрицания
Листинг 3.15. Операторы деления и умножения
Листинг 3.16. 0ператор факториала и модуля
Листинг 3.17. Операторы извлечения корня и возведения в степень
Листинг 3.18. Оператор изменения приоритета ()
Как видно, с помощью этой панели можно ввести не только перечисленные операторы, но и их часто используемые комбинации, например, возведение экспоненты в степень, смешанное произведение и деление, а также мнимую единицу и число я. Заметим, что допускается запись оператора деления как в одну, так и в две строки, что обеспечивается наличием двух соответствующих кнопок на панели Calculator.
Напомним, что в редакторе Mathcad можно выбирать отображение оператора умножения (см. разд. «Управление отображением некоторых операторов» гл. 2). Для того чтобы поменять его:
- Щелкните правой кнопкой мыши на выражении, содержащем оператор умножения.
- Выберите первый пункт появившегося контекстного меню View Multiplication As (Представление умножения).
- В подменю выберите пункт, соответствующий стилю представления умножения: в виде обычной точки (Dot), точки с уменьшенным расстоянием от него до сомножителей (Narrow Dot), толстой точки (Large Dot), крестика (X), без символа с небольшим расстоянием между сомножителями (Thin Space), вообще вместе (No Space). Чтобы просмотреть, как будет выглядеть выражение в двух последних представлениях, нужно снять с него выделение. Чтобы вернуть представление по умолчанию, выберите в подменю контекстного меню пункт Default.
Некоторых операторов, например таких, как оператор комплексного сопряжения, на панелях инструментов нет (листинг 3.19). Его приходится вводить исключительно с клавиатуры нажатием клавиши в пределах математической области.
Листинг 3.19. Оператор комплексного сопряжения
3.2.2. Вычислительные операторы
Вычислительные операторы вставляются в документы при помощи панели инструментов Calculus (Вычисления). При нажатии любой из кнопок в документе появляется символ соответствующего математического действия, снабженный несколькими местозаполнителями. Количество и расположение местозаполнителей определяется типом оператора и в точности соответствует их общепринятой математической записи. Например, при вставке оператора суммы (рис. 3.7) необходимо задать четыре величины: переменную, по которой надо произвести суммирование, нижний и верхний пределы, а также само выражение, которое будет стоять под знаком суммы (пример заполненного оператора суммы см. ниже в листинге 3.22).
Для того чтобы вычислить неопределенный интеграл, следует заполнить два местозаполнителя: подынтегрального выражения и переменной интегрирования.
Рис. 3.7. Вставка оператора суммирования
После ввода какого-либо вычислительного оператора имеется возможность вычислить его значение либо численно, нажатием клавиши , либо символьно, с помощью оператора символьного вывода.
Перечислим основные вычислительные операторы и приведем простейшие примеры их применения:
- дифференцирование и интегрирование;
- производная (листинг 3.20);
- N-Я производная (листинг 3.20);
- определенный интеграл (листинг 3.21);
- неопределенный интеграл (листинг 3.21).
- сумма (листинг 3.22);
- произведение (листинг 3.22);
- сумма ранжированной переменной (листинг 3.23);
- произведение ранжированной переменной (листинг 3.23).
- двусторонний;
- левый;
- правый.
Листинг 3.20. Операторы вычисления производных
Листинг 3.21. Операторы интегрирования
Листинг 3.22. Операторы суммирования и вычисления произведения
Листинг 3.23. Операторы суммировани и вычисления произведения
О назначении и особенностях использования ранжированных переменных будет рассказано в следующей главе (см. разд. «Ранжированные переменные» гл. 4).
Листинг З.24. Операторы символьного вычисления пределов
В отличие от других, операторы поиска предела могут быть вычислены только символьно (см. гл. 5).
Операторы суммирования и вычисления произведения фактически являются более удобной записью операторов + и х с большим количеством операндов. А вот вычислительные операторы поиска производных и интегралов существенно отличаются от операторов умножения и сложения тем, что реализованы на основе определенных численных методов, которые в скрытой (невидимой для пользователя) форме запускаются вычислительным процессором Mathcad. При численном расчете интегралов и производных необходимо, хотя бы в общих чертах, представлять принцип работы соответствующих алгоритмов, чтобы избежать ошибок и неожиданностей при получении результатов (численным методам интегрирования и дифференцирования посвящена гл. 7).
Рис. 3.8. Поиск бесконечного ряда
Важно отметить, что имеется возможность вычислять интегралы с одним или обоими бесконечными пределами, а также в символьной форме искать значения бесконечных пределов, сумм (рядов) и произведений. Для удобства ввода кнопка с символом бесконечности помещена на ту же панель инструментов Calculus (Вычисления). Пример вставки символа бесконечности в задаче поиска бесконечного ряда приведен на рис. 3.8.
3.2.3. Логические операторы
Результатом действия логических, или булевых, операторов являются только числа 0 (если логическое выражение, записанное с их помощью, истинно) или 1 (если логическое выражение ложно). Чтобы вычислить значение логического выражения, например 1=1 (рис. 3.9):
- Вставьте с панели Boolean (Булевы операторы) соответствующий оператор =.
- В появившиеся местозаполнители вставьте операнды (две единицы).
- Нажмите клавишу , чтобы получить ответ.
Рис. 3.9. Вставка логического оператора
Получается абсурдное на первый взгляд выражение i«i=i. Однако на самом деле все правильно. Справа от оператора вывода записано логическое выражение 1*1 (обратите внимание, что логический знак равенства выглядит по-другому, нежели обычный), которое является истинным. Поэтому значение данного выражения равно 1, что и показано справа от знака равенства.
Перечислим логические операторы:
- больше (Greater Than);
- меньше (Less Than);
- больше или равно (Greater Than or Equal);
- меньше или равно (Less Than or Equal);
- равно (Equal);
- не равно (Not Equal to);
- и (And);
- или (Or);
- исключающее или (Exclusive or);
- отрицание (Not).
Операнды в логических выражениях могут быть любыми числами. Однако если оператор по смыслу применим только к 0 и 1, то любое неравное нулю число по умолчанию принимается равным 1. Но в результате все равно может получиться либо 0, либо 1. Например, ¬ (-0.33)=0.
Примеры действия логических операторов приведены в листингах 3.25 и 3.26.
Листинг 3.25. Операторы сравнения.
Листинг 3.26. Булевы операторы.
Логические операторы чрезвычайно важны при записи подлежащих решению алгебраических уравнений и неравенств в приемлемой для Mathcad форме.
3.2.4. Матричные операторы
Матричные операторы предназначены для совершения различных действий над векторами и матрицами. Поскольку большинство из них реализует численные алгоритмы, о них будет подробно рассказано в части III (см. гл. 9).
3.2.5. Операторы выражения
Почти все вычислительные операторы были рассмотрены выше (см. разд. 3.1). Они сгруппированы на панели Evaluation (Выражения).
- Оценить численно (Evaluate Numerically) (см. разд. 3.1.5)
- Вычислить символьно (Evaluate Symbolically) (см. разд. 3.1.6)
- Присваивание (Definition) (см. разд. 3.1.2)
- Глобальное присваивание (Global Definition)
Рассмотрим различие между операторами обычного присваивания и глобального присваивания (процесс его вставки в документ показан на рис. 3.10). Для того чтобы вычислить выражение, содержащее некоторую переменную или функцию, необходимо, чтобы этой переменной ранее в документе было присвоено какое-либо значение. Иначе будет выдаваться сообщение об ошибке (рис. 3.11). Однако если в любой части документа (например в самом низу) вставить оператор глобального присваивания, то переменная будет определена в любой части документа (листинг 3.27).
Листинг 3.27. Действие операторов присваивания и глобального присваивания
Рис. 3.10. Кнопка глобального присваивания на панели Evaluation
Рис. 3.11. Обычное присваивание сказывается только на нижеследующей части документа
Как видно из листинга 3.27, обычное, или локальное, присваивание переменной х действует от момента х:=10 до момента глобального присваивания х = 5. Вообще говоря, Mathcad анализирует документы на предмет присваивания переменных в два прохода: сначала распознаются все операторы глобального присваивания, и все выражения в документе сверху вниз и слева направо вычисляются в соответствии с ними, а при втором проходе в том же порядке анализируются операторы локального присваивания, и все выражения вычисляются с поправкой на них. Приведем важный пример взаимодействия глобального и локального присваивания (листинг 3.28).
Листинг 3.28. Взаимодействие глобального и локального присваивания
Обратите внимание, что, несмотря на локальное присваивание переменной x:=10 в третьей строке листинга, значение переменной у вычисляется все-таки в соответствии с глобальным значением х = 5, поскольку сама переменная y глобальным образом определена через переменную х.
Аккуратнее относитесь к определению глобальных переменных и, во избежание путаницы, старайтесь не переопределять их локально. Применяйте глобальное присваивание только для определения констант и, по возможности, избегайте случаев, когда оператор вывода предшествует оператору глобального присваивания для улучшения читаемости документов.
Точно так же как Вы глобально присваиваете значение переменной, допускается глобально определять функции (листинг 3.29).
Листинг 3.29. Глобальное определение функции пользователя
Оператор глобального присваивания можно отображать не только в виде тождественного равенства, но и как обычный знак равенства. Для этого вызовите на операторе контекстное меню и в подменю пункта View Definition As выберите пункт Equal (Равенство).
3.2.6. Создание оператора пользователя
Запросы взыскательного пользователя могут отнюдь не исчерпываться набором встроенных операторов Mathcad. Для вставки в документы заранее созданных операторов пользователя применяется панель Evaluation (Выражения).
Выбор имени оператора
Оператор пользователя может иметь абсолютно любое имя (см. ранее раздел «Имена, содержащие операторы и специальные символы» этой главы). Однако, исходя из смысла операторов, логично давать им имена в виде символов. Это удобно делать с помощью коллекции символов, находящейся в справочной информации Mathcad. Выберите в верхнем меню Help / QuickSheets (Справка / Быстрые шпаргалки) и войдите затем в самый последний раздел Extra Math Symbols (Дополнительные символы) открывшегося содержания Шпаргалок. Там Вы увидите целую коллекцию символов, любой из которых можно просто перетащить указателем мыши в нужное место документа.
Присваивать оператору некоторое действие следует точно так же, как функции пользователя.
Создание бинарного оператора
Чтобы создать бинарный оператор, например реализующий действие х у 2:
- Введите имя оператора, например, bin.
- Наберите знак скобки , затем список из двух операндов через запятую, , , , затем закрывающую скобку .
- Введите оператор присваивания .
- Введите выражение, зависящее от операндов, действие которого необходимо присвоить оператору (х-у 2).
Создание унарного оператора
Унарный оператор создается точно так же, только вместо двух операндов, отделенных запятой, Вам следует ввести лишь один операнд. Например, чтобы создать оператор с именем %, реализующий перевод доли числа в проценты и сводящийся к умножению его на 100 (листинг 3.30):
- Введите имя оператора. Для этого нажмите клавиши , + + + , , затем снова + + , потом сотрите в имени букву «а».
- После знака % наберите скобку «(«, далее «х11, затем еще одну скобку «)».
- .
- Введите выражение х100.
Листинг 3.30. Создание унарного оператора пользователя
Использование бинарного оператора
Возможны два вида вставки пользовательского бинарного оператора в документ, отличающиеся только отображением в документе. Чтобы вставить оператор в форме графа (или дерева):
- Нажмите кнопку Tree Operator (Оператор дерево) на панели Evaluation (Выражения) (рис. 3.12, справа).
- В появившиеся местозаполнители введите имя оператора (на вершине графа) и значения операндов (в ответвления дерева).
- Введите оператор присваивания, нажав клавишу .
Результат действия оператора показан на рис. 3.12, внизу слева.
Кроме древовидной формы оператора, допускается использование его в виде последовательности «операнд- имя оператора- другой операнд» (рис. 3.12, вторая строка слева). Чтобы ввести такую форму оператора, следует нажать соседнюю кнопку Infix Operator (Оператор внутри) с изображением xfy.
Рис. 3.12. Применение пользовательского бинарного оператора
Использование унарного оператора
Вставка унарного оператора совершенно аналогична, только вместо двух операндов требуется ввести один (рис. 3.13). Унарный оператор вставляется нажатием кнопки Prefix Operator (Оператор перед) на панели Evaluation (Выражения) либо кнопки Postfix Operator (Оператор после). Первый путь проиллюстрирован правой частью рис. 3.13 (в момент вставки) и результатом действия оператора (слева), а результат вставки оператора по второму пути — левой нижней строкой того же рисунка
Рис. 3.13. Применение пользовательского унарного оператора
3.3. Управление вычислениями
Документ Mathcad — это в полном смысле этого слова компьютерная программа, а сама система Mathcad — настоящая система программирования, правда ориентированная на математика, а не на профессионального программиста. Большинство других сред программирования (знакомых читателю по реализации таких языков, как Си, Фортран, Бейсик и т. п.) разделяют редактирование кода программ и их выполнение, которое можно вызвать предназначенными для этого командами. В Mathcad и код программы, и результат их выполнения объединены в одном документе. Тем не менее, функции редактирования формул и их расчеты выполняются раздельно, и пользователь имеет возможность управлять всеми важнейшими опциями вычислений.
3.3.1. Режимы вычислений
Все примеры, которые мы рассматриваем в этой книге, неявно предполагают, что включен автоматический режим вычислений. Он включается по умолчанию при создании пустого документа, поэтому если вводятся выражения, содержащие операторы вывода, они вычисляются немедленно. Вообще говоря, имеется два режима вычислений:
- автоматический режим (automatic mode) — все вычисления проводятся автоматически по мере ввода формул;
- ручной режим (manual mode) — начало вычислений каждой формулы или всего документа производится пользователем.
Режим вычислений можно выбрать с помощью команды Tools / Calculate / Automatic Calculation (Сервис / Пересчитать / Считать автоматически), как показано на рис. 3.14. Если в этой строке меню установлен флажок проверки, значит, включен автоматический режим, если флажка нет, то редактируется документ в ручном режиме вычислений. Чтобы сменить режим, просто выберите этот пункт меню (например, нажав кнопку мыши в ситуации, показанной на рис 3.14, включите ручной режим).
Режим вычислений устанавливается независимо для каждого документа Одновременно могут быть открыты несколько документов, вычисляемых в различных режимах
Преимущества и недостатки каждого режима очевидны. С одной стороны, автоматические вычисления упрощают работу с документом, поскольку результаты расчетов появляются в реальном времени, и пользователь имеет возможность анализировать их сразу. С другой стороны, если вычисления сложные, то они могут отнимать много времени (что особенно заметно на компьютерах с не слишком мощным процессором и небольшим объемом оперативной памяти). Поэтому зачастую, чтобы продолжить редактирование документа, требуется довольно длительное ожидание завершения расчетов В частности, если поменять какое-либо выражение в начале большого документа, которое влияет на последующие вычисления, то все они пересчитываются заново. В таких случаях часто удобнее редактировать текст в ручном режиме, а вычисления включать по мере необходимости.
Рис. 3.14. Выбор режима вычислений
3.3.2. Прерывание вычислений
Mathcad осуществляет вычисления документа, как это принято в большинстве сред программирования: сверху вниз и слева направо. Пока очередное выражение находится в процессе расчета (вычислительным или символьным процессором), оно выделяется рамкой зеленого цвета (рис. 3.15), а любые действия пользователя по дальнейшему редактированию документа блокируются. Если у вас не слишком быстрый компьютер, а формулы достаточно сложные, то можно наблюдать, как зеленая рамка перескакивает с одного выражения на другое
Чтобы прервать затянувшийся процесс вычислений, нажмите клавишу Появится диалоговое окно, показанное на рис. 3.16, в котором нужно подтвердить прерывание вычислений (ОК). В этом случае выражения, которые Mathcad не успел вычислить, будут помечены в документы красным цветом. Прерванные вычисления возобновляются нажатием клавиши или командой Tools / Calculate / Calculate Now (Математика / Пересчитать / Пересчитать)
Рис. 3.15. Процесс вычисления выражения
Рис. 3.16. Диалоговое окно прерывания вычислений
3.3.3. Вычисления в ручном режиме
Если флажок в строке команды Tools / Calculate / Automatic Calculation (Сервис / Пересчитать / Считать автоматически) снят, пользователь должен запускать вычисления самостоятельно
- Для того чтобы вычислить все формулы во всем документе, выполните команду Tools / Calculate / Calculate Worksheet (Математика / Пересчитать / Пересчитать все).
- Для вычисления всех формул в видимой части документа выберите пункт Tools / Calculate / Calculate Now (Сервис / Пересчитать / Пересчитать) либо нажмите клавишу , либо щелкните на кнопке с изображением знака равенства (Calculate) на стандартной панели инструментов
- Прервать вычисления можно обычным образом, нажав клавишу .
Управлять размером видимой части документа можно при помощи изменения масштаба отображения документа
При редактировании текста в ручном режиме не выполняются ни вычисления, ни построение графиков, а соответствующие места в выражениях формально отмечаются местозаполнителями (рис. 3.17.)
Рис. 3.17. Чтобы запустить вычисления в ручном режиме, нажмите кнопку Calculate
3.3.4. Отключение вычисления отдельных формул
Mathcad позволяет отключить вычисление какой-либо формулы. При этом она не будет влиять на последующие вычисления. Чтобы не вычислять определенную формулу в документе:
- Щелкните правой кнопкой мыши на формуле.
- Выберите в контекстном меню пункт Disable Evaluations (Выключить вычисления), как показано на рис. 3.18.
Эквивалентный способ выключения вычисления отдельной формулы заключается в вызове диалогового окна Properties (Свойства) через одноименный пункт контекстного меню (см. рис. 3.18) или главного меню Format (Формат). В диалоге Properties следует перейти на вкладку Calculation (Вычисления) и установить там флажок Disable Evaluations (Выключить вычисления).
Результат выключения формулы из процесса вычислений проиллюстрирован листингом 3.31. На нем выключен второй из операторов присваивания, о чем можно судить по наличию черного квадрата сразу за формулой. Соответственно, в последней строке выведенное значение переменной х «не чувствует» выключенного присваивания и остается равным 3.
Листинг 3.31. Вычисление второго оператора присваивания выключено
Рис. 3.18. Отключение вычисления формулы с помощью контекстного меню
3.3.5. Оптимизация вычислений
Отличительная черта новых версий Mathcad — улучшенные возможности ускорения численных вычислений за счет применения элементов символьной математики. Непосредственно перед численным расчетом Mathcad автематически пытается упростить выражение, используя символьный процессор. Это называется оптимизацией. За счет того что от версии к версии качество работы символьного процессора улучшается, символьное преобразование зачастую существенно ускоряет расчеты. Режим оптимизации включается либо в документе целиком, либо для отдельных формул.
Чтобы включить или отключить режим оптимизации всех выражений в активном документе, выберите команду Tools / Optimize / Worksheet (Сервис / Оптимизация / Документ), как показано на рис. 3.19. Содержание документа, изображенного на этом же рисунке, помогает понять математический смысл режима оптимизации: для ускорения вычисления нижнего (определенного) интеграла выгодно использовать его аналитическое решение, определенное символьным процессором.
Чтобы изменить режим оптимизации для отдельной формулы, не меняя выбранного режима для остальных выражений документа, выделите эту формулу линиями ввода и выберите в верхнем меню Tools / Optimize / Equation (Сервис / Оптимизация / Уравнение).
Рис. 3.19. Режим оптимизации вычислений
3.3.6. Диалоговое окно Worksheet Options
Наравне с изложенными способами установки режимов вычислений, их также удобно устанавливать для всего документа на вкладке Calculations (Вычисления) диалогового окна Worksheet Options (Опции документа), вызываемого с помощью команды Tools / Worksheet Options (Сервис / Опции документа). Три флажка задают включение соответствующего режима вычислений (рис. 3.20).
- Recalculate automatically (Пересчитать автоматически) — включение режима автоматических вычислений.
- Use strict singularity checking for matrices (Использовать проверку матриц на сингулярность) — опция, появившаяся в версии Mathcad 2001, которая важна при некоторых операциях с матрицами. Она означает проведение дополнительной проверки на сингулярность матрицы перед использованием численных алгоритмов, что позволяет, во избежание неправильного применения численного метода, выдать заранее сообщение об ошибке, если матрица сингулярная.
- Optimize expressions before calculating (Оптимизировать выражения перед вычислением) — включение режима оптимизации.
- Use exact equality for Boolean comparisons (Использовать точное равенство для логического сравнения) — когда флажок выбран, применяется жесткий критерий точного равенства чисел (точнее, числа при сравнении считаются равными, если отличаются по модулю менее чем на 10 -307). Если флажок снят, используется более мягкий критерий (относительное различие чисел по модулю менее чем на 10 -12).
Рис. 3.20. Управление режимом вычислений в диалоговом окне Worksheet Options
Помимо флажков проверки, имеется также пара переключателей, которая позволяет реализовать новый режим ускоренных вычислений (higher speed calculation). Он включается выбором переключателя Higher speed calculation (Ускоренные вычисления), изображенного на рис. 3.20. Чтобы отключить режим ускоренных вычислений, выберите переключатель Backward compatibility (Обратная совместимость). В этом случае вычисления будут проводиться без дополнительной оптимизации по скорости, в точности так же, как в предыдущих версиях (Matvcsd 2000 и ниже) Необходимость таких расчетов может возникнуть, если вдруг Вы столкнулись с сообщениями об ошибках в документах, созданных в предыдущих версиях Mathcad и корректно в них работающих.
3.4. Сообщения об ошибках
Когда процессор Mathcad по тем или иным причинам не может вычислить выражение, он вместо ответа выдает сообщение об ошибке (рис. 3.21). Если курсор находится вне формулы с ошибкой, то в ней имя функции или переменной, которая вызвала ошибку, отмечается красным цветом (сверху на рис. 3.21). При щелчке на такой формуле под ней появляется текстовое сообщение о типе ошибки, обрамленное черным прямоугольником (рис. 3.21, снизу).
Рис. 3.21. Сообщение об ошибке
Если некоторые выражения вызывают ошибку, они просто игнорируются, а следующие выражения в документе по-прежнему вычисляются. Конечно, если формулы, вызвавшие ошибку, влияют на значения нижеследующих формул, то они будут также интерпретированы как ошибочные. Поэтому, встречая в документе сообщения об ошибках, найдите сначала самое первое из них. Часто ее устранение позволяет избавиться и от последующих ошибок.
Как бы хорошо вы ни овладели системой Mathcad, сообщения об ошибках все равно будут появляться в документах. Они могут быть связаны как с орфографическими ошибками, так и с более серьезными внутренними причинами, требующими знания численных алгоритмов расчетов. Искусство математика во многом состоит в умении анализировать ошибочные ситуации и находить правильный выход из них.
Возможности Mathcad можно в полной мере оценить только при использовании переменных и функций.
Два знака равенства
В выражениях Вам необходимо использовать числа (константы), переменные, операторы и знаки равенства. В повседневной жизни мы используем знак равенства = для различных операций. Mathcad, однако, различает эти операции. Наиболее важные из них:
- определение (присвоить значение) – вводится через двоеточие [:]
- вычисление – вводится через знак равенства [=]
Оператор определения не менее важен, чем оператор вычисления. Значение выражения y можно отобразить только после присвоения ему какого-либо значения. x и y здесь являются переменными .
Введите следующие выражения:
Эти два знака равенства принципиально различны, поэтому их не следует путать.
Поместите курсор перед числом 4 в первом выражении:
Удалите число 4 с помощью клавиши и введите 5. Щелкните по пустой области и убедитесь, что результат третьего выражения изменился на 25:
Попробуйте удалить число 25. Вы увидите, что при первом нажатии число станет красным, а при повторном нажатии удалится 25 и знак равенства:
Использование переменных
Введите следующие выражения:
Попробуйте изменить значение x на 100, 0.5, -4 и 0:
Первые два случая дадут в результате число. При -4 получится мнимое число. Да, Mathcadможет работать и с такими числами. При нуле программа выдаст ошибку, а результат будет обведен красным. Если Вы щелкните по неправильному выражению, то получите описание, что может быть не так:
Теперь о том, какие имена можно и нельзя использовать для переменных. Есть несколько правил: имя переменной не может начинаться с цифры и в имени переменной нельзя использовать пробелы и знаки операторов. Имена переменных могут начинаться:
- с любой строчной или прописной буквы
- другие символы, если они не являются операторами
- символы с вкладки Математика –> Операторы и символы –> Символы
- символы из Таблицы символов Windows
Вот несколько примеров:
Переменные можно использовать, только если они были определены ранее. «Ранее» означает, что объявление переменной должно располагать выше или левее выражения, где она используется. Если переменная не объявлена, появится сообщение об ошибке:
Подстрочные индексы
В Mathcad есть два различных вида подстрочных индекса для переменных:
- Описательный подстрочный индекс.
- Индекс массива (матрицы).
Чтобы набрать описательный подстрочный индекс, введите имя переменной, нажмите и наберите подстрочный индекс:
Переменная с описательным подстрочным индексом – это обычная переменная, со своим именем. Индекс массива существенно отличается от него. Этот индекс можно ввести, нажав открывающую квадратную скобку [ после имени переменной. У переменной может быть один или два индекса массива:
Индекс массива должен быть числом. При этом не следует путать виды подстрочных индексов, т.к. они выглядят практически идентично:
Разница видна при щелчке мышью по выражению:
У переменной может быть сразу описательный индекс и индекс массива. Сначала всегда идет описательный индекс:
Функции
Переменные можно использовать, только если они были определены ранее. Однако есть одно важное исключение – определение функции. Можно определить собственную функцию, как на примере ниже:
Переменная a является локальной для функции. Она не определена за пределами функции:
Если Вы определили a до определения функции, значение a не будет изменено в процессе вычисления значения функции.
Внимание: если Вы дали переменной такое же имя, как и функции, Вы больше не сможете использовать эту функцию. У переменной и функции должны быть разные имена:
Этой проблемы можно избежать, задав для переменной и функции разные обозначения. Об этом мы поговорим в уроке 10 «Обозначения и единицы измерения».
Функции могут содержать две и более переменной:
Здесь значения переменных x и y также не изменяются при вычислении функции.
Встроенные функции
В Mathcad есть большое число встроенных функций. Зайдите на вкладку Функции:
Список всех функций можно увидеть, щелкнув по кнопке Все функции.
Заметьте, что тригонометрические функции принимаю в качестве аргумента угол в радианах, а не в градусах. Для использования градусов используйте символ с вкладки Математика –> Операторы и символы –> Символы:
Математика в тексте
В текст можно вставить математическую область. Таким образом, можно использовать над- и подстрочные символы в тексте. Для этого при редактировании текстовой области нажмите кнопку Математика с вкладки Математика –> Области:
Резюме
- В Mathcadесть два различных знака равенства: определить:= и вычислить =.
- Имя переменной обычно начинается с буквы; цифры нельзя использовать в начале переменной. Также можно использовать символы с клавиатуры, с панели Математика –> Операторы и символы –> Символы, с Таблицы символов Windows.
- Чтобы определить переменную и задать ей значение:
- щелкните мышью на пустую область;
- введите имя переменной;
- нажмите [:] для ввода оператора определения;
- введите значение, которое Вы хотите присвоить.
- Чтобы дать переменной описательный подстрочный индекс:
- нажмите ;
- введите подстрочный индекс.
- Чтобы дать переменной индекс массива:
- щелкните мышью в конце имени переменной;
- нажмите открывающую квадратную скобку [;
- введите число – подстрочный индекс.
- Переменную можно использовать ниже или правее места, где она определена.
- Имя функции следует набирать по тем же правилам, что и имя переменной, но ввод имени функции заканчивается вводом [(]. В скобках содержатся аргументы функции.
- Переменные в функциях – локальные, т.е. они определены только при использовании функции.
- Математическую область можно встроить в текст. Эту возможность следует использовать, если необходимо вставить над- и подстрочные символы в текст.
MathCad является мощной системой для работы с формулами, числами, текстами и графиками и предоставляет пользователю возможности электронной таблицы и интерфейс WYSIWYG текстового процессора. Ввод уравнений в MathCad полностью совпадает с привычной типографской математической записью.
Как и в электронных таблицах, любое изменение содержимого рабочего документа вызывает обновление всех зависимых результатов и перерисовку графиков. MathCad позволяет легко читать данные из файлов и подвергать их любой математической обработке: от сложения до вычисления интегралов и производных, обращения матриц и т.д.
С помощью формул MathCad можно решить почти любую математическую задачу аналитически (символьно) либо численно. Объединяя в одном документе текст, графику и математические выкладки, MathCad облегчает понимание самых сложных вычислений.
Ниже приведен краткий список основных характеристик MathCad.
Свободная форма записи, подобная классной доске;
Возможность комбинирования текста, математических выкладок, графиков и рисунков в любом месте документа;
Вырезка и вставка уравнений, текста, графики;
Контекстная интерактивная система справок.
Точность представления чисел — 15 верных десятичных цифр;
Двоичные, восьмеричные, десятичные, шестнадцатеричные числа;
Основные встроенные алгоритмы:
решения систем уравнений и неравенств;
работы с комплексными числами, переменными, функциями;
вычисления сумм, произведений, производных, интегралов;
интерполяции и аппроксимации (линейная, кубическими сплайнами);
быстрых преобразований Фурье;
решения дифференциальных уравнений;
работы с матрицами.
Основные встроенные функции:
теории чисел и комбинаторика;
регрессии и сглаживания;
Символьное дифференцирование и интегрирование;
Обращение, транспонирование матриц;
Разложение выражений на множители;
Многообразие типов графиков (декартовы, полярные координаты; построение поверхностей, линий уровня; картины векторных полей; гистограммы; точечные графики);
Оси графиков могут иметь линейный или логарифмический масштаб;
Возможность выбора типа, толщины и цвета линии, используемой для построения графика;
Построение графиков поверхностей в трех измерениях с различными ракурсами просмотра и в разных масштабах.
ХАРАКТЕРИСТИКА ТЕКСТА И РАБОЧЕГО ДОКУМЕНТА
Размещение текста в любом месте рабочего документа;
Возможность использования шрифтов различных стилей в любой текстовой области;
1.2 Отличия MathCad 2000 от предыдущих версий
Кардинально переработанный и приближенный к интерфейсу MS Office пользовательский интерфейс;
Возможность выделения частей математических выражений буксировкой мышью;
Быстрое построение (QvickPlot) двумерных и трехмерных графиков;
Новая палитра символьной математики с расширенными операторами;
Более удобный и наглядный синтаксис символьных операций;
Новые операторы программирования on error, continue, return;
Возможность применения в программах операторов символьных операций;
Новый тип данных – строковые;
Появление оперативного центра ресурсов (Resource Center) вместо быстрых “шпаргалок” QuiekSheet;
Около 50 новых математических функций, из которых следует особо отметить функции нахождения максимумов и минимумов maximize, minimize, а также функцию odesolve решения дифференциальных уравнений;
улучшенный блок решения систем нелинейных уравнений (теперь их число может достигать 200);
Возможность выбора численного метода решения некоторых задач (например, численного интегрирования);
Улучшенные средства форматирования текста;
Функции редактирования Find и Replace (найти и заменить);
Возможность записи документов в формате HTML;
Существенно улучшенные средства для работы с трехмерными графиками.
Все это дает пользователю новые возможности и новые удобства в работе с системой MathCad, подтверждая её репутацию как одной из самых массовых и удобных в работе математических систем.
Определение переменных в Mathcad
Чтобы определить переменную, достаточно ввести её имя и присвоить ей некоторое значение, для чего служит оператор присваивания.
1. Введите в желаемом месте документа имя переменной.
2. Введите оператор присваивания с помощью клавиши или нажатием соответствующей кнопки Definition (Присваивание) на панели инструментов Calculator (Арифметика) или Evaluation (Выражения).
3. Введите в появившийся фрейм требуемое значение переменной.
Кнопка оператора присваивания для удобства помещена сразу на две панели Calculator и Evaluation .
Ввести новое значение переменной возможно как в виде числа, так и в виде математического выражения, содержащего другие переменные и функции, а также в виде строкового выражения (листинг 3.1). В последнем случае будет создана переменная s не численного, а строкового типа.
Функции в Mathcad записываются в обычной для математика форме, например,
f (x )=sin (x ),
где f (х ) — функция;
f — имя функции;
х — список переменных.
Легче всего ввести написание функции в документ при помощи клавиатуры.
В Mathcad формально можно разделить функции на два типа˸
- встроенные функции;
- функции, определенные пользователем.
Применение функций обоих типов в расчетах совершенно одинаково, с тем исключением, что любую встроенную функцию можно сразу использовать в любом месте документа, а пользовательскую функцию необходимо предварительно определить в документе до момента вычисления её значения.
Определение переменных в Mathcad — понятие и виды. Классификация и особенности категории «Определение переменных в Mathcad» 2015, 2017-2018.
Текстовую область можно разместить в любом незанятом месте документа Mathcad. Чтобы до начала ввода указать программе, что требуется создать не формульный, а текстовый регион, достаточно, перед тем как ввести первый символ, нажать клавишу » (двойная кавычка). В результате на. .
Для выполнения программы-функции необходимо обратиться к имени программы-функции с указанием списка фактических параметров (если в описании программы присутствует список формальных параметров), т. е. (список фактических параметров) Фактические. .
Для набора выражения используются клавиатура и панели инструментов, которые доступны с помощью меню ПросмотрПанели. Например, для расчёта выражения необходимо набрать 1/, затем найти знак корня в панели «Калькулятор». В знаменателе выражения появится шаблон который. .
Основными инструментами работы в Mathcad являются математические выражения, переменные и функции. Нередко записать формулу, использующую ту или иную внутреннюю логику (например, возвращение различных значений в зависимости от условий), в одну строку не удается. Назначение. .
Для проведения измерений осциллограф нужно настроить, для чего следует задать: расположение осей, по которым откладывается сигнал; нужный масштаб развертки по осям; смещение начала координат по осям, режим работы по входу: закрытый или открытый; режим. .
Для написания программ в среде MathCad существует специальная панель Programmіng (Программирование) (рис.16, а), она относится к панели Math (Математические) (рис.16, б). Язык программирования MathCad имеет предельно малое количество операторов (рис. 16, а). Чтобы написать программу. [читать подробнее] .
Известно, что экспериментальные данные, как правило, задаются дискретно в виде массива данных из двух пар чисел (хі, уі). В связи с этим возникает задача аппроксимации дискретных данных непрерывной функцией f(x). В MathCad для обработки экспериментальных данных существуют. .
MathCad 7.0 Professional – универсальный инструмент для работы с формулами, графиками и текстами. Он обладает мощными вычислительными функциями и возможностью аналитических преобразований.
1. Не создавайте несколько одинаковых тем, ибо модератор может расценить их, как спам и удалить все.
2. Для решения задач по GPSS есть отдельная тема. Все задачи по GPSS опубликовывать в этой теме! Перед опубликовыванием вашей задачи просмотрите всю тему, возможно вы сразу найдете решение.
3. Давайте вашим темам ОСМЫСЛЕННЫЕ названия, а также указывайте язык программирования. Пример: [Pascal]:Работа с файлами и записями.
4. Использования тега CODE обязательно при публикации текста программы.Темы, оформленные с явным игнорированием правил и отсутствием смысла, будут закрыты/удалены!
Вам помогли? Напишите об этом здесь (в портфолио фрилансера)Фрилансерам:
5. Демпинг цен запрещен (даже если Вы готовы работать бесплатно). Цены обсуждаются в приватном общении. Если вы готовы рещить задачу бесплатно, просто решите ее быстрее, чем возникнет предложение сделать это за деньги.
6. Пользователям, входящим в группу Newbie, запрещается предлагать свои услуги (завуалированно в т.ч.)
7. В посте с предложением выполнить работу, обязательно указывать ссылку на свое портфолио в Отзывы, Благодарности, Портфолио Это правило работает и в том случае, если вы выполняете работу бесплатно.
8. Реклама (даже завуалированная) своих фриланских сайтов запрещенаThis variable is undefined mathcad что делать
Пример 2.2. Определение переменной через значение функции
Чтобы присвоить переменной значение матрицы или вектора, последние должны быть просто введены в правый маркер оператора «:-*. О том, как это сделать, мы поговорим в гл. 3. К определениям переменной данного типа можно также отнести и задание вектора значений с помощью оператора ранжированной переменной
Пример 2.3. Присваивание переменной матричного значения
И, Наконец, переменная может быть определена как строка. При этом ее значение обязательно должно быть взято в кавычки.
Пример 2.4. Определение переменной как строки
Значение переменной в Mathcad можно и переопределить: для этого операцию нового присваивания нужно провести правее или ниже старого присваивания.
Человека, впервые столкнувшегося с выполнением расчетов с помощью компьютера, вид оператора Гфисваквания может несколько смутить. Это связано с тем, что в традиционном математическом синтаксисе функции, которые он выполняет, возложены на обычный знак «—*. Ситуация эта, вообще говоря, не совсем характерна для системы Macbcad, разработчики которой стремились максимально близко следовать общепринятым традициям оформлений «бумажной» математики, и связана она с попыткой найти компромисс между этими традициями и нормами программирования. Почему же нельзя использовать один оператор и для присваивания, и для вывода значения, и для указания равенства двух объектив данных или выражений? Дело в том, что программа лишена лотки — поэтому понять из контекста, какие функции в каждом конкретном случае выполнял бы оператор «=», она не смогла бы. По причине этого для каждой операции, которая на бумаге обозначается обычным *—*, в Mathcad имеется индивидуальный оператор. Знак же довольно традицнонен: он является оператором присваивания, например, в языке программирования Pascal. Однако в том случае, если вам нужно подготовить отчет или традиционный вид оператора присваивания для вас более удобен, тип его отображения можно изменить. Сделать это можно двумя способами.
Если вы хотите изменить вид оператора в конкретной формуле, то выполните по нему щелчок правой кнопкой мыши. При этом откроется контекстное меню формулы, в котором следует выбрать всплывающее меню View Definition As
В том случае, если все присваивания В документе должны быть отображены с помощью простого равенства, выполните команду Tools ► Worksheet Options ► Display (Инструменты ► Параметры документа ► Отображение). Здесь в списке Definition (Определение) выберите строку Equal (Равенство). При этом вы измените принятые поумолча-
нию установки документа, и все вводимые в дальнейшем определения будут отображаться как
Кстати, при выделении формулы, оператор присваивания в которой представлен в виде простого равенства, отобразится именно определенная по умолчанию его стандартная форма. Эта особенность необходима для того, чтобы существовала возможность отличить оператор присваивания от оператора мобильного определения, логического равенства или численного вывода, которые могут принимать ту же форму.
Присвоить переменной значение в виде какого-то буквенного выражения можно только в том случае, если все символы или их сочетания, которые в нем используются, определены выше как конкретные числа, матрицы или строки (или же являются системными переменными). Иначе неопределенный символ будет выделен красным цветом и система выдаст сообщение об ошибке: This variable is undefined (Эта переменная не определена).
Функции в Mathcad делятся на две группы:
Техника использования функций обоих типов абсолютно идентична, а вот задание отличается принципиально.
Задание функций пользователя
Счгобенности определения функций пользователя (проще говоря,функций произвольного вила) в Mathcad полностью совпадают с принятыми в математике правилами. Для этого необходимо выполнить следующую последовательность действий.
1.Введите имя функции. В общем случае оно может быть совершенно произвольным, хотя определенные ограничения все-таки имеются. О них мы поговорим немного позже.
2.После имени функции следует ввести пару круглых скобок, в которых через запятую нужно прописать все переменные, от которых зависит функция. Задать функцию с параметром можно только в том случае, если ему выше присвоено конкретное числовое значение. Иначе система выдаст уже знакомое нам сообщение об ошибке: This variable is undefined.
3.Введите оператор присваивания «:-►,
4.На месте черного маркера справа от введенного оператора присваивания задайте вид вашей функции. В выражение определяемой функции могут входить как непосредственно переменные, так и другие встроенные и пользовательские функции.
Пример 2.5. Задание функции пользователя
<я,у, у- + a-f(x, у) + b-cos (FUNCTION (z))
Встроенные функции — это функции, заданные в Mathcad изначально. Поэтому, чтобы их и си ольэовать. достаточно просто корректно набрать имена функций с клавиатуры. Впрочем, существуют и другие способы вставки нужной встроенной функции. Наиболее распространенные из них можно ввести с панели Calculator (Калькулятор), К таким функциям относятся синус, косинус, тангенс, натуральный и десятичный логарифмы, экспонента. Для того же, чтобы задать вес остальные встроенные функции Mathcad, нужно открыть специальное окно Insert Function (Вставить функцию). Проще всего это можно сделать нажатием одноименной кнопки панели Standard (Стандартные) с изображением стилизованного знака функции (рис. 2.1).
Рио. 2,1. Кнопка Insert Function (Вставить функцию> меню Standard (Стандартные)
Также, для того чтобы вызвать дан нос окно (рис. 2.2), можно использовать сочетание клавиш Ctrt+Shtft+F или Ctrt+E. И. наконец, ссылка на нею имеется в меню Insert (Вставка).
Рис. 2.2. Окно Insert Function (Вставить функцию)
Так как число встроенных функций Mathcad весьма значительно (несколько сотен), для удобства они распределены по тематическим группам. Их список, организованный в алфавитном порядке, расположен в окне Function Category (Категория функций). Всего в Mathcad 32 тематические группы функций.
При выборе определенной категории функций ее содержание отоб1азится в окне Function Name (Имя Функции). Чтобы ввести нужную функцию, выделите ее в списке с помощью мыши или клавиш управления курсором н нажмите ОК (или лучше дважды щелкните на ней мышью).
По умолчанию в окне Function Name (Имя функции) отображается полный список всех встроенных функций, что соответствует категории АИ(Всс). Производить поиск в полном списке несколько быстрее н удобнее, если вы приблизительно знаете написание имени нужной вам функции
На окне Insert Function (Вставить функцию) имеется специальная зона, в которой отображается текст описания выбранной функции. Так, для первой функции списка
Таблица. Сообщения об ошибках
Ошибка
Перевод
Вероятная причина
Возможные пути устранения
Сообщения об ошибках в численных вычислениях
A «Find» or «Minerr» must be preceded by a matching «Given»
Find или Minerr должны предваряться ключевым словом Given
Эта ошибка выделяет функцию Find или Minerr при их несогласо-
ванности с Given
Каждый вычислите-
льный блок,
который заканчивается функцией Find или Minerr, должен начинаться с ключевого слова Given
All evaluations resulted in either an error or a complex result
Вычисления приводят к ошибке или комплексно-
му результату
Mathcad не может начертить некоторые точки, потому что не существует действительных значений для их нанесения на график
Это сообщение может появиться, если имеется ошибка или все значения комплексные
Arguments in function definitions must be names
Аргументы в определениях функции должны быть именами
Выделенное определение функции содержит неправильный перечень аргументов
В списке аргументов должны быть правильно поименованы переменные, или список имен необходимо отделить запятыми
At least one limit must be infinity
По крайней мере один предел должен быть бесконечным
Когда для интегриро-
вания выбран алгоритм бесконечного предела, то по крайней мере один из пределов интеграла должен быть бесконечным
Тип бесконечности вводится нажатием сочетания клавиш <Ctrl>+<Shift>+<2>.
Для изменения алгоритма, использующего бесконечный предел, или для вычисления какого-либо другого интеграла щелкните на интеграле правой кнопкой мыши и измените алгоритм с помощью контекстного меню
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 не способен решить систему
См. определение термина «вычислительный блок » (гл.
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 столбца
End of file
Коней; файла
Вы пытаетесь прочитать больше значений в файле данных, чем там имеется
Например, если файл данных имеет 10 значений, а записано выражение i : =1…100
xi : =READ* ( file) , то появится это сообщение
End points cannot be the same
Конечные точки не могут быть одинаковы
Это сообщение появляется при некорректном решении дифференциальных уравнений
Конечные точки интервала, на котором будет вычисляться решение, должны быть различны
Equation too large
Уравнение слишком большое
Это выражение слишком сложное для вычисления
Разбейте выражение на два или более простых
Floating point error
Ошибка вычислений с плавающей точкой
Функция вычисляется в точке, в которой это не разрешено
Found a singularity while evaluating this expression. You may be dividing by zero
Найдена сингулярность при вычислении этого выражения. Возможно, Вы делите на ноль
Вычисляется функция или выполняется операция с недопустимым значением
Например, это сообщение возникнет при попытке деления на ноль или обращения сингулярной матрицы; разберитесь, где это происходит
Found a number with a magnitude greater than 1СГ307
Найдено число, превышающее значение 10307
Попробуйте поменять параметры численного алгоритма или сам алгоритм
Illegal context. Press <F1> for help
Недопустимый контекст. Нажмите <F1>, чтобы получить помощь
Часто встречается при синтаксических ошибках
Проверьте синтаксис и порядок расположения формул в документе
Illegal dimensions
Недопустимые размерности
Матрица, на которую Вы ссылаетесь, не имеет достаточно строк или столбцов
Введите имя матрицы с клавиатуры и нажмите знак «=», чтобы проверить число ее строк и столбцов
Integer too large/ Integer too small
Целое число слишком большое/ слишком маленькое
Это число слишком велико/мало для работы с ним
Если Вы работаете со встроенными функциями, то щелкните на имени функции и вызовите подсказку с помощью <F1>
Invalid format
Недопустимый формат
Аргументы этой функции могут быть некорректны
Если Вы работаете со встроенными функциями, то щелкните на имени функции и вызовите подсказку с помощью <F1 >
Live symbolics not available
Символьные вычисления неприменимы
Си. гл. 5
Must be <= 10000
Это значение должно быть <=10000
Must be >= 10л-16
Это значение должно быть >=1<Г16
Must be string
Функция или оператор должен быть строковым аргументом
См. гл. 10
Must be between two lock regions
Должно быть между двумя запертыми областями
См. гл. 16.
Must be function
Этот аргумент должен быть функцией
Must be increasing
Значения вектора должны быть возрастающими
Введите с клавиатуры имя вектора и знак =, чтобы проверить его значения
Must be less than the number of data points
Должен быть меньше, чем число точек данных
Этот аргумент должен быть меньше, чем число точек имеющихся данных
Must be positive
Должен быть положительным
Невозможно вычислить эту функцию, когда ее значения меньше или равны нулю
Это сообщение может касаться построения XY- или полярных графиков с логарифмическими осями. Отрицательные числа или ноль не могут располагаться на логарифмических осях
Must be real
Должно быть действительным
Это значение должно быть действительным. Его мнимая часть должна быть нулем
Примером таких выражений могут служить нижний и верхний индексы, решения дифференциальных уравнений, углы
Must be real scalar
Должно быть действительным скаляром
Это значение не должно быть комплексным или мнимым
Must be real vector
Должно быть действительным вектором
Этот вектор не может иметь комплексные или мнимые элементы. Он должен также быть вектором-столбцом, а не строкой
Must be square
Должна быть квадратной
Эта ошибка выделяет неквадратную матрицу в той операции или функции, в которой ей следует быть квадратной
Например, матрица должна быть квадратной при обращении, возведении ее в степень, или в функциях eigenvals и eigenvec
No solution found
Не найдено решение
Если Вы используете встроенные функции, то щелкните мышью на имени функции и нажмите клавишу <F1>, для того чтобы быть уверенным в корректности использования функции. Однако решение может просто не существовать.
См. также «Can’t converge to a solution»
Not enough memory for this operation
Для этой операции недостаточно памяти
Не хватает памяти, чтобы завершить это вычисление
Попытайтесь освободить немного памяти путем уменьшения массива или матрицы (Mat head тратит около 8 байт памяти на каждый элемент матрицы), или удаления каких-либо больших побитовых отображений, массивов, матриц
Singular matrix
Сингулярная матрица
Эта матрица не может быть ни сингулярной, ни близкой к сингулярности
Матрица называется сингулярной, если ее определитель равен нулю. Матрица близка к сингулярной, если она имеет высокое число обусловленности (см. гл. 9)
The expression to the left of the equal sign cannot be defined
Выражение слева от знака равенства не может быть определено
В левой части находится что-то, что не является допустимым определяемым выражением
В левой части можно разместить одно из следующих определений:
— имя переменной;
— имя переменной с верхним или нижним индексом;
— явный вектор или матрицу;
— имя функции с аргументами: f(x,y)
Любые другие выражение не допустимы
The number of rows and/or columns in these arrays do not match
Число рядов и/или столбцов в этих массивах не согласовано
Попытка произвести матричные или векторные операции над массивами, размеры которых не совпадают
Например, сложение двух матриц разного размера недопустимо. Матричное умножение требует, чтобы число столбцов первой матрицы совпадало с числом строк второй (см, разд. 9. 1)
The units in this expression do not match
Размерности в этом выражении не согласованы
Это сообщение появится, если складываются два элемента разной размерности либо создана матрица, элементы которой имеют разную размерность, либо Вы пытаетесь решить систему уравнений для неизвестных переменных разной размерности
Проверьте использование размерных переменных
There is an extra comma in this expression
В выражении лишняя запятая
Запятые должны использоваться для того, чтобы отделять:
аргументы в функции
первые два элемента области в определении интервала
выражения в графике элементы во входной таблице нижние индексы в матрице
Любые другие применения запятой приводят к ошибке. Например, запись 4,000 неправильная, а запись 4000 — правильная
This expression is incomplete. You must fill in the placeholders
Это выражение неполное. Необходимо добавить содержимое в место-заполнители
Не заполнены указанные местоза-полнители
Необходимо дописать числа или выражения в указанные местозаполнители
This expression is incomplete. You must provide an operator
Это выражение неполное. Необходимо вставить оператор
Не заполнены местозаполнители оператора или пустое пространство между двумя операндами
Это могло произойти при удалении оператора, проверьте правильность ввода выражения
This function has too many arguments
Эта функция имеет слишком много аргументов
Выделенное выражение содержит функцию с числом аргументов большим, нежели требуется
Проверьте правильность применения функции
This function is undefined at one or more of the points you specified
Эта функция не определена для одной или более точек
Попытка вычисления оператора или функции с неподходящими значениями
Например, -3′- выдаст ошибку, 1п(0), т. к. факториал не определен для отрицательного числа, а логарифм для нуля
This function needs more arguments
Этой функции не хватает аргументов
Выделенное выражение содержит функцию с меньшим, нежели требуется, числом аргументов
Для встроенных функций щелкните мышью на имени функции и воспользуйтесь подсказкой <F1>, чтобы проверить правильность числа и типа аргументов; для функции пользователя проверьте ее определение
This operation can only be performed on a function
Эта операция может быть произведена только над функцией
Этот аргумент должен быть функцией
Для встроенных функций щелкните мышью на имени функции и воспользуйтесь подсказкой <F1 >
This operation can only be performed on an array. It can’t be performed on a number
Эта операция может быть произведена только над массивом. Она не может быть произведена над числом
Например, это сообщение появится, если переменная верхнего индекса определена как скаляр. Поскольку переменная верхнего индекса представляет собой столбец матрицы, то ее следует определять как вектор
Для поверхностных или контурных графиков массив данных должен иметь, по крайней мере, два ряда и два столбца
This operation can only be performed on a number or an array
Эта операция может быть произведена только над числом или массивом
Используемая функция или оператор требуют представления в виде константы, матрицы или вектора
This operation can only be performed on a string
Эта операция может быть произведена только над строкой
Используемая функция или оператор требуют представления в виде строки. Например строковые функции обычно требуют по крайней мере одного строкового аргумента
This subscript is too large
Этот нижний индекс слишком велик
Попытка использовать верхний или нижний индекс, который превышает ограничения
This value must be a matrix
Это значение должно быть матрицей
Попытка произвести матричную операцию не над матрицей
This value must be a vector. It can be neither a matrix nor a scalar
Это значение должно быть вектором. Оно не может быть ни матрицей, ни скаляром
Это сообщение маркирует матрицу или скаляр в операциях, которые требуют вектора (одностолбцового массива). Например суммирование элементов вектора
This value must be an integer greater than 1
Это значение должно быть целым числом, превосходящим 1
Это значение должно быть >1
При использовании встроенных функций щелкните мышью на имени функции и нажмите клавишу <F1>
This variable or function is not defined above
Эта переменная или функция не определена выше
Имя неопределенной функции будет помечено красным цветом
Удостоверьтесь, что эта функция или переменнуя определена выше. Это сообщение появится, если переменная некорректно используется в глобальном определении. Эта ошибка часто свидетельствует о том, что другое уравнение выше в документе является ошибкой. В этом случае все выражения, использующие выражение с ошибкой, будут помечены красным цветом
Underflow
Потеря значимости (исчезновение значащих разрядов)
Из-за ограничений, присущих представлению чисел на компьютере, числа, которые слишком малы, не могут быть представлены. Это сообщение появляется, когда выражение включает такое число. Иногда, особенно в сложных вычислениях, промежуточный результат будет слишком мал, и вся разрядная сетка заполнится нулями
Value of subscript or superscript is too big (or too small) for this array
Значение нижнего или верхнего индекса слишком велико (или слишком мало) для этого массива
Это выражение использует нижний или верхний индекс, который относится к несуществующему элементу массива
This is not a scalar. Press <F1 > for help
Это не скаляр. Нажмите клавишу <F1>, чтобы получить помощь
Использован вектор или выражение с интервалами, или какой-то другой тип выражения, где требуется применение скаляра
You have one solve block inside another. Every «Given» must have a matching «Find» or «Min-err».
Один вычислительный блок содержится внутри другого. Каждому ключевому слову Given должно сопоставляться Find или Minerr
Указаны два ключевых слова Given подряд без Find или Minerr посередине. Вычислительный блок не может иметь внутри себя другой вычислительный блок
В качестве альтернативы можно задать функцию в терминах одного вычислительного блока и использовать ее внутри другого вычислительного блока. Во многих случаях это дает тот же самый эффект
You interrupted calculation. To resume, click here and choose «Calculate» from the «Math» menu
Вычисления прерваны. Для того чтобы продолжить, щелкните здесь и выберите пункт Calculate меню Math
Вычисления прерваны нажатием клавиши <Esc>. Для того чтобы пересчитать выделенное уравнение, наведите на него курсор и воспользуйтесь меню Math / Calculate (Математика/ Вычислить)
Сообщение об ошибках в символьных вычислениях
Argument too large (Integer too large in context, Object too large)
Аргумент слишком велик
Обычно это результат вычисления выражения с плавающей точкой со значением большим, чем около 10×10 миллиардов
Discarding large result
Сброс большого результата
Ответ слишком велик для отображения его в отформати-
рованной математической области
Можно разместить ответ в буфере обмена
Expecting array or list
Ожидается массив или список
Операторы в упрощаемом или вычисляемом выражении требуют векторных или матричных операндов
Expression contains non-symbolic operators
Выражение содержит несимвольные операторы
Применена символьная операция к выражению, содержащему местоза-полнители оператора или переменной
Floats not handled
С плавающей запятой не поддерживается
Команда Factor была применена к выражению с десятичным числом
Illegal function syntax
Недопустимый синтаксис функции
Символьный процессор не может интерпретировать выражение, подобное (f)(x)
Invalid arguments
Недопустимые аргументы
Символьный процессор не может выполнить требуемую операцию для данных аргументов
Это сообщение появится, если, например, применить скалярную функцию к массиву без использования оператора векторизации и выбрать команду Symbolics / Simplify (Символика / Упростить)
Invalid range
Недопустимый интервал
Для поиска численного решения уравнения символьный процессор пытается вычислить одну из своих встроенных функций за пределами области ее определения
No answer found; stack limit reached
Ответа не найдено
Символьный процессор достиг предела своих возможностей без вычисления или упрощения, которое затребовал пользователь
No answer found
Ответа не найдено
Символьный процессор не смог найти точного решения уравнения
No closed form found for
Не найдено замкнутой формы для
Символьный процессор не смог найти интеграл или сумму, или произведение в замкнутой форме
Syntax error
Синтаксическая ошибка
Обычно результат применения символьной операции в неподходящих или некорректных выражениях. Символьные вычисления выражений с размерностями также приведут к появлению этого сообщения
Другие темы раздела | |
MathCAD Ошибка при вводе числа https://www.cyberforum.ru/ mathcad/ thread1367031.html Нужно провести несложный, но массивный расчет. Почему при вводе обычных чисел он часть мне дает вводить, показывает это?? Все вводил одинаково |
MathCAD Зацикливание программы Всем добрый вечер! Работаю в Маткад 2000. Есть некий каскад идущих друг за другом программ, считающих некую условную концентрацию, такого типа: 1. Задаем начальную концентрацию, формулы и… |
MathCAD Не могу разобраться с Mathcad https://www.cyberforum.ru/ mathcad/ thread1366081.html Нужно ввести все в программу. Я в Mathcad’е совсем не разбираюсь. Преподаватель задал задание решить задачу, я решил схитрить и нашел в интернете файл, в котором было решение задачи. После этого он… |
MathCAD Сравнение результатов работы функций numol() и pdesolve() Здравствуйте,уважаемые форумчане. Возникла следующая проблема, решил использовать вышеуказанные функции для решения одно и того же диф.уравнения в частных производных, но результат не совпадает,… https://www.cyberforum.ru/ mathcad/ thread1366016.html |
Как выбрать окно для функции bandpass? MathCAD Вот определение функции в справке: bandpass(f1, f2, n, ) — возвращает коэффициенты для bandpass-фильтра с конечной импульсной характеристикой с числом коэффициентов n и частотами среза f1 и f2,… |
MathCAD Построить поверхность по точкам Помогите построить поверхность С 40 38 35 25 15 10 8 7 коорд х https://www.cyberforum.ru/ mathcad/ thread1365470.html |
MathCAD MathCAD — Программирование. Сгенерировать матрицу 10 на 10 и посчитать https://www.cyberforum.ru/ mathcad/ thread1364889.html Здравствуйте. Помогите пожалуйста. Задание: Сгенерировать матрицу 10 на 10 и посчитать сумму элементов первого столбца, умноженную на сумму элементов первой строки. Оно не очень сложное, но не… |
MathCAD Симбиоз Mathcad 14 и Excel Здравствуйте! Помогите пожалуйста. Как задать к переменной «а» значение из Excel из ячейки (С3), а для «b» значение (D3)? |
MathCAD Сложности с функциями Бесселя Добрый вечер, форумчане!) У меня возникли следующие сложности. 1.Нахожу лямду через «solve» из ур-я он выдает какой то результат, который при проверке не сходится(откуда берется то же не понятно)…. https://www.cyberforum.ru/ mathcad/ thread1362622.html |
MathCAD MathCAD 15 Почему переменная d не определена https://www.cyberforum.ru/ mathcad/ thread1361859.html Не могу понять, почему переменная d не определена Найти производные первого и второго порядков для функции |
Задание в MathCad 14 MathCAD Доброго времени суток! Учусь на заочном отделении САУ, есть семья и ребенок, параллельно пытаюсь работать. Скоро сессия, никак не осилю практические задания и лабораторку по MathCad. Если есть те… |
MathCAD Отображение в Mathcad файла txt с символами кириллицы https://www.cyberforum.ru/ mathcad/ thread1361639.html В Mathcad импортируется текстовый файл с фразой на русском языке. Надо, чтобы и в Маткаде отображались русские символы В книге, по которой делалось задание, по этому поводу написан следующий совет:… |
Модератор
5101 / 3913 / 1348
Регистрация: 30.07.2012
Сообщений: 11,720
03.02.2015, 18:03
0
03.02.2015, 18:03. Показов 1107. Ответов 2
Сообщение было отмечено igor myakota как решение
Решение
igor myakota, ну еще бы!!! Часть примера в расчетном файле ОТСУТСТВУЕТ… (смотри файл NEW). И еще ошибки по мелочи…
Вернуться к обсуждению:
Не могли б подсказать где ошибка MathCAD
1