Дельта в маткаде как поставить
Перейти к содержимому

Дельта в маткаде как поставить

  • автор:

Установка спецсимволов в Маткад

экранирование спецсимволов
есть ли гем, который экранирует спецсимволы в строке, для того, чтобы внести ее в бд sqlite? .

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

Хранение спецсимволов
Здравствуйте. Интересует вопрос, есть ли альтернативные решения, которые позволяют хранить спец.

Экранирование спецсимволов
Здравствуйте. Подскажите как заставить работать этот код.Не могу правильно заэкранировать. Файл php.

Лучший ответСообщение было отмечено VSI как решение

Решение

Сообщение от xserk

Названия спецсимволов
часто бывает сталкиваюсь с такой смешной проблеммой — например как называется символ(|) или (^), я.

Расшифровщик спецсимволов
Спецсимволы Šŧäŧϋ&#353 как их можно расшифровать программно типо ввёл номер его и она тебе.

Кодирование спецсимволов
Существует ли функция которая декодирует строку вида: <p>Ваш.

Передача спецсимволов в функцию
есть $sleep = "3/30201_1393876800_5"; это нужно передать в js функцию. echo ‘<a href="#".

Удаление спецсимволов из строки
Добрый вечер. Прошу помощи в данном вопросе. Сразу говорю Trim (substr); не удаляет эти символы.

Отображение спецсимволов в разных ОС
Откуда система вынимает символ, не могу найти. В Linux Mint Опера показывает, а в Win7 фигня.

Дискретизация периодического сигнала

В среде MathCAD заданная непрерывная функция имеет следующий вид:

Дискретную последовательность или дискретный сигнал v ( t ) выражают через исходный непрерывный (аналоговый) сигнал следующим образом:

,(2)

где δ( t ) – дискретная дельта-функция;

Δ t – шаг дискретизации;

– последовательность дельта-функций;

m – число дискретных точек.

Одиночную дельта-функцию запишем в виде

Дельта-функция в среде MathCAD имеет вид

Дискретный сигнал равен

Для записи функции арктангенса воспользуемся встроенной функцией MathCAD atan ( x ), а для записи синуса – sin ( x ). Зададим период функции T = 5 π и шаг дискретизации Δ t = 1.

Окончательно программу для расчёта дискретной функции v ( t ) запишем в следующем виде:

Для построения графика зависимости сигнала x = f ( t ) необходимо выбрать в главном меню программы MathCAD «Вид – Панели инструментов – График», далее на появившейся панели «Graph» выбрать элемент «Декартов график», после чего на рабочей области программы MathCAD появится область построения графика. По оси ординат области построения графика необходимо ввести « x ( t )», а по оси абсцисс – « t ». Далее двойным щелчком левой кнопки мыши по области построения графика необходимо вызвать панель форматирования графика. На закладке «Оси X – Y » панели форматирования для удобства отображения нужно установить размер сетки, кратный по оси ординат ­амплитуде сигнала, а по оси абсцисс – периоду сигнала. На закладке «Трассировки» нужно установить толщину линий графика, для этого необходимо выделить мышью строку «trace1» в списке линий и в поле «Вес» выбрать «3». Кроме того, для удобства можно установить диапазон значений по оси абсцисс путём ввода соответствующих значений в области на оси абсцисс графика. По оси абсцисс введём диапазон изменения непрерывного сигнала от 0 до T .

Рис. 1. График зависимости функции x = f ( t )

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

Рис. 2. График зависимости одиночной дельта-функции δ( t ) от времени t

Чтобы построить график зависимости последовательности дельта-функций от времени нужно в область для ввода переменных на оси ординат ввести выражение: . Этот график показан ниже.

Рис. 3. График зависимости последовательности дельта-функций от времени

На рис. 4. показан график зависимости дискретной функции v ( t ) для шага дискретизации Δ t = 1.

Рис. 4. График зависимости дискретной функции от времени v = f ( t )

для шага дискретизации Δ t = 1

Чтобы построить график зависимости дискретной функции от времени v = f ( t ) для шага дискретизации Δ t = 2 нужно в программе расчёта присвоить параметру Δ t значение 2, после чего программа автоматически произведет перерасчёт.

Рис. 5. График зависимости дискретной функции от времени v = f ( t )

для шага дискретизации Δ t = 2

С увеличением шага дискретизации Δ t уменьшается частота решётчатой функции и уменьшается информативная составляющая непрерывного сигнала, подвергнутого дискретизации.

Как вставить символ дельта в маткаде

Методика применения пакета Mathcad для решения научных и типовых общетехнических задач , страница 12

1. Вычисления (ввод значений переменных, выражений и выдача Mathcad результатов) выполняются в Рабочем документе Mathcad (РДМ — файле вычислений, созданным оператором переименованием представляемого Mathcad по умолчанию пустого файла Untitled) в вычислительных блоках прямоугольной формы, автоматически создаваемых Mathcad при вводе данных с клавиатуры или через буфер, и выделенных белым цветом на сером фоне в режиме View–Regions. Блоки позиционируются относительно друг друга посредством точек, проставляемых Mathcad автоматически перед записываемой в блок информацией (рис. 2.1,Б).

