Чтобы легче было понять написанное здесь, рекомендуется при первом чтении опускать содержимое скобок (точнее, текст в скобках), при втором чтении — текст в двойных скобках и т.д. Развернуть страничку во весь экран можно по ссылке в конце странички.
Эта инструкция предназначена для тех, кто плохо учился в школе и не знает как оформляется решение задач "от руки", а также для особо тупых преподавателей, у которых по причине нищеты никогда не было своего компьютера и поэтому они понятия не имеют о современных методах решения задач. Прежде всего, в программе "Маткад" все простые переменные (исходные данные для решения задачи) должны быть написаны сверху (или слева в той же строчке) от формулы, в которой они используются. В школе же учили их писать в столбик с левого края листа. Во-вторых, синтаксис Маткада требует различать операторы присваивания, операторы вывода (существует 2 вида операторов вывода: обычный (численный, возвращает в общем случае число с плавающей запятой (которая обозначается точкой в американской литературе и соответственно на интерфейсе программы "Маткад"), точки может и не быть, если ответ получается целым числом, максимальная точность 16 десятичных разрядов (в других системах счисления, которые можно использовать: двоичной, восьмеричной и шестнадцатеричной разрядов также не более 16, поэтому в разных системах счисления разная максимальная точность вычисления)), который обозначается просто как знак равенства ("=") и символический оператор вывода, который возвращает, если это возможно, точное значение ответа, выраженное в общем случае через радикалы, число "π", обозначения функций в точке, если они принимают в этой точке значения, не выражающиеся через радикалы и число "π" и арифметические операции, символический оператор вывода обозначается как "стрелка вправо" ("→")) и операторы уравнения (обозначаются как жирный знак равенства (нет ни в одном фонте)). Вообще-то операторов присваивания тоже два (обычный, обозначаемый как двоеточие и знак равенства (:=) — в формате .mcd он кодируется одним символом ":" и при наборе формулы, чтобы определить оператор присваивания, достаточно нажать клавишу ":") и в справке по Маткаду называемый локальным оператором присваивания (local defitition), и оператор глобального присваивания (global definition), обозначаемый как "≡" и используемый только в случае крайней необходимости (если нужно определить простую переменную или функцию, которая используется в формулах выше (или левее в этой же строке) этого определения, пример использования этого оператора есть в файле "Аналитический расчёт кулачкового механизма" на странице "Примеры решённых задач"; там в конце файла подбирается минимальный радиус кривизны кулачка, чтобы максимальный угол давления был бы равен заданному). Если глобальное определение ссылается на другие простые переменные или функции (кроме стандартных функций Маткада), то они также должны быть глобально определены выше или левее в той же строке от этого определения. В рукописях (и даже в книгах или учебниках) их всегда обозначают одним и тем же знаком "=" — равенство (в последних версиях "Маткада" можно настроить интерфейс так, чтобы он рисовал операторы присваивания и уравнения как обычный знак равенства в невыделенных регионах, но из-за несовместимости версий я не пользуюсь без крайней необходимости более поздними версиями нежели V7pro) , при этом порядок написания формул часто нарушается; например, сначала пишут главную формулу для вычисления какой-то величины, в которую входят неопределённые выше простые переменные или функции, а снизу от этой формулы даются значения этих переменных или формулы для их вычисления. В-третьих, в Маткаде оператор присваивания и оператор вывода используются в отдельных математических регионах. Регион с оператором присваивания должен быть слева в той же строчке или сверху от соответствующего оператора вывода. При этом компьютер сам подставляет в выражение справа от оператора присваивания значения всех переменных и функций от них. Оператор вывода (обычный) выводит на экран (и на распечатку) уже окончательный (численный) ответ. В контрольной работе это всё нужно записать в виде одной формулы, сначала переписав формулу с оператором присваивания, заменив в ней оператор присваивания обычным знаком равенства, потом после знака равенства ещё раз переписать вычисляемое выражение (что справа от оператора присваивания), но в этот раз заменив в нём имена переменных их численными значениями (значение числа "p " ("π" — ещё раз юникодом, если на Вашем компьютере не установлен фонт "Symbol") можно не подставлять). Если задача не по математике (преимущественно по физике и таким предметам, в которых встречаются самые разные физические величины — теплотехника, электротехника и т п.), то в формулу также подставляются единицы измерения физических величин (численные значения всех физических величин выражаются через основные единицы "СИ", то есть м, кг, с, Кл (или А), Па, Н, Дж, Вт и т.д.) Если задача по математике (за исключением случаев численных методов решения), а также по некоторым другим предметам, в которых используются в основном символические вычисления, например, теормех-кинематика), то обязательно нужно переписывать все промежуточные символические вычисления, заменяя символ "→" знаком равенства и опуская ключевые слова (expand, factor, simplify, complex и т.п.), которые пишутся слева от оператора символического вывода "→", если они используются.
На Маткаде аргумент функции обязательно пишется в скобках после имени функции, степень функции пишется после скобок (а не после имени функции, как учили в школе). Так же
обязательно пишутся знаки умножения, деление обозначается обычно двухэтажной дробью (чтобы обозначить иначе, нужно определить функцию двух переменных с именем функции,
совпадающим с обозначением этого оператора (например, "/" или ":" или "," — последний используется в графиках (особенно по оси абсцисс), чтобы выразить переменную или
функцию от переменной через необходимые единицы измерений и при этом не использовать двухэтажную дробь, чтобы график занимал меньше места на экране и бумаге), например,
/(x,y):=дробь(x;y), где "дробь" — обычная двухэтажная дробь, которая появляется в окне маткада, если нажать на клавишу "/", если курсор стоит в
математической формуле или
на чистом месте (при этом курсор имеет вид красного крестика), в числителе этой дроби записать "x", а в знаменателе — "y", и далее каждый раз использовать двухоперандный
оператор (кнопка "x f y" (infix button) на палитре "вычисления и логические выражения" (evaluation and boolean palette)), когда синий курсор редактирования формул стоит в
нужном плэйсхолдере справа от оператора присваивания, при этом вместо одного плэйсхолдера появляется 3: ■ ■ ■. В средний плэйсхолдер (f) подставляется
соответствующее имя функции, в левый плэйсхолдер (x) — числитель, в правый (y) — знаменатель). Примечание: синтаксис не позволяет непосредственно использовать символ "/",
(а также ":", "," и т. п.) в именах переменных и функций, так как он зарезервирован для деления; начиная с седьмой версии Маткада для этого существует специальная фитча,
которая включается и выключается нажатием комбинации клавиш Ctrl+Shift+P, при этом синий курсор редактирования формул превращается в красный. В последующих версиях Маткада
эта комбинация изменена на Ctrl+Shift+K.
Далее в зависимости от сложности выражения после ещё одного знака "=" либо пишется окончательный ответ (численный, с единицей измерения, если она есть), либо упрощенное
выражение (промежуточные вычисления, например, сократить дробь, вычислить функцию, сумму, произведение или разность, произвести преобразование единиц измерения), и так
несколько раз, если необходимо.
Оператор вывода можно использовать несколько раз для одной и той же величины, подставляя в его плэйсхолдер различные единицы измерения
(основные, специальные для данной величины и кратные им, или даже внесистемные, если они определены). Для перевода ответа из одних единиц в другие удобно слева от оператора
вывода использовать однооперандный оператор: справа от имени переменной (кнопка "x f" на палитре "вычисления и логические выражения") или слева от имени переменной (кнопка
"f x" на палитре "вычисления и логические выражения"). Например, значения углов, вычисленные стандартными функциями (asin, acos, atan, arg), Маткад возвращает в радианах.
Чтобы перевести все ответы в градусы, и при этом каждый раз не умножать на соответствующий коэффициент (180/π) переменную слева от оператора вывода (можно также ввести
ещё по одной простой переменной, принимающей значения в градусах, и определять их справа от оператора присваивания, при этом их имена слева от оператора присваивания должны
быть похожими на переменные, принимающие значения в радианах, чтобы их не перепутать, но должны немного отличаться, чтобы компьютер их различал. Например, к имени переменной
можно добавить символ "градус" — ° (Alt+0176). Но можно поступить проще: определить оператор по формуле °(x) := x·180/π и скопировав регион с оператором вывода (и
вставив его рядом со скопированным, курсор поставить справа от имени переменной и нажать кнопку "x f" и в получившийся плэйсхолдер скопировать имя оператора (°). Таким
образом получим значения угла в радианах и градусах. И так для каждой вычисляемой угловой величины (скопировав в буффер обмена сразу два региона с оператором вывода и
вставив их столько раз, сколько угловых величин вычисляется ещё, заменив в них имена переменных на соответствующие). Аналогично для вычисления функций sin, cos, tan, cot
их аргументы должны быть выражены в радианах. Чтобы величины, задаваемые в градусах по условию задачи, каждый раз не переводить в радианы, умножая заданную величину справа
от оператора присваивания на коэффициент π/180, можно определить оператор для использования справа от оператора присваивания °(x) := x·π/180 (имена этих операторов
должны быть разные, чтобы компьютер их не путал (иначе будет использовать только последнее определение), или одинаковые, но с разными фонттагами (например, для первого —
"variables", для второго — "constants" (или любые из остальных семи)), или даже с одинаковым фонттагом, но один из них из фонта "Symbol" (через Ctrl+G). В фонте "Symbol"
также есть символ "градус", и даже с тем же номером (Alt+0176), только немного выше написан, так что их можно различать даже на распечатке. Если использовать разные фонттаги
с одним и тем же фонтом, то на распечатке эти операторы не различить, но можно легко догадаться, где какой. Дальше этот оператор используется также, как первый, только
справа от оператора присваивания (курсор ставится тоже справа от заданной величины в градусах).
В задачах по физике температура задаётся часто в градусах Цельсия, и её нужно переводить в шкалу Кельвина (за исключением тривиальных случаев, когда даны две температуры и теплоёмкость и требуется найти теплоту нагревания/охлаждения). Также можно определить оператор для использования справа от оператора присваивания с именем °C по формуле: °C(x) := (x + 273.15)·К, где К — простая переменная, численно равная 1, которой присвоена размерность температуры (то есть единица измерения температуры). Используется этот оператор аналогично, то есть справа от заданной величины в градусах Цельсия, а компьютер автоматически переводит это значение в шкалу Кельвина (прибавляет 273,15 и присваивает этой переменной размерность температуры. В результате вычислений другие температуры получаем также по шкале Кельвина. Чтобы посмотреть их значения по шкале Цельсия, удобно определить оператор для использования слева от оператора вывода по формуле °C(x) := x/К – 273.15 (имена операторов также должны быть разные, либо из разных фонттагов, либо из одного, но градус в одном случае из фонта "Symbol", либо даже градусы одинаковые, но буквы "C" разные — в одном случае латинская, в другом — русская). При этом оператор будет возвращать безразмерную величину. Если определить его иначе, например x – 273.15·К, то ответ будет содержать букву "К", что было бы странно, если мы хотим ответ по шкале Цельсия (может вызвать путаницу). Заметим, что этот оператор нельзя применять для разности температур (например, при нагревании на 1К вместо +1 °С получим –272,15°С). Разность температур одинакова как по Цельсию, так и по Кельвину. При переписывании регионов с оператором вывода, если там используется оператор перевода, то его нужно писать не после имени переменной, а после численного ответа (то есть в самом конце). Все эти операторы можно использовать не только справа, но и слева от имени переменной в регионах с оператором вывода или от заданной величины в регионах с оператором присваивания, результат от этого не изменится (только при этом нужно будет использовать другую кнопку ("f x") на палитре "вычисления и логические выражения" и курсор ставить с левого края имени переменной или заданной величины). В качестве левого оператора обычно используется оператор инверсии в задачах на алгебру Буля, имя оператора — "⌐" (в Юникоде были только такие). Пример его использования: ⌐(0) = 1; ⌐(1) = 0. Вообще-то правильное обозначение у него такое: Ш (фонт "Symbol", символ "Ш"). Кстати, после установки WinXP SP2 в Юникоде появился знак логического отрицания: ¬ (0172). Заметьте, что он расположен выше, чем в фонте "Symbol".
Иногда авторы в книгах используют выражение как имя переменной (синтаксис не позволяет этого делать, так как слева от оператора присваивания может быть либо имя переменной, либо имя функции от переменной), для этого в седьмой версии Маткада введена фитча "выражение как имя переменной", которая включается комбинацией клавиш Ctrl+Shift+O (в последующих версиях заменена комбинацией Ctrl+Shift+J). При нажатии этой комбинации, когда курсор стоит на чистом месте или в математической формуле, появляется плэйсхолдер в квадратных скобках. В этих скобках можно писать любую ахинею, и компьютер будет её считать именем переменной (при этом главное не перепутать одну ахинею с другой). Кстати, фонттаги у переменных при этом Маткад не различает. В справке по "Маткаду" это называется "химический режим".
Часто (практически всегда) авторы книг по электротехнике, ТЭЦ, статистической радиофизике используют неудачное обозначение комплексной передаточной функции: H(jω) (имея в виду при этом H(j·ω), так как переменной величиной является ω и поэтому слева от оператора присваивания под знаком функции должна быть та же переменная, иначе просто нужная функция не определится; например, если написать такое опрелеление: H(jω) := Q(j·ω), где Q(x) — дробно-рациональная функция от "x", то есть "правильное" выражение, то тогда Маткад выдаст сообщение об ошибке: простая переменная ω не определена. Если ей присвоить какое-нибудь значение, то тогда определится постоянная функция, значение которой будет зависеть от присвоенного значения ω и вида функции Q(x). А если написать определение: H(j·ω) := Q(j·ω), то тогда компьютер выдаст сообщение об ошибке "cannot be defined", так как, согласно синтаксису Маткада, слева от оператора присваивания может быть только имя переменной или имя функции от переменной; никакие выражения слева от оператора присваивания недопустимы. Чтобы определить комплексную функцию, никаких дополнительных мер принимать не нужно, комплексная функция может иметь точно такое же имя, как и действительная, и без всяких дополнительных символов, которые рисуют в книжках, например, "звёздочки", "чёрточки" над или под именем переменной. В приложении Маткад это не предусмотрено. Как говорится, "дурной пример заразителен" или ещё "одна кобыла всех сманила". Интересно, кто был первой кобылой? Котельников? Или Шеннон? Или генерал-майор Тихонов Василий Иванович (преподаватель ВВИА им. Жуковского)? Бумага конечно всё стерпит, но компьютер ругается матерно...
Кстати о комплексных числах и о их вычислении "вручную" и на компьютере. С комплексными числами "Маткад" обращается также легко, как с действительными. Даже имена комплексных переменных могут ничем не отличаться от имён действительных переменных. Только ответ он выводит всегда в алгебраической форме (в виде "a + 1j·b", где a и b — действительные числа. Цифра 1 слева от буквы j рисуется интерфейсом, если выделить соответствующий математический регион. Если выделение региона снять, то "1" не рисуется, а буква "j" сдвигается влево, так что образуется пробел между буквой "j" и символом умножения в седьмой версии Маткада. В последних версиях при выделении такого региона его длина увеличивается, а при снятии выделения уменьшается обратно, так что никаких пробелов не образуется. На распечатках никогда не бывает выделенных регионов, так что на распечатке комплексные числа имеют вид "a + j ·b" или "a + j·b"). Если в задаче требуется подробно расписать вычисления комплексных чисел, то нужно их перед сложением или вычитанием перевести в алгебраическую форму (если они имели показательную форму, например после умножения или деления или по условию задачи), а перед умножением или делением — соответственно в показательную (если они имели алгебраическую форму, например после сложения или вычитания или по условию задачи). Для вычисления функций от комплексных чисел существуют специальные формулы, в которые входят по отдельности действительная и мнимая части комплексного числа. Например:
exp(z) = exp(x + i·y) = ex + i·y = ex·(cos(y) + i·sin(y)) = exp(x)·(cos(y) + i·sin(y))
Некоторые функции в приложении "Маткад" обозначаются не так, как в российской/советской литературе; например для тангенса вместо tg — tan, для арктангенса вместо arctg — atan, для функции ex предусмотрено более удобное обозначение exp(x) (можно использовать любое из них, но символический оператор вывода всегда возвращает функцию exp(x)). Особенно оно удобно, когда под знаком функции "экспонента" стоит дробь. Все функции с различными обозначениями приведены в таблице соответствия:
Функция |
Русское обозначение |
Американское обозначение |
тангенс | tg(x) | tan(x) |
арктангенс | arctg(x) | atan(x) |
котангенс | ctg(x) | cot(x) |
арккотангенс | arcctg(x) | acot(x) — не определена в "Маткаде" |
арксинус | arcsin(x) | asin(x) |
арккосинус | arccos(x) | acos(x) |
синус гиперболический ("шинус") | sh(x) | sinh(x) |
косинус гиперболический ("чёсинус") | ch(x) | cosh(x) |
тангенс гиперболический | th(x) | tanh(x) |
арктангенс гиперболический | Arth(x) | atanh(x) |
котангенс гиперболический | cth(x) | coth(x) |
арккотангенс гиперболический | Arcth(x) | acoth(x) — не определена в "Маткаде" |
арксинус гиперболический ("ареашинус") | Arsh(x) | asinh(x) |
арккосинус гиперболический ("ареачёсинус") | Arch(x) | acosh(x) |
Кроме перечисленных здесь функций в "Маткаде" имеется огромное количество других функций, недоступных "фраерам дешёвым" (безлошадным крестьянинам): специальные функции
(гамма-функция, все функции Бесселя, функция ошибок (функция Лапласа), около 20 стандартных распределений вероятности — дифференциальных, интегральных, обратных к ним и
соответствующих им генераторов случайных чисел); всевозможные векторные и матричные функции; статистические функции — построение гистограммы и уравнения прямой регрессии и
т.п.; функции чтения из файла и функции записи в файл (таблиц, растровых изображений в различных форматах, звуков); функции (процедуры) решения дифференциальных уравнений,
как обыкновенных, так и в частных производных; функции решения уравнений и систем уравнений, функция решения задачи линейного и нелинейного программирования.
При решении
задач по теории вероятностей иногда используется функция Лапласа Ф(x). В американской литературе (и соответственно в пакете "Маткад") вместо неё используется функция ошибок
erf(x). Между этими функциями существует простая функциональная зависимость: Ф(x) = erf(x/sqrt(2)) или erf(x) = Ф(sqrt(2)·x). Первое уравнение используется для определения
функции Лапласа. Можно определить функцию Лапласа с помощью степенного ряда, но тогда компьютер будет вычислять её гораздо дольше и с гораздо меньшей точностью и при x > 5
вообще неверно. Графики этих функций изображены в левом верхнем фрейме (если у вас эта страница не развёрнута во весь экран). Если у Вас рисунки в этот фрейм тоже почему-то
не загружаются, то ссылку на этот рисунок я вставил прямо здесь:
Чтобы использовать русские обозначения функций, нужно их определить вначале файла (или сделать ссылку на файл, в котором эти функции определены), например:
tg(x) := tan(x); ctg(x) := tan(x)–1; arcsin(x) := asin(x); arccos(x) := acos(x); ch(x) := 0.5·(exp(x) + exp(–x));
sh(x) := 0.5·(exp(x) – exp(–x)) Arsh(x) := ln(x + sqrt(x2 + 1)); Arch(x) := ln(x ± sqrt(x2 – 1)) — "длинный логарифм".
Arth(x) := 0.5·ln(|(x + 1)/(x – 1)|); (|x| < 1); Arcth(x) := 0.5·ln(|(x + 1)/(x – 1)|); (|x| > 1);
Ссылка на файл имеет вид: Reference:"[буква диска]:\[полный путь файла]\[имя файла.mcd]" (пиктограмма ссылки, показываемая на экране, на распечатке отсутствует). Чтобы не распечатывать определения функций с русскими именами, также можно их определить "за кадром", то есть справа от вертикальной черты, показывающей границу печати (в файле шаблона, который открывается для создания нового файла, в настройках печати у меня стоит галка напротив "print to right margin" — печатать до правой кромки; эта настройка переходит на все новые фалы, основанные на этом шаблоне).
Если задача приводится в нескольких вариантах, которые отличаются только цифрами, то я пишу файл сразу на все эти варианты таким образом, что нужно только подставить значение простой переменной, соответствующей номеру варианта, а компьютер сам автоматически выбирает нужные данные для расчёта. При этом не нужно переписывать все табличные данные, а только свои, которые выводятся с помощью операторов вывода после слова "Дано:".
Хотя "Маткад" позволяет выполнять действия не только над "голыми" числами, но и над размерными числами — значениями той или иной физической величины с соответствующей единицей измерения и автоматически определять размерность полученного ответа (выражая его через основные единицы измерения физических величин: кг, м, с, Кл (или А), К, моль, лм), но использует он при этом английские обозначения (kg, m, s, coul (A), K, mole, cd, sr). Чтобы он выражал ответы через русские обозначения основных физических величин, нужно ввести их названия в диалоге, который вызывается через меню math, options, закладка dimensions. Поставить галку "display dimensions" и ввести краткие русские обозначения основных физических величин. Чтобы не делать это каждый раз, у меня написан специальный файл, который сохранён в виде специального шаблона ("имя_файла.mct"). Также написан специальный файл, в котором определены имена единиц измерения производных физических величин и всех кратных единиц, некоторых внесистемных единиц и основных физических постоянных, операторы для перевода из градусов в радианы и обратно и операторы перевода температуры из шкалы Цельсия в шкалу Кельвина и обратно. Заодно определены русские обозначения функций, которые в американской литературе имеют другое обозначение. Ссылка на этот файл имеет вид:
Reference:C:\Задачи\физика\единицы и константы.mcd Размер файла 21186 байт.
В некоторых задачах по техническим предметам, в которых единицы измерения не существенны, а набор их невелик и заранее известен (например, по кинематике — время, координата, скорость и ускорение или ТММ — также угол поворота, угловая скорость и угловое ускорение) вместо единиц измерения физических величин применяется их профанация (то есть определяются безразмерные простые переменные с именами, как у единиц измерения ФВ), например:
м:=1 с:=1 м/с:=1 м/с^2:=1 рад:=1 рад/с:=1 рад/с^2:=1
чтобы можно было их подставлять в плэйсхолдер ответа в регион с оператором вывода (чтобы ответы были не пустые числа, а с соответствующими единицами измерений). Так как единицы измерения в таких задачах совершенно не существенны, то можно определить любые другие, например, см:
см:=1 см/с:=1 см/с^2:=1
Этот способ употребления единиц измерения в ответах используется для того, чтобы без крайней необходимости не применять ссылку на файл "единицы и константы", так как "Маткад" при этом использует слишком много ресурсов компьютера (точнее говоря, начинает глючить независимо от объёма оперативной памяти), и если открыть несколько таких файлов (а также редактор WordPicture), то он начинает глючить со страшной силой. Например, векторные рисунки показывает в масштабе 400%, на "print preview" ("просмотр пред печатью") содержимое страницы выходит за её пределы, если выделить несколько регионов и попытаться их перенести с помощью мышки, то они оказываются в начале файла и наконец, интерфейс перестаёт частично или полностью перерисовывать содержимое окна редактируемого файла, так что вместо нужного файла он рисует другой файл или другое приложение, или рабочий стол (если заглючивший файл не закрыть и не переключиться на другой, а окно "Маткада" свернуть, а затем снова развернуть).При "ручных" вычислениях часто выполняются подразумеваемые действия, для которых не предусмотрено (в литературе) вообще никаких имён функций, например, округление. Если мы хотим написать файл, который автоматически выполнял бы такие действия для любых исходных данных, в этом случае необходимо применять специальные функции. Например, функция округления до ближайшего большего целого числа имеет имя ceil(x), а а до ближайшего меньшего целого — floor(x). Если требуются более сложные виды округлений, то тогда необходимо определить соответствующую функцию, выраженную через функции ceil(x) и(или) floor(x) или через функцию if([условие], f1(x), f2(x)). Пример: требуется округлить ответ до ближайшего целого количества миллиметров в большую сторону. Тогда функция округления будет иметь вид:
окр(x) := 0.001·ceil(1000·x)
Функции выбора максимальной или минимальной величины из нескольких "max" и "min" соответственно в советской/российской литературе считаются функциями нескольких скалярных переменных, а в американской — функции одной векторной или даже матричной переменной. Поэтому, прежде чем использовать эти функции, нужно определить соответствующий вектор:
F := (F1 F2 F3)T Fmax := max(F)
Если в задании какая-то (непрерывная) функция задана таблицей и мы хотим, чтобы компьютер автоматически вычислял значения этой функции даже в промежуточных точках и при этом с достаточно высокой точностью, то можно применить встроенную в "Маткад" процедуру кубической интерполяции (сплайнами — отрезками кубических полиномов по обеим переменным). Синтаксис этой процедуры имеет вид:
S := cspline(X,Y) f(x) := interp(S,X,Y,x)
где вектор X — значения переменных в таблице, вектор Y — соответствующие значения функции.
При этом бывает 3 вида кубической интерполяции: с кубическими концами (оператор "cspline"), с параболическими концами (третья производная равна нулю на концах интервала интерполяции (первый и последний элементы вектора X; оператор "pspline") и линейными концами (третья и вторая производные равны нулю на концах интервала интерполяции; оператор "lspline" соответственно).
Иногда авторы методичек используют недопустимые (нестандартные) обозначения имён переменных. Например в методичке по ТММ (теория машин и механизмов, АГТУ) тангенциальные и нормальные ускорения обозначаются буквами "τ" и "n" соответсвенно, написанными вверху справа от буквы "a", то есть там, где обычно пишутся показатели степени. Или длина отрезка обозначается чертой над именем переменной (соответствующего вектора скорости или ускоренния). В синтаксисе приложения MathCAD такие обозначения недопустимы, поэтому символы τ и n я пишу как обычно, то есть внизу в конце имени переменной: aBAn; aBAτ и их проекции на оси координат aBAnx; aBAτx и aBAny; aBAτy соответственно. Длину отрезков можно обозначать, используя подчёркнутый шрифт: ab с таким же именем переменной (то есть настроить для этого другой фонттаг).
По некоторым предметам (особенно по теплотехнике) авторы методичек записывают формулы в таком виде, чтобы ответ получался сразу во внесистемных единицах, без дополнительных вычислений и преобразований. На компьютере это недопустимо, если использовать единицы измерения физических величин, так как по умолчанию предполагается, что ответ должен получиться в стандартных единицах. А если определить внесистемную единицу с соответствующим численным значением и подставить её в плэйсхолдер ответа, то компьютер разделит ответ на её численное значение и ответ будет неправильным. Даже если использовать профанацию единиц измерения, то нелогично было бы присваивать единичное значение внесистемным единицам, например:
кг/ч := 1 или кг/кВт·ч := 1
Если мы захотим узнать величину ответа в системных единицах, то тогда их придётся определить следующим способом:
кг/с := 3600 или кг/Дж := 3600000
А если эти вычисления входят в последующие формулы, да ещё в единицах "СИ", то тогда уж лучше исправить формулы и единицы измерения определить соответственно их численному значению, а ответ во внесистемных единицах компьютер сам вычислит, если подставить эту единицу в плэйсхолдер ответа (региона с оператором вывода численного значения соответствующей переменной.)
Иногда в литературе формулы даются не в системе "СИ", а в какой-нибудь другой, например в книге «Сивухин Д. В., "Общий курс физики", т.5, "Основы квантовой механики и атомная физика"» формула для вычисления постоянной Ридберга (а также все остальные) даются в системе СГС. В этом случае я сам переписываю формулы в нужном виде, чтобы можно было пользоваться приложением "Маткад".
Ниже приводятся примеры того, как выглядит распечатка, и как её надо переписывать. (Пока не приводятся :-))
Открыть страничку во весь экран