Что является разделителем целой и дробной части в системе mathcad
Математические выражения в документе PTC Mathcad Prime отображаются в привычной форме: деление с дробной чертой, показатели степени в верхнем положении и составные дроби. Редактор уравнений PTC Mathcad Prime работает внутри структуры математического выражения. При вводе PTC Mathcad Prime собирает части выражения, используя правила приоритета и дополнительные правила для упрощения ввода знаменателей, степеней и подкоренных выражений.
Вставка математических элементов
Математика — это режим вставки по умолчанию в PTC Mathcad Prime . Начальная точка вставки помечается синим перекрестием . Текущую точку вставки можно изменить, щелкнув пустое место в документе. При вводе букв, чисел и операторов появляется область формул с синей вертикальной линией в точке вставки. Этот курсор можно использовать для правки математических выражений.
Все, что начинается с цифры, PTC Mathcad Prime интерпретирует как число.
Точки и запятые используются следующим образом.
• Точка используется в качестве разделителя целой и дробной частей числа.
• Запятая используется для отделения аргументов функции и индексов матрицы или для указания шага в диапазоне.
В числах, больших 999, не используется ни запятая, ни точка для разделения цифр на группы по три. Например, для ввода числа десять тысяч нужно ввести с клавиатуры 10000.
Группировка математических элементов
Часть математических выражений можно выбрать с помощью клавиши пробела или клавиш со стрелками. Математические элементы можно группировать по одному либо все одновременно. Расположение курсора с левой или правой стороны элемента может повлиять на группировку. Выбранную группу можно копировать и вставлять в другую область формул. К выбранной группе можно применять оператор до тех пор, пока группа не будет включать в себя результат:
Группа, не включающая результат, подобна набору элементов, заключенному в невидимые круглые скобки. Например, операнды представляют собой группы, поэтому при замене или удалении оператора группы остаются без изменений:
1.4. Вычисления в Mathcad
В Mathcad, как и в языках программирования, константы, переменные и функции могут иметь имя-идентификатор, которое может состоять из следующих элементов: прописных и строчных латинских и/или греческих букв; цифр от 0 до 9; символов подчеркивания (_), штриха (`), процента (%), бесконечности (∞). В системе Mathcad имеется ряд ограничений на использование некоторых символов в начале имени, поэтому обычно имена начинаются с буквы. Все символы имени должны быть напечатаны одинаковым шрифтом. При составлении имени следует учитывать, что в отличие от большинства других программ Mathcadразличает в формулах не только прописные и строчные буквы, но даже стиль их оформления. Например, переменныеN,N,n,nрассматриваются как различные и не взаимозаменяемы [2]. Примеры правильных имен-идентификаторов Mathcad: S, ht_, x2, wmin, DORk%, рw, λ5, f . Ввод имени переменной с нижним индексом, например, wmin, осуществляется следующим образом: вводится часть имени без индекса (w), затем на клавиатуре набирается десятичная точка (на экране она не отображается), после чего вводятся символы нижнего индекса (min). Не следует путать буквенный нижний индекс, являющийся частью имени переменной, с нижним индексом элемента массива данных. Выглядят они одинаково, но по смыслу различны. Нижний индекс массива осуществляет ссылку на элемент массива и вводится с помощью кнопкипалитры векторных и матричных операций. Mathcad не делает различий между именами переменных и именами функций. Если вначале была определена функция f(x), а затем задана переменнаяf, то после этого использование определенияf(x)окажется невозможным.
1.4.2. Ввод математических выражений
Важным преимуществом Mathcadявляется то, что он отображает формулы практически в том же виде, как их обычно пишут на бумаге. Ввод символов, имеющихся на клавиатуре, можно производить непосредственно с клавиатуры или с помощью соответствующих кнопок палитр символов. В качестве разделителя между целой и дробной частями десятичных чисел используется точка. При вводе произведения знак умножения между сомножителями обязателен (при этом Mathcad преобразует оператор умножения «*» в традиционную точку). Общепринятый оператор деления «/» Mathcad интерпретирует как горизонтальную дробную черту стандартного вида. При вводе составных операторов в области формулы автоматически появляются слόты – заполнители в виде черных прямоугольников, предназначенные для записи соответствующих операндов, например, для ввода корня произвольной степени они имеют вид: . Перемещение по слотам осуществляется щелчком левой кнопки мыши на них или клавишейTab. Содержимое уголкового курсора становится первым операндом очередного вводимого оператора, т. е. каждое следующее действие при вводе формулы относится к данным, заключенным в уголковый курсор. Это свойство позволяет значительно упростить процесс ввода сложных формул, где порядок операций определяется скобками. Элементы формулы, которые в рамках операции должны рассматриваться как единое целое, нужно «охватить» уголковым курсором, а затем выполнить относящееся к ним действие. Управление уголковым курсором осуществляется следующим образом: нажатие на клавиатуре клавиши ↑ или пробела увеличивает объем содержимого уголкового курсора (т. е. объединяет операторы), нажатие клавиши ↓ – уменьшает. При правильном вводе формулы Mathcadавтоматически заключает в скобки нужные ее фрагменты. При необходимости скобки можно удалять и вставлять по одной обычными способами редактирования. Чтобы заключить содержимое уголкового курсора в скобки, следует нажать клавишу ‘ (апостроф). Для удаления парных скобок нужно поместить в уголковый курсор фрагмент формулы, включая скобки, и нажать клавишиDeleteилиBackSpace. Того же результата можно добиться, поместив курсор ввода справа от левой скобки и нажавBackSpace. Для ввода стандартных математических функций используется кнопка на панели инструментов. Наиболее часто употребляемые функции имеются и на арифметической палитре . Кроме того, имя функции можно вводить побуквенно непосредственно с клавиатуры. Аргумент функции всегда записывается в скобках (табл. 1). По умолчанию аргумент любой тригонометрической функции предполагается в радианах. При необходимости можно ввести единицы измерения конкретной переменной или константы. Чтобы это сделать, нужно просто умножить ее на соответствующую единицу, которая выбирается из списка в менюМатематика→ Единицы → Вставить единицы, например,sin90° следует ввести какsin(90∙deg). Степенное выражение вида sin 2 xвMathcadзаписывается как sin(x) 2 . Ввод операторов суммирования (∑), произведения (∏), интегрирования (∫) и некоторых других осуществляется аналогично стандартным функциям с помощью соответствующих кнопок палитры операторов математического анализа . Таблица 1 Примеры записи математических функций в Mathcad
Наименование функции | Математическая запись | Запись в Mathcad |
Тангенс | tg x | tan(x) |
Натуральный логарифм | lnx | ln(x) |
Десятичный логарифм | lgx | log(x) |
Арксинус | arcsinx | asin(x) |
В Mathcadдля разных целей используются три разных знака равенства.
- Значения переменных и функций задаются при помощи оператора присваивания := , для ввода которого можно нажать на клавиатуре клавишу двоеточия :или использовать кнопкупалитры простых операторов. Например:x:=1,y:=2·sin(x+5),М:=4.
- Знак булева равенства используется в логических операциях, в том числе при записи уравнений. Для его ввода на клавиатуре можно нажать CTRL+ = или использовать кнопкупалитры простых операторов. Например:x +y= 5·x.
- Обычный знак равенства используется для получения результата, например: x= или sin(2·+7) =. В ответ Mathcad выводит текущее значение записанной слева от знака равенства переменной или результат расчета по заданной формуле.
Рассмотрим основные правила построения математических выражений и выполнения расчетов в Mathcad на конкретном примере. Пусть нужно вычислить приa= 0,8;x= 4,56. В табл. 2 приведена последовательность действий для решения этой задачи, результат работы см. на рис. 4. Пропущенные при вводе формулы символы можно вводить обычным образом, установив курсор в нужное место. Для вставки пропущенного операнда послеимеющегося операнда нужно поместить в уголковый курсор имеющийся операнд,сначалаввести знак математической операции, а затем набрать пропущенный операнд. Вставка пропущенного операндапередимеющимся операндом выполняется аналогично, за исключением того, что после заключения операнда в уголковый курсор нужно перейти в режим вставки символов, нажав клавишуInsert (при этом уголковый курсор изменит цвет с синего на красный, а срезанный угол будет слева). Таблица 2 Пример ввода формулы и вычисления в Mathcad
Последовательность действий | Результат |
Выводим на экран арифметическую палитру символов | см. рис. 2 |
Вводим исходные данные: a :10.8 ;x :14.56 | |
Вводим y , затем – :1 | |
Вводим 2 и знак умножения *1 | |
На арифметической палитре выбираем (или из списка функций по кнопке выбираем sin(z)) | |
Вводим x | |
На арифметической палитре выбираем (или на клавиатуре нажимаем1^1) | |
Вводим степень 2, затем четыре раза нажимаем 1↑1для охвата всего числителя уголковым курсором | |
Вводим символ деления 1/1 | |
На арифметической палитре выбираем символ | |
Вводим x + a, затем четыре раза нажимаем1↑1для охвата уголковым курсором всей дроби | |
Вводим с клавиатуры – и 51 | |
На свободном месте листа для получения результата расчета набираем y =1 | y = –4.196 (см. рис. 4) |
Замена разделителей целой и дробной частей
Уважаемые форумчане, подскажите пожалуйста, есть ли возможность заменить во всем документе MathCad точки(разделители целой и дробной частей) на запятые?
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Разделитель целой и дробной частей
Доброе время суток! Как в макросе можно посмотреть (а еще лучше — установить) разделитель целой.
Разделитель целой и дробной частей при INSERT
Сервер MS SQL 2000. Тип поля — decimal (18,6). Разделителем целой и дробной частей является ‘,’.
Проблема с разделителем целой и дробной частей числа в ASP
У меня проблема с разделителем целой и дробной частей числа в ASP. На машине стоит система Win2000.
Найти значение целой и дробной частей этого числа.
Дано число Х. Найти значение целой и дробной частей этого числа.
Что является разделителем целой и дробной части в системе mathcad
В настоящее время основным инструментом, накапливающим и обрабатывающим данные, является ЭВМ. Большинство входных и выходных данных результатов экспериментов, независимо от того, получены ли они человеком или ЭВМ, имеют конечную точность. Анализ ошибок в численном результате должен являться непременной составной частью любого серьезного вычисления на ЭВМ. Исходная информация для проведения численного эксперимента очень редко является точной, так как исходные величины являются экспериментальными данными или основаны на приблизительных оценках. Рассмотрение ошибок в вычислениях позволяет дать определенную оценку точности результатов. В случае привычного натурального эксперимента наиболее полным должен быть анализ погрешностей составных частей экспериментальной установки и анализ погрешностей ЭВМ в качестве основного инструмента обработки полученных данных. В данной статье представлен анализ возможной точности математических расчетов на ЭВМ. Дана статистика влияния количества и типа математических операций, типов данных на точность обрабатываемых результатов с помощью ЭВМ в классических языках программирования.
точность математических вычислений
анализ погрешностей ЭВМ
типы данных
классические языки программирования
1. Бум Х., Э. Де Джонг. Критическое сравнение некоторых реализаций языков программирования. – Нидерланды. [Электронный ресурс]. – URL: http://www.az-design.ru/index.shtml Support&SoftWare&Delphi/Pascal/001b4014 (дата обращения: 28.04.16).
2. Деммель Дж. Вычислительная линейная алгебра. Теория и приложения. – М.: Мир, 2001. – 430 с.
3. Институт технической кибернетики. Национальная академия наук Беларуси. [Электронный ресурс]. Минск, 2000. – URL: http://ice_diff.chat.ru (дата обращения: 23.04.16)
4. Юровицкий В.М. О компьютерной «вычислительной катастрофе». – МФТИ, РГСУ, Москва. – cop. 1999-2012 [Электронный ресурс]. – URL: http://www.yur.ru/science/computer/ Comcat.htm (дата обращения: 23.04.16).
Погрешность результатов при использовании математических вычислений может рассматриваться как следствие погрешности данных, округления или усечения. Аналогично, погрешность вычисления с помощью библиотечных процедур может быть следствием этих ошибок. Проблема анализа погрешности численных результатов – одна из фундаментальных в проблеме надежности вычислений [3].
Для получения предсказуемых и точных результатов важны следующие факторы: неточность внутреннего представления, неравномерность распределения вещественных чисел, вычитание. При операциях сложения и вычитания могут возникнуть такие ошибки как: потеря значащих цифр мантиссы у меньшего из чисел при выравнивании порядков, потеря крайней справа значащей цифры результата при сложении или вычитании мантисс, выход за границу допустимого диапазона значения того или иного вещественного типа при нормализации результата, большие и маленькие числа.
Для получения результата косвенного измерения выполняют математические операции, а потом округляют результат. Очевидно, что нет необходимости выполнять математические операции с результатами прямых измерений, как с точными числами, а нужно ограничивать их, получив определенное количество цифр в результате. Это облегчает работу, но при таких вычислениях возможны дополнительные погрешности. Чтобы погрешности вычислений не вносили искажений в конечный результат, необходимо брать их на порядок меньше погрешностей косвенных измерений. Поэтому все вычисления следует проводить с количеством значащих цифр, превышающим, как минимум, на единицу количество значащих цифр результатов измерений.
Поскольку аппаратно ЭВМ позволяет использовать лишь конечное подмножество чисел, то разумно соблюдать ряд правил [1], присущих арифметическим операциям. Эти правила более важны, чем требования обеспечения максимально возможной близости полученного результата к точному результату некоторой операции. Большое количество итерационных алгоритмов не требуют слишком высокой точности выполнения операций, но они оказываются неприменимыми при нарушении описанных выше правил.
На сегодняшний момент существует два способа проводить вычисления с большей точностью. Первый способ – точные значения заменяются приближенными, и проводится оценка погрешности исходных данных и округлений. У этого метода имеет ряд существенных недостатков. Второй способ – это интервальный анализ.
Интервальные вычисления – это достаточно разработанная область. Запись численного алгоритма производится на языках программирования, специально спроектированных с учетом требований интервальной арифметики. Такие языки называются SC-языками – от английского словосочетания «Scientific Computations», то есть «Научные Вычисления». За 70–90-е гг. было разработано целое семейство таких языков: PASCAL-SC и -XSC, FORTRAN-SC и -XSC, OBERON-XSC, MODULA-SC [4]. С помощью SC-языков разработаны различные пакеты численных методов, а написанные на этих языках программы используются для решения научно-технических задач.
Кроме того, существует несколько экспертных систем для математических расчетов посредством ЭВМ. Одно из них – приложение для математических и инженерных вычислений «Mathcad» корпорации PTC. При проведении численных расчетов (в отличие от символьных расчетов) Mathcad использует аппаратно реализованные арифметические инструменты самого компьютера, оперируя 64-битными числами с плавающей точкой. Именно отсюда проистекают все особенности и недостатки численных расчетов, которые на первый взгляд могут показаться следствием несовершенства самой программы [2].
Анализ точности вычислений на примерах вычислительной математики
В данном разделе рассмотрено несколько примеров математических вычислений, иллюстрирующих качество результатов расчетов в классических системах программирования («Turbo Pascal», «Free Pascal» и «Fortran G95»). Проанализируем точность проведенных вычислений, сравнивая их с экспертной системой «MathCAD».
Вычисления посредством системы «MathCAD»
Векторы и матрицы рассматриваются в системе «Mathcad» как одномерные и двумерные массивы данных.
Пример 1: А – матрица размера 2х3, В – матрица размера 3х3.
Пример 2: С – матрица размера 3х4, D – матрица размера 4х2.
Пример 3: Е – матрица размера 7х5, F – матрица размера 5х6.
Пример 4: Пусть задана матрица T размером 5*5 и матрица Q размером 5*5. Пусть элементы матриц – дробные числа с точностью 6 знаков после запятой. Выбор шести значимых цифр после запятой обоснован достаточной точностью для большинства реально получаемых экспериментальных данных.
Однако результат перемножения матриц представим в виде таблицы чисел с 12 выводимыми разрядами.
Вычисления посредством систем программирования Pascal и Fortran
Для сравнения падения точности расчетов при большом количестве арифметических операций были написаны программы, реализующие перемножение матриц.
При вводе элементов матриц из вышеприведенных примеров 1-3 результирующие матрицы совпадают с матрицами, полученными в системе «MathCad».
Сравнивая результаты расчетов примера 4 с результатом, полученным при перемножении этих матриц в программе MathCAD, можно сделать следующие выводы:
1) При перемножении матриц T и Q с использованием компилятора Turbo Pascal в случае, когда элементы матриц – дробные числа типа single, в результирующей матрице точность элементов – 4 знака после запятой;
2) Результат перемножения матриц T и Q с использованием компилятора Turbo Pascal (элементы матрицы – дробные числа типа real. Вывод осуществлялся с точностью 11 знаков после запятой):
Видно, что восьмой знак после точки уже округлен. Для матриц с размерами меньше, чем 2*3 и 3*3, результирующая матрица на выходе имеет 9 знаков после запятой. Однако, для матриц этих же размеров, но с элементами с большим числом знаков после запятой, элементы результирующей матрицы имеют округление в девятом знаке после запятой;
3) При перемножении матриц T и Q с использованием компилятора Turbo Pascal в случае, когда элементы матриц – дробные числа типа double, в результирующей матрице точность получаемых элементов – 8 знаков после запятой.
4) Результат перемножения матриц T и Q с использованием компилятора Turbo Pascal (элементы матрицы – дробные числа типа extended. Вывод осуществляется с точностью 11 знаков после запятой):
Одиннадцатый знак округлен!
5) Результат перемножения матриц T и Q с использованием компилятора Free Pascal (элементы матрицы – дробные числа типа real, вывод осуществляется с точностью 11 знаков после запятой) аналогичен результату перемножения матриц T и Q с использованием компилятора Turbo Pascal при использовании типа данных extended для элементов матриц. При использовании элементов матрицы типа extended , результат не меняется.
Можно сделать вывод о том, что при использовании дробных чисел типа extended или при использовании компилятора Free Pascal, а не Turbo Pascal, точность расчета результирующей матрицы повышается.
6) Результат перемножения матриц T и Q при использовании компилятора Fortran G95 (элементы матрицы – дробные числа типа real*4 – 4 байта):
Видно, что 5-6 знак после запятой округлен.
7) Результат перемножения матриц T и Q при использовании компилятора Fortran G95 (элементы матрицы – дробные числа типа real*8 – 8 байт):
Элементом результирующей матрицы является число с точностью восемь знаков после запятой. Девятый знак округлен.
8) Результат перемножения матриц T и Q при использовании компилятора Fortran G95 (элементы матрицы – дробные числа типа real*10 – 10 байт):
Элементом результирующей матрицы является число с точностью четырнадцать знаков после запятой.
Таким образом, можно сделать следующие выводы:
– В экспертной системе MathCad результат выводится с точностью 12 знаков после запятой без ошибок и округлений;
– Компилятор Turbo Pascal делает округление вещественных чисел типа real в восьмом знаке после запятой;
– В результате перемножения двух матриц с элементами типа extended с помощью компилятора Turbo Pascal округление происходит в одиннадцатом знаке после запятой;
– При использовании компилятора Free Pascal округление элементов результирующей матрицы происходит в одиннадцатом знаке после запятой, независимо от типа элементов исходных матриц – real или extended. Точность не зависит от типа данных, т.к. во Free Pascal тип real занимает 8 байт, а не 6, как в Turbo Pascal. (Free Pascal использует математический сопроцессор (или эмуляцию) для всех вычислений с плавающей точкой. Размер стандартного типа Real зависит от процессора и является либо Single, либо Double);
– В результате перемножения двух матриц с элементами типа Real*4 с помощью программы, написанной на языке Fortran, округление происходит в пятом или шестом знаке после запятой;
– При использовании компилятора Fortran G95 в результате перемножения двух матриц с элементами типа Real*8 округление происходит в девятом знаке после запятой;
– При использовании Fortran G95 в результате перемножения двух матриц с элементами типа Real*10 округления не происходит вплоть до пятнадцатого знака после запятой.
Метод наименьших квадратов
МНК – один из базовых методов регрессионного анализа для оценки неизвестных параметров регрессионных моделей по выборочным данным. Метод основан на минимизации суммы квадратов остатков регрессии.
Рассмотрим следующую задачу: аппроксимировать степенным полиномом набор из восьми экспериментальных точек (таблица).