2. Текущее место возможного ввода в РДМ информации отмечается Mathcadом красным плюсом. По умолчанию любой ввод (с клавиатуры, из буфера или с панелей матзнаков) реализуется как ввод вычисляемого выражения (вычислительный ввод).

3. Текстовый комментарий или название вводится в виде текстового блока в место ввода, вычислительный тип которого изменен на текстовый (текстовый ввод) командой «Главное меню – Insert – Text region» или сочетанием клавиш <Ctrl> + <“, > (место текстового ввода – прямоугольник с курсором ввода в виде вертикальной красной черты).

4. Курсор ввода в математических выражениях – правый по умолчанию уголок синего цвета. Уголок может перестраиваться с правого на левый (и наоборот) клавишами с левой и правой стрелками

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

Для увеличения охвата введенных знаков следует нажимать клавишу <Пробел> (каждое нажатие увеличивает охват на один символ в горизонтальном и вертикальном направлениях – при наличии знаков в этих направлениях). Изменение направления охвата и переход от одной группы символов к другой производится клавишами с левой и правой стрелками.

5. Значения переменных и параметров следует вводить выше и левее вычисляемых объектов (функций, формул, уравнений, решателей и графиков). Несоблюдение условия приводит к тому, что переменная в объекте окрашивается в красный цвет, вычисления не будут выполняться, и при наводке на него мышки возникает диагностическое сообщение красным шрифтом «This variable or function is not define above»– Эта переменная или функция выше не определена.

6. Аргументы (переменные и параметры) в именах (функций, формул или выражений) следует записывать в порядке согласно плану вычислений, согласованному с порядком многопараметрических вычислений в Mathcad (см. разд. 12 разд. 2.1).

7. В Mathcad имеются три знака (значения) символа «равно».

Первый называется «знаком присваивания» и обозначается как “: =”: присутствует в вычисляемых объектах для связи имени с выражением и вводится: в английской раскладке сочетанием клавиш <Shift> + <: ;> или однознаковой кнопкой с панельки Evaluation.

Вторым является символ команды «Вычислить», вставляемый после имени функции, арифметического выражения или рядной переменной для их вычисления клавишей <+ = >: в ответ Mathcad выдает вычисленное значение функции или выражения или преобразует строчную запись значений рядной переменной в матричную одностолбцовую.

Третьим является символ «жирное» равно, используется в записи систем уравнений в конструкции решателей типа Given … find; вставляется из панельки Boolean одноименной кнопкой или сочетанием клавиш <Ctrl> + <+ = >.

Как поставить градусы в mathcad

101 вопрос про MathCAD

  1. Введите действительный сомножитель (3).
  2. Введите символ &#171;i&#187; или &#171;j&#187; непосредственно после него.
  1. exp(z) — значение е (основание натурального логарифма) в степени z;
  2. ln (z) — натуральный логарифм;
  3. log(z) — десятичный логарифм;
  4. log(z,b) — логарифм z по основанию b.
  5. lnGamma(z) — логарифм гамма-функции Эйлера (см. разд 10.6);
  1. Показательная форма записи некоторого комплексного числа имеет вид z = r ⋅ e i φ . &#8230;
  2. 1) Определим значения модуля и аргумента: r = 3 , φ = π 3 . &#8230;
  3. Запись числа в показательной форме имеет вид: z = 3 ⋅ e π 3 i . &#8230;
  4. 2) Определим значения модуля и аргумента: r = 6 ; φ = π .

Начало работы в MathCad Простые математические действия в MathCad

Хотя считается, что основные математические операции всем хорошо известны еще со школы, но начать работу в MathCAD лучше с них. Вообще если понимание программы MathCAD составляет проблему, то стоит потратить некоторое количество времени на ее изучение. А при изучении программы MathCAD лучше собственными руками набрать некоторое количество примеров приведенных в данном пособии. Это позволит научиться простым навыкам набора уравнений в MathCAD и заодно напомнит кое-что из давно забытого школьного курса математики.

Для занесения на экран нужного выражения, например, 2 + 7, необходимо щелкнуть мышкой на том месте рабочего листа MathCAD где планируется ввести данные. Потом нажать на клавиатуре число 2 нажать + или выбрать мышкой на палитре Калькулятор соответствующий оператор, после этого набрать 7 и нажать = на клавиатуре или выбрать мышкой на палитре Калькулятор соответствующий значок. После этого программа MathCAD сама посчитает и выдаст ответ:

При наборе символов может вызвать затруднение само составление уравнения.

Набираем на клавиатурой нужное число 14 , нажимаем на клавиатуре клавишу со значком / или выбираем мышкой соответствующий значок / на палитре Калькулятор, после этого нажимаем = на клавиатуре или выбираем мышкой соответствующий значок на палитре Калькулятор. Тогда программа MathCAD сама посчитает и выдаст ответ:

Сложные математические действия в MathCad

7. После ввода цифры 2 выделение осталось на этой цифре, поэтому чтобы перейти от выражения к выражению 8 нам нужно нажать пробел столько раз, пока выделение примет вид как в выражении 8. 9. Нужно нажать знак минус на клавиатуре или на панели Калькулятор. 10. Нажмем на панели Калькулятор значок tan , в скобках наберем цифру 46 и получим выражение.

Так как мы вводим значение угла в градусах, то нужно допечатать сразу после цифры – deg.

Например, для задания угла в 90 градусов нужно набрать:

Немного сложнее обстоит дело с заданием угла в градусах справа от знака равенства. Т.е. в уже полученном значении угла в радианах. Для этого нужно после получения ответа в радианах щелкнуть мышкой на полученном значении:

Как вставить символ дельта в маткаде

Войти

Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal

mathcad, дельта-функция (Дирака)

В Mathcad нет δ-функции, как нет её в чистом виде ни в одном математическом пакете. Очевидно, что заставить комп работать с функциями, подобными этой, можно только с помощью подпрограмм или скриптов, которые только чисто логически смогут реализовать то, что дано из теории.
Например у одной из таких нереализуемых напрямую функций, а получаемых на компе только с помощью «костылей» или «логической обработки», δ-функции есть три определяющих её свойства: функция имеет отличное от нуля значение в одной точке, в этой точке функция бесконечна, площадь под δ-функцией существует и задается как её вес.
Отсюда очевидно, что следующие записи (и более извращенные попытки, типа отжига dΦ(x)/dx) никак не могут быть численными реализациями поставленных условий (первый вариант еще более-менее справедлив для некоторых частных случаев):

более того, эта запись говорит о том, что автор претендует на оценку «-1», т. к. обнаруживает абсолютное непонимание примитивнейшей теории (а задающие вопросы по этому поводу смело могут идти и перечитывать всю ВМ с нуля).
Но попытки бездумно использовать это дело в численных методах все-таки встречаются. Звучит вопрос «А че эта ска не работает? А??» (да-да, mathcad самое глючное создание).

И что же можно обнаружить? А вот тут лежит «работа» некоего чела, которую рецензировал, между прочим, к. т. н. Ну я не знаю, может это в Таганроге можно такую чушь писать под столом, но зачем в сеть то её кидать?
Сначала этот чувачек (гений сыска Кавчук С.В.) задает вторым вариантом δ-функцию, и делает вид, что все нормально и такое быть может, потом использует её в записях итогов вычислений в уме (но нах тогда спрашивается она нужна, если сама среда использовать её не может, и его кривые руки это показывают). И в этих записях, блин, нет, это надо видеть, он умножает числа на Dirac(t) и даже не икает!

как в Mathcad построить график функции дирака? Как задается Дельта функция Дирака в Mathcad?

Как написать дельту в маткаде

В среде MathCAD заданная непрерывная функция имеет следующий вид:

Дискретную последовательность или дискретный сигнал v ( t ) выражают через исходный непрерывный (аналоговый) сигнал следующим образом:

,(2)

где δ( t ) – дискретная дельта-функция;

Δ t – шаг дискретизации;

– последовательность дельта-функций;

m – число дискретных точек.

Одиночную дельта-функцию запишем в виде

Дельта-функция в среде MathCAD имеет вид

Дискретный сигнал равен

Для записи функции арктангенса воспользуемся встроенной функцией MathCAD atan ( x ), а для записи синуса – sin ( x ). Зададим период функции T = 5 π и шаг дискретизации Δ t = 1.

Окончательно программу для расчёта дискретной функции v ( t ) запишем в следующем виде:

Для построения графика зависимости сигнала x = f ( t ) необходимо выбрать в главном меню программы MathCAD «Вид – Панели инструментов – График», далее на появившейся панели «Graph» выбрать элемент «Декартов график», после чего на рабочей области программы MathCAD появится область построения графика. По оси ординат области построения графика необходимо ввести « x ( t )», а по оси абсцисс – « t ». Далее двойным щелчком левой кнопки мыши по области построения графика необходимо вызвать панель форматирования графика. На закладке «Оси X – Y » панели форматирования для удобства отображения нужно установить размер сетки, кратный по оси ординат ­амплитуде сигнала, а по оси абсцисс – периоду сигнала. На закладке «Трассировки» нужно установить толщину линий графика, для этого необходимо выделить мышью строку «trace1» в списке линий и в поле «Вес» выбрать «3». Кроме того, для удобства можно установить диапазон значений по оси абсцисс путём ввода соответствующих значений в области на оси абсцисс графика. По оси абсцисс введём диапазон изменения непрерывного сигнала от 0 до T .

Рис. 1. График зависимости функции x = f ( t )

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

Рис. 2. График зависимости одиночной дельта-функции δ( t ) от времени t

Чтобы построить график зависимости последовательности дельта-функций от времени нужно в область для ввода переменных на оси ординат ввести выражение: . Этот график показан ниже.

Рис. 3. График зависимости последовательности дельта-функций от времени

На рис. 4. показан график зависимости дискретной функции v ( t ) для шага дискретизации Δ t = 1.

Рис. 4. График зависимости дискретной функции от времени v = f ( t )

для шага дискретизации Δ t = 1

Чтобы построить график зависимости дискретной функции от времени v = f ( t ) для шага дискретизации Δ t = 2 нужно в программе расчёта присвоить параметру Δ t значение 2, после чего программа автоматически произведет перерасчёт.

Рис. 5. График зависимости дискретной функции от времени v = f ( t )

для шага дискретизации Δ t = 2

С увеличением шага дискретизации Δ t уменьшается частота решётчатой функции и уменьшается информативная составляющая непрерывного сигнала, подвергнутого дискретизации.

Функция хевисайда в маткаде – Иллюстрированный самоучитель по MathCAD 12 › Алгебраические вычисления › Вспомогательные функции [страница — 41] | Самоучители по математическим пакетам

mathcad, дельта-функция (Дирака) — & i can’t stop

В Mathcad нет δ-функции, как нет её в чистом виде ни в одном математическом пакете. Очевидно, что заставить комп работать с функциями, подобными этой, можно только с помощью подпрограмм или скриптов, которые только чисто логически смогут реализовать то, что дано из теории.
Например у одной из таких нереализуемых напрямую функций, а получаемых на компе только с помощью «костылей» или «логической обработки», δ-функции есть три определяющих её свойства: функция имеет отличное от нуля значение в одной точке, в этой точке функция бесконечна, площадь под δ-функцией существует и задается как её вес.
Отсюда очевидно, что следующие записи (и более извращенные попытки, типа отжига dΦ(x)/dx) никак не могут быть численными реализациями поставленных условий (первый вариант еще более-менее справедлив для некоторых частных случаев):

более того, эта запись говорит о том, что автор претендует на оценку «-1», т. к. обнаруживает абсолютное непонимание примитивнейшей теории (а задающие вопросы по этому поводу смело могут идти и перечитывать всю ВМ с нуля).
Но попытки бездумно использовать это дело в численных методах все-таки встречаются. Звучит вопрос «А че эта ска не работает? А??» (да-да, mathcad самое глючное создание).

И что же можно обнаружить? А вот тут лежит «работа» некоего чела, которую рецензировал, между прочим, к. т. н. Ну я не знаю, может это в Таганроге можно такую чушь писать под столом, но зачем в сеть то её кидать?
Сначала этот чувачек (гений сыска Кавчук С.В.) задает вторым вариантом δ-функцию, и делает вид, что все нормально и такое быть может, потом использует её в записях итогов вычислений в уме (но нах тогда спрашивается она нужна, если сама среда использовать её не может, и его кривые руки это показывают). И в этих записях, блин, нет, это надо видеть, он умножает числа на Dirac(t) и даже не икает!

как в Mathcad построить график функции дирака? Как задается Дельта функция Дирака в Mathcad?

Урок 5. Переменные и функции в Mathcad

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

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

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

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

Оператор определения не менее важен, чем оператор вычисления. Значение выражения y можно отобразить только после присвоения ему какого-либо значения. x и y здесь являются переменными.

Введите следующие выражения:

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

Поместите курсор перед числом 4 в первом выражении:

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

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

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

Введите следующие выражения:

Попробуйте изменить значение x на 100, 0.5, -4 и 0:

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

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

  • с любой строчной или прописной буквы
  • другие символы, если они не являются операторами
  • символы с вкладки Математика –> Операторы и символы –> Символы
  • символы из Таблицы символов Windows

Вот несколько примеров:

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

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

В Mathcad есть два различных вида подстрочных индекса для переменных:

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

Чтобы набрать описательный подстрочный индекс, введите имя переменной, нажмите [Ctrl+-] и наберите подстрочный индекс:

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

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

Разница видна при щелчке мышью по выражению:

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

Функции

Переменные можно использовать, только если они были определены ранее. Однако есть одно важное исключение – определение функции. Можно определить собственную функцию, как на примере ниже:

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

Если Вы определили a до определения функции, значение a не будет изменено в процессе вычисления значения функции.

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

Этой проблемы можно избежать, задав для переменной и функции разные обозначения. Об этом мы поговорим в уроке 10 «Обозначения и единицы измерения».

Функции могут содержать две и более переменной:

Здесь значения переменных xи yтакже не изменяются при вычислении функции.

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

В Mathcad есть большое число встроенных функций. Зайдите на вкладку Функции:

Список всех функций можно увидеть, щелкнув по кнопке Все функции.

Заметьте, что тригонометрические функции принимаю в качестве аргумента угол в радианах, а не в градусах. Для использования градусов используйте символ с вкладки Математика –> Операторы и символы –> Символы:

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

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

Резюме
  1. В Mathcadесть два различных знака равенства: определить := и вычислить =.
  2. Имя переменной обычно начинается с буквы; цифры нельзя использовать в начале переменной. Также можно использовать символы с клавиатуры, с панели Математика –> Операторы и символы –> Символы, с Таблицы символов Windows.
  3. Чтобы определить переменную и задать ей значение:
  • щелкните мышью на пустую область;
  • введите имя переменной;
  • нажмите [:] для ввода оператора определения;
  • введите значение, которое Вы хотите присвоить.
  • щелкните мышью в конце имени переменной;
  • нажмите [Ctrl+-];
  • введите подстрочный индекс.
  1. Чтобы дать переменной индекс массива:
  • щелкните мышью в конце имени переменной;
  • нажмите открывающую квадратную скобку [;
  • введите число – подстрочный индекс.
  1. Переменную можно использовать ниже или правее места, где она определена.
  2. Имя функции следует набирать по тем же правилам, что и имя переменной, но ввод имени функции заканчивается вводом [(]. В скобках содержатся аргументы функции.
  3. Переменные в функциях – локальные, т.е. они определены только при использовании функции.
  4. Математическую область можно встроить в текст. Эту возможность следует использовать, если необходимо вставить над- и подстрочные символы в текст.
Другие интересные материалы

Иллюстрированный самоучитель по MathCAD 12 › Алгебраические вычисления › Вспомогательные функции [страница — 41] | Самоучители по математическим пакетам

Вспомогательные функции

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

  • Discontinuous functions (Разрывные функции).
  • Round-off and truncation (Сокращения и округления) (листинг 2.7).
  • Sorting (Сортировки).
  • Strings (Строковые).
  • Finance functions (Финансовые).
  • Coordinate transform (Преобразования координат) (листинг 2.8).
  • Conditional (Условия) (листинг 2.9).
  • Expression type (Типа выражения).

Листинг 2.7. Функции сокращения и округления:

Примечание
В прежних версиях Mathcad (вплоть до 11-й включительно) функции округления и сокращения могли выдавать результат, отличный от аналитического (что было связано с принципом представления чисел). В Mathcad 12 эти функции работают более правильно, выводя точный результат округления, совпадающий с символьным

Листинг 2.8. Функции преобразования координат на плоскости:

Листинг 2.9. Функции знака и условия:

Примечание
Разработчики Mathcad 12 восстановили встроенную функцию until, которая вплоть до 2000-й версии служила для включения в документы циклов без помощи программирования. Функция until (x, у) служит для «непрограммной» имитации цикла: если х<0, происходит вычисление очередного у, затем опять вычисляется новое х (так или иначе зависящего от у), снова проверяется условие х<0 и т. д. Финальное значение у, при котором х становится неотрицательным, выдается в качестве результата функции
.


Рис. 2.9. Функции Хевисайда и устаревшая функция Кронекера

Внимание!
Начиная с Mathcad 12 функция (символ) Кронекера 5 (рис. 2.9) изъята из списка встроенных функций
.

Урок 11. Программирование в Mathcad

Mathcad содержит встроенную среду программирования, что значительно расширяет возможности вычислительного пакета. Операторы программирования находятся в меню Математика –> Операторы и символы –> Программирование:

Этих операторов не очень много, но и они позволяют построить достаточно сложные алгоритмы. К тому же, уже ознакомившись с базовыми понятиями (операторы, переменные, константы, функции и т.д.), можно использовать Mathcad, если Вы хотите лишь начать изучать программирование.

  1. «Программирование» – для создания программной структуры.
  2. «Локальное назначение» – знак «равно» для программ.
  3. «Оператор if»– оператор условия.
  4. «Оператор else»– альтернативный выбор.
  5. «Оператор return» – выход из программы.
  6. «Try / On Error» – применяется, если при выполнении программы может возникнуть ошибка.

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

«Программирование» и «Локальное определение»

Создадим программу, которая вычисляет разницу между двумя переменными a и b.

На рисунке ниже представлена структурная диаграмма программы:

Здесь всего три элемента: вход, действие и выход. Вместо структурной диаграммы можно использовать другие способы, помогающие созданию программы, например, блок-схемы или псевдокод.

Определите ввод переменных a и b:

Нажмите оператор «Программирование» на панели Математика –> Программирование:

Нажмите [Enter] для создания второй строки:

Переместите курсор в верхний местозаполнитель, затем вставьте оператор «Локальное назначение»:

Заполните местозаполнители слева и справа от оператора:

Переместите курсор в нижний местозаполнитель и вставьте оператор «return»:

Важно! Операторы программирования return, else, if, while и т.д. следует вставлять из меню программирования. Ввод этих команд с клавиатуры не приведет к желаемому результату.

Введите переменную в местозаполнитель:

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

У операторов программирования есть свои горячие клавиши. Попробуйте запомнить их:

  • «Программирование» – правая квадратная скобка ]
  • «Локальное назначение» – левая фигурная скобка . Появится вторая строка, которая относится к оператору if:

Введите критерий выбора и желаемое значение функции. Обратите внимание на серые линии справа:

Нажмите на внутреннюю серую линию (станет мигающей синей), затем вставьте оператор else. Появится еще одна строка, относящаяся к else:

Введите необходимую функцию под else. Внутренняя серая линия удлинится, что указывает на то, что операторы ifи else связаны между собой. Нажмите на нее, нажмите [Enter], затем вставьте оператор return:

Проверьте программу, построив график функции:

При работе с программой можно добавлять новые строки нажатием клавиши [Enter]. Где появится местозаполнитель, зависит от положения курсора. Выбрана внутренняя серая линия:

Курсор стоит за x­ 2 :

На структурной диаграмме показаны различные варианты выбора. Наиболее простой способ создать программу для этой задачи – использовать три различных операторов выбора (в Mathcad нет аналога оператора case).

Здесь важно правильно задать границы независимой переменной. Если Вы введете:

то точки 0 и 1 будут исключены, а Mathcad выдаст некорректный результат для этих значений.

Проверим программу для некоторых входных значений:

Для значений, не имеющих смысла, Mathcad выдаст сообщение об ошибке.

Функции в программах

В Mathcad встроено множество функций, которые могут быть полезными в том числе и в программах. Рассмотрим некоторые из них.

Векторы и матрицы

Откройте Функции –> Все функции и откройте раздел Векторы и матрицы. Найдите функции last() и length(). Это функции для определения некоторых свойств вектора:

Функция length() определяет длину вектора, т.е. количество элементов в нем, а функция last() выводит индекс последнего элемента. По умолчанию в Mathcadнумерация элементов вектора начинается с нуля, поэтому у четвертого элемента массива индекс 3.

Наибольший общий делитель:

Наименьшее общее кратное:

Остаток от деления x на y:

«Разное» содержит функцию time(), которая возвращает системное время момента активации функции.

Строки в Mathcad заключаются в двойные кавычки:

Строки можно задавать в качестве переменных, но их нельзя использовать в вычислениях. (Строку, содержащую только числа, можно преобразовать в константу.)

Длина строки (включая пробелы):

Строки могут быть полезны для задания в программах сообщений об ошибках.

Усечение и округление

Наименьшее целое число, большее x:

Наибольшее целое число, меньшее x:

Список функций Mathcad огромен. Два совета по ознакомлению с новыми функциями:

  1. Подведя указатель мыши к имени функции в списке, Вы увидите ее полное название и краткое описание.
  2. Если Вы вставите функцию в рабочую область, а затем нажмете [F1], Вы получите расширенное описание функции.
Try / On Error

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

Ниже представлена программа с тремя операторами if внутри блока try:

При неверном вводе появится сообщение об ошибке. Таким образом, можно отследить большую часть ошибок, но не все:

Как написать дельту в маткаде

Войти

Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal

mathcad, дельта-функция (Дирака)

В Mathcad нет δ-функции, как нет её в чистом виде ни в одном математическом пакете. Очевидно, что заставить комп работать с функциями, подобными этой, можно только с помощью подпрограмм или скриптов, которые только чисто логически смогут реализовать то, что дано из теории.
Например у одной из таких нереализуемых напрямую функций, а получаемых на компе только с помощью «костылей» или «логической обработки», δ-функции есть три определяющих её свойства: функция имеет отличное от нуля значение в одной точке, в этой точке функция бесконечна, площадь под δ-функцией существует и задается как её вес.
Отсюда очевидно, что следующие записи (и более извращенные попытки, типа отжига dΦ(x)/dx) никак не могут быть численными реализациями поставленных условий (первый вариант еще более-менее справедлив для некоторых частных случаев):

более того, эта запись говорит о том, что автор претендует на оценку «-1», т. к. обнаруживает абсолютное непонимание примитивнейшей теории (а задающие вопросы по этому поводу смело могут идти и перечитывать всю ВМ с нуля).
Но попытки бездумно использовать это дело в численных методах все-таки встречаются. Звучит вопрос «А че эта ска не работает? А??» (да-да, mathcad самое глючное создание).

И что же можно обнаружить? А вот тут лежит «работа» некоего чела, которую рецензировал, между прочим, к. т. н. Ну я не знаю, может это в Таганроге можно такую чушь писать под столом, но зачем в сеть то её кидать?
Сначала этот чувачек (гений сыска Кавчук С.В.) задает вторым вариантом δ-функцию, и делает вид, что все нормально и такое быть может, потом использует её в записях итогов вычислений в уме (но нах тогда спрашивается она нужна, если сама среда использовать её не может, и его кривые руки это показывают). И в этих записях, блин, нет, это надо видеть, он умножает числа на Dirac(t) и даже не икает!

как в Mathcad построить график функции дирака? Как задается Дельта функция Дирака в Mathcad?

Разное2 / Гурский, Турбина — Вычисления в MathCAD 12 — 2006 / Гурский, Турбина — Вычисления в Mathcad12_Глава_18

round(x,n) — возвращает x, округленное до n десятичных позиций. Если n=0, то ре зультатом будет округление до x до целого числа. При положительном n система отбросит все десятичные знаки, лежащие правее n й позиции после запятой. Если же n будет определено как целое отрицательное число, то округление будет произ водиться в целой части x;

Round(x,y) — возвращает округленное до целого знака x/y, умноженное на у.

Функции, имена которых начинаются с прописной буквы, связаны с обычными функ циями округления следующим соотношением: F(x,y)=f(x/y) y. Они оказываются по лезными в том случае, если необходимо провести округление размерной величины, поскольку функции, имена которых начинаются со строчной буквы, не работают с раз мерностями. Чтобы округлить размерную величину, задайте в качестве второго пара метра функции Floor(x,y), Ceil(x,y), Trunc(x,y) или Round(x,y) исходную единицу измере ния. Помните, в независимости от указанной размерности система автоматически переведет размерную переменную в единицы определенной по умолчанию системы и выразит через них округленный результат. Поэтому, проводя округление величины, содержащей единицы измерения, выбирайте ту систему, в которой они являются базо выми (о том, как это сделать, рассказано в гл. 17).

Функции округления можно использовать и по отношению к комплексным числам. В данном случае операции округления проводятся по отдельности с действительной и мнимой частью.

Пример 18.3. Функции округления

Пример 18.4. Округление с заданными параметрами

Пример 18.5. Округление размерных величин

18.7. Функции условий и «ступенек» (Piecewise Continuous) 683

Кстати, производя округление, например, до 5 го знака, вы можете получить ответ с де сятичной частью только из трех знаков. Связано это с тем, что по умолчанию все отве ты численных расчетов отображаются в Mathcad с точностью до 0.001. Вопрос о том, как изменить формат численных результатов, весьма подробно рассматривается в гл. 2.

18.7. Функции условий и «ступенек» (Piecewise Continuous)

Функции этой группы используются прежде всего при создании алгоритмов в про граммировании и при всей своей простоте иногда могут быть незаменимы. Всего к этой категории относятся шесть функций.

antisymmetrik tensor(i,j,k). Эта функция определяет, сколько перестановок нужно осу ществить, чтобы преобразовать последовательность (0, 1, 2) в (i, j, k). Если количе ство перестановок четно, то функция возвращает 1, если нечетно то –1. Если же

в заданной вами последовательности имеются повторения, то результатом работы рассматриваемой функции будет 0. Обязательным условием для параметров i, j, k является то, что они должны быть целыми числами от 0 до 2 (точнее, от ORIGIN до

ORIGIN+2). В тексте документа указанная функция обозначается с помощью гречес кой буквы ε («ипсилон»: e+Ctrl+G).

heaviside step(x). Ступенька Хевисайда. Возвращает 1, если x≥0, и 0 — в противном

случае. Переменная x должна быть действительным числом. В документе обозна чается греческой буквой φ («фи»: f+Ctrl+G).

if(cond,x,y). Возвращает x, если логическое условие cond оказывается верным, и y —

в противоположном случае.

Kronecker delta (x,y). Дельта символ Кронекера. Возвращает 1, если x=y, и 0 — во всех остальных случаях. В документ вводится как греческая δ («дельта»: d+Ctrl+G). Пе ременные x и y должны быть безразмерными целыми числами.

sign(x). Функция сигнум. Возвращает 0 для x=0, 1 — для положительных x, –1 — для отрицательных. Переменная x должна быть действительным числом.

until(x,y). Функция, возвращающая õ до тех пор, пока выполняется условие ó. Ис пользуется в расчетах с ранжированными переменными как аналог оператора цик ла While.

Пример 18.6. Функции «ступенек» и условий

684 Глава 18. Специализированные функции

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

18.8. Функции пользователя (User Defined)

Если вы профессиональный программист и владеете, например, C++, то при необхо димости вы можете создавать различные приложения под Mathcad и самостоятельно. В том числе вы можете написать и свою функцию. Сохранив ее затем в специальной папке userEFI каталога программы в формате DLL, вы сможете использовать ее точно так же, как функции, созданные программистами Mathsoft. Так как специфика данно го вопроса выходит далеко за пределы этой книги, то подробно о нем говорить мы не будем. Отметим лишь, что более подробную информацию вы можете получить в элек тронной книге Developer’s References (Заметки для разработчиков) меню Help (Помощь) либо на сайте компании Mathsoft.

Чтобы категория User Defined не пустовала, создатели Mathcad занесли в нее две функции.kroneker(m,n). Произведение Kронекера для квадратных матриц m и n.

Пример 18.7. Произведение Кронекера

Psi(x). Пси функция. Была введена для подсчета частичной суммы гармонического ряда. Определяется как:

Пример 18.8. Функция Psi

18.9. Специальные функции (Special)

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

18.9. Специальные функции (Special) 685

fhyper(a,b,c,x). Гипергеометрическая функция Гаусса. Является решением гипергео метрического уравнения:

Для |x|<1 данная функция определяется с помощью гипергеометрического ряда:

Рассматриваемая функция очень важна для математики. Так, через нее, в частно сти, выражаются многие трансцендентные функции (см. пример 18.9). Все парамет ры для данной функции должны являться действительными числами, переменная x должна не превышать по абсолютной величине 1.

Пример 18.9. Гипергеометрическая функция Гаусса

mhyper(a,b,x). Конфлюэнтная гипергеометрическая функция. Является решением дифференциального уравнения вида

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

Gamma(a,z). Гамма функция Эйлера. Важнейшая трансцендентная аналитическая функция, распространяющая понятие факториала на нецелочисленные значения. Че рез гамма функцию выражается огромное количество интегралов, специальных функ ций, бесконечных произведений, поэтому ее практическая и теоретическая значимость намного превышает важность любой другой встроенной функции этой категории.

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

может быть подсчитана с помощью встроенной функции Ã(z) (аналогично некото рым другим рассмотренным выше функциям, обозначение гамма функции в спис ке окна Insert Function (Вставить функцию) не совпадает с ее видом в документе). При этом z должна быть действительным или комплексным скаляром и не равнять ся 0, –1, –2, –3…

686 Глава 18. Специализированные функции

Также в Mathcad имеется встроенная функция Ã(a,x), позволяющая вычислять так называемую неполную гамма функцию:

Параметры a и x для этой функции должны быть положительными действительны ми числами.

Заготовка для вычисления обеих приведенных выше функций одна и та же. Если вам нужно будет найти значение обычной гамма функции, то просто удалите в за готовке один из двух маркеров. Или лучше просто наберите нужный текст с клави атуры (греческую Г можно задать, введя латинскую G и нажав сочетание

При численном расчете полной гамма функции на компьютере используется эф фективный алгоритм аппроксимации, позволяющий с высокой точностью опреде лять гамма функцию для любого положительного аргумента (в том числе и комп лексного, действительная часть которого больше либо равна 0). Расчетная формула метода:

При γ=5, N=6 и правильно подобранных параметрах p n данный метод обеспечивает точность до 10 го знака мантиссы. Убедимся в этом, сравнив результаты, получен ные с помощью встроенной функции Ã(õ) и приведенной формулы.

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

18.9. Специальные функции (Special) 687

При х>а+1 неполная гамма функция вычисляется через разложение в цепную дробь.

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

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

С гамма функцией работает и символьный процессор, поэтому она может прини мать участие как в численных, так и в символьных расчетах.

Пример 18.10. Гамма функция в расчетах различных типов (рис. 18.5)

688 Глава 18. Специализированные функции

Рис. 18.5. Гамма функция

Her(n,x). Функция возвращает значение ортогонального полинома Эрмита степени n в точке x (n — целое положительное число, x — действительная величина). Поли номы Эрмита являются решением следующего дифференциального уравнения:

Полиномы Эрмита в Mathcad можно вычислить и в аналитическом виде.

Пример 18.11. Полиномы Эрмита (рис. 18.6)

ibeta(a,x,y). Эта функция служит для вычисления неполной бета функции с пара метром a, которая определяется с помощью следующего выражения:

Переменные x и y для данной функции должны быть положительными действитель ными числами, параметр à должен быть определен как положительная величина, принадлежащая интервалу от 0 до 1. Данная функция может участвовать и в сим вольных вычислениях.

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

18.9. Специальные функции (Special) 689

Рис. 18.6. Полиномы Эрмита

Jac(n,a,b,x). Эта функция вычисляет значение полинома Якоби степени n в точке x с параметрами a и b. Степень n должна быть задана целым положительным числом, x должен быть действительной величиной, a и b — действительными числами боль ше –1.

Многочлены Якоби являются частным случаем гипергеометрической функции и были получены при решении следующего дифференциального уравнения:

Используя вычислительные возможности символьного процессора Mathcad, поли номы Якоби можно рассчитывать и в аналитическом виде.

Пример 18.12. Аналитический расчет полиномов Якоби (рис. 18.7)

Рис. 18.7. Полиномы Якоби

690 Глава 18. Специализированные функции

Tcheb(n,x). Полином Чебышева 1 го рода порядка n (рис. 18.8, слева). Частный слу чай полинома Якоби, полученный при решении дифференциального уравнения вида

Аналогично функции Jac, x для Tcheb должен быть действительной величиной, n — целым положительным числом.

Ucheb(n,x). Полином Чебышева 2 го рода порядка n (рис. 18.8, справа). Является решением дифференциального уравнения вида

Параметры для Ucheb задаются по тем же правилам, что и для Tcheb.

При необходимости в Mathcad можно найти и аналитический вид полинома Чебы шева для данного набора параметров. В принципе, для этого даже можно использо вать приведенный в примере 18.12 алгоритм.

Рис. 18.8. Полиномы Чебышева

Leg(n,x). Полином Лежандра степени n. Частный случай полинома Якоби, который был получен при решении следующего дифференциального уравнения:

Параметр порядка n должен быть целым положительным числом, переменная x — действительным скаляром.

Lag(n,x). Многочлен Лагерра степени n в точке x. Является решением дифференци ального уравнения вида:

Параметры для функции Lag задаются по таким же правилам, что и для функции Leg (рис. 18.9).

18.10. Строковые функции (String) 691

Рис. 18.9. Полиномы Лагерра и Лежандра

18.10. Строковые функции (String)

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

Всего в категории String (Строковые) имеется 10 функций.

concat(S1,S2,S3….). Пожалуй, самая важная строковая функция, позволяющая объе динить несколько строк в одну. Последовательность слияния строк определяется порядком определения их имен в скобках concat. При работе с функцией concat сле дует учитывать, что пробел также рассматривается как символ.

Пример 18.13. Слияние строк

error(S). С этой функцией мы уже встречались в гл. 4, посвященной программиро ванию. С помощью функции error можно создавать характерные для Mathcad сооб щения об ошибках на всплывающих желтых панелях (рис. 18.10).

Рис. 18.10. Использование функции error

На рис. 18.10 приведен пример создания функции, вычисляющей секанс. Данная функ ция не определена при sin(x)=0, поэтому мы, чтобы предупредить возможность некор ректной работы алгоритма, должны предусмотреть эту ситуацию. Однако если в качестве условия вывода сообщения об ошибке мы используем строгое равенство синуса нулю, то при попытке найти секанс от π или от 2π будет получен совершенно неверный результат:

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

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