Главная страница
Навигация по странице:

  • Примечание Можно включить автоматический перевод единиц измерения в более простые единицы. Для этого перейдите в диалоговое окно Result Format

  • Листинг Ранжированная переменная при параллельных вычислениях := 0 .. 5

  • Листинг 4.16. Использование переменных и функций при определении матрицы

  • Кирьянов. Самоучитель MathCad 11. Кирьянов д в


    Скачать 10.75 Mb.
    НазваниеКирьянов д в
    АнкорКирьянов. Самоучитель MathCad 11.pdf
    Дата28.04.2017
    Размер10.75 Mb.
    Формат файлаpdf
    Имя файлаКирьянов. Самоучитель MathCad 11.pdf
    ТипРеферат
    #6148
    КатегорияИнформатика. Вычислительная техника
    страница9 из 36
    1   ...   5   6   7   8   9   10   11   12   ...   36

    Листинг 4.5. Значения математических константе = 2 3
    i = i
    j = i
    % = 0
    .718
    .142
    . 0 1
    • = При желании можно изменить значение любой из перечисленных констант или использовать их в качестве переменных в расчетах (см. листинг 4.1, в котором переопределена константа е. Разумеется, если присвоить константе новое значение, прежнее станет недоступным.
    Системные переменные (system variables)

    — точность численных методов (см. часть CTOL
    — точность выполнения выражений, используемая в некоторых численных методах (см. часть ORIGIN
    — номер начального индекса в массивах (см. разд — установка формата данных при выводе в файл — установка формата столбца при выводе в файл — строковое представление пути к текущей рабочей папке
    Часть I. Общие сведения
    Предустановленные значения системных переменных перечислены в листинге. Их можно поменять в любой части документа, присвоив соответствующей переменной новое значение. Кроме того, переопределение значения переменной для всего документа производится при помощи команды / Worksheet Options / Built-in Variables
    (Сервис / Опции документа Встроенные переменные) в диалоговом окне Worksheet Options
    (Опции документа, приведенном на рис. 4.2. Чтобы в любой момент вернуть значения по умолчанию, нажмите кнопку Restore Defaults
    (Восстановить установки по умолчанию Листинг 4.6. Предустановленные значения системных переменных !
    = х 10
    - з- з =
    Ю = О = 4
    Data\"
    Worksheet Options
    Built-in
    J Calculation]
    Array Origin fifilGIN)
    Convergence
    Constraint Tolerance [CTOL)
    value for random numbers
    File

    -
    Precision
    Width
    [8)
    fiestore Defaults
    Отмена
    Справка
    Рис. 4.2. Вкладка Built-in Variables диалога Worksheet Options
    4.1.4. Строковые выражения
    Значением переменной или функции может быть не только число, но и строка, состоящая из любой последовательности символов, заключенной в кавычки (листинг 4.7). Для работы со строками в Mathcad имеется несколько встроенных функций (см. разд. "Строковые 10).

    Глава 4. Типы данных 99
    | ЛИСТИНГ 4.7. ВВОД Й ВЫВОД :=
    "
    concat ( s , " world! " ) = "Hello, world! "Совершенно аналогичным образом можно определять пользовательские функции строкового типа. Размерные переменные
    В Mathcad числовые переменные и функции могут обладать размерностью.
    Сделано это для упрощения инженерных и физических расчетов. В Mathcad встроено большое количество единиц с помощью которых и создаются размерные переменные. Создание размерной переменной

    Чтобы создать размерную переменную, определяющую, например, силу тока в 10 А. Введите выражение, присваивающее переменной значение ю. Сразу после ввода введите символ умножения. Находясь в области местозаполнителя, выберите команду Insert / Вставка / Единицы) либо нажмите кнопку с изображением мерного стакана на стандартной панели инструментов, либо клавиши
    (рис. 4.3).
    4. В списке Unit (Единица измерения) диалогового окна Insert Unit (Вставка единицы измерений) выберите нужную единицу измерения Ampere (A).
    5. Нажмите кнопку ОК.
    Если Вы затрудняетесь с выбором конкретной единицы измерения, но знаете, какова размерность переменной (в нашем случае это электрический ток, то попробуйте выбрать ее в списке Dimension (Размерность)
    диалогового окна Insert Unit (Вставка единицы измерений) (рис. Тогда в списке Unit (Единица измерения) появятся допустимые для этой величины единицы измерений, из которых выбрать нужную будет легче
    (рис. Просмотреть вставку единиц измерения можно и без выхода из диалогового окна Insert Unit, нажимая вместо кнопки кнопку Insert (Вста- вить).
    В этом случае Вы увидите, что единица измерений появилась в нужном месте документа, и можете поменять ее, оставаясь в диалоге Insert Unit.
    Часть I. Общие сведения Professional 4.8]
    Graph
    ЭД Г : = 1 0 • (•
    З. Вставка единиц измерения размерной величины Unit
    Insert Unit
    (amp)
    Atmospheres
    4 . 4 . Диалоговое окно Insert Unit
    4 . 5 . Выбор размерности. Работа с размерными переменными с размерными переменными, приготовьтесь к тому, что Mathcad будет постоянно контролировать корректность расчетов. Например, нельзя складывать переменные разной размерности, в противном случае будет получено сообщение об ошибке "The units in this expression do not
    match" (Размерности в этом выражении не совпадают. Тем не менее, позволяется складывать, например, амперы с килоамперами (см. рис. 4.9).
    Глава 4. Типы данных Т expression do
    |
    R=
    ohm
    1.2 kg
    A"
    4.6. Нельзя складывать переменные разной размерности
    Рис. 4.7. Изменение единиц измерения в ответе
    Над размерными переменными можно производить любые корректные с физической точки зрения расчеты. Пример расчета сопротивления через отношение напряжения к току приведен в листинге Листинг 4.8.
    I :=
    R:=
    R =
    = 10
    = 12
    I
    = 1.2
    • А
    • V
    :
    Расчеты с- 3 - 2
    S А
    Обратите внимание, что результат в листинге 4.8 выдан не в омах. Тем не менее, легко перевести его в омы, как ив другие единицы. Для этого достаточно дважды щелкнуть на местозаполнителе, присутствующем после вычисленного значения формулы в момент, когда она выделена (рис. 4.7, внизу. В результате появляется тоже самое диалоговое окно Insert Вставка единицы измерений, в котором можно поменять единицу измерений вычисленного ответа. В результате ответ будет пересчитан в соответствии с вновь введенной единицей измерения (как сделано для верхней формулы на рис. 4.7).
    Примечание
    Можно включить автоматический перевод единиц измерения в более простые единицы. Для этого перейдите в диалоговое окно Result Format (Формат результата)
    на вкладку, посвященную размерностям, с помощью команды Format / Result / Unit
    Display (Формат Результат Отображение размерности. Установите в ней флажок (Упрощать единицы, когда это возможно).
    Процесс смены единиц в момент их выбора в диалоге Insert Unit (Вставка единицы измерений) показан на рис. 4.8. В результате приведенного выбора выведенное в амперах значение силы тока будет изменено назначение в килоамперах: 1.01
    Часть I. Общие сведениях. Сложение переменных одной размерности,
    выраженных в разных единицах. Выбор системы единиц
    Как легко заметить, во всех примерах этого раздела вставлялись единицы системы измерения SI. Об этом можно было судить как по перечню самих единиц, таки по недоступному списку System (Система) в диалоге In- sert Unit (Вставка единицы измерений) с выбранным пунктом SI. Сменить систему единиц во всем документе можно, выполнив команду Tools /
    Document Options (Сервис / Опции документа) и переходя на вкладку Unit
    System (Система единиц. В ней следует выбрать один из переключателей,
    соответствующий желаемой системе. Определение новой размерности
    Чтобы определить новую (пользовательскую) единицу измерения, достаточно присвоить ее выражение через используемые размерности переменной с соответствующим именем. Пример создания новой единицы измерения "наноампер" приведен в листинге Листинг 4.9. Определение новой единицы измерения- 9
    пА
    3 А = 3 X 10 пА
    Созданные пользователем единицы измерения недоступны в диалоговом окне Insert Unit (Вставка единицы измерений, поэтому их приходится вво-
    Глава 4. Типы данных 103
    дить вручную с клавиатуры (как это сделано для новой единицы ВО второй строке листинга 4.9).
    4.3. Массивы
    Массивами (arrays) называют упорядоченные последовательности чисел или
    элементов массива Доступ к любому элементу массива возможен по его индексу те. номеру в последовательности чисел (в листинге 4.10 а — это массив его элемент. Применение массивов чрезвычайно эффективно в математических расчетах.
    Листинг
    Одномерный массив 1.4 4 . 7
    =
    В Mathcad условно выделяются два типа массивов векторы массивы, листинг 4.10), матрицы (двухиндекс- ные, листинги тензоры (многоиндексные);
    ранжированные переменные (range variables)
    векторы, элементы которых определенным образом зависят от их индекса.
    Листинг
    Двумерный массив (матрица . 1 2 . 8 3 . 7 0
    = 0 . 1
    , 0
    = 3 . 7 4.3.1. Доступ к элементам массива
    Доступ ко всему массиву осуществляется по имени векторной переменной.
    Например, последовательность символов "а, "=" в листингах 4.10 приведет к выводу соответствующего вектора или матрицы. В Mathcad имеются и операторы, и встроенные функции, которые действуют на векторы и матрицы целиком (они рассматриваются в гл. 9),
    например, транспонирование, матричное умножение и т. д

    104 Часть I, Общие сведения
    Над элементами массива можно совершать действия как над обычными числами. Нужно только правильно задать соответствующий индекс или сочетание индексов массива. Например, чтобы получить доступ к нулевому элементу вектора а из листинга 4.10:
    1. Введите имя переменной массива (а. Нажмите кнопку Subscript (Нижний индекс) со значком на панели (Матрица) либо введите [.
    3. В появившийся справа снизу от имени массива местозаполнитель введите желаемый индекс (о).
    Если после этого ввести знак численного вывода, то справа от него появится значение нулевого элемента вектора, как показано во второй строке листинга Чтобы получить доступ к элементу многоиндексного массива (например элементу матрицы из листинга. Введите имя переменной массива (а. Перейдите к вводу нижнего индекса, введя [.
    3. Введите в местозаполнитель индекса первый индекс запятую "," ив появившийся после запятой местозаполнитель введите второй индекс (о).
    В результате будет получен доступ к элементу, как показано в предпоследней строке листинга
    В рассмотренных листингах нумерация индексов массивов начинается сну- ля, иными словами, первый элемент массива имеет индекс о. Стартовый индекс массива задается системной переменной ORIGIN,
    которая по умолчанию равна нулю. Если Вы привыкли нумеровать элементы векторов и матриц с единицы, присвойте этой переменной значение 1 (листинг 4.12). Обратите внимание, что в этом случае попытка выяснить значение нулевого элемента вектора приводит к ошибке, поскольку его значение не определено.
    Помимо доступа к отдельным элементам массива, имеется возможность совершать действия над его подмассивами (например векторами-столбцами,
    образующими матрицу. Делается это с помощью оператора со значком на панели (Матрица (см. гл. Листинг 4.12. Изменение нумерации индексов массивов :=
    : = 1
    '
    1 .
    4 .
    4 7
    Глава 4. Типы данных = 4 . 7 4.3.2. Ранжированные переменные
    Ранжированные переменные в Mathcad являются разновидностью векторов и предназначены, главным образом, для создания циклов или итерационных вычислений. Простейший пример ранжированной переменной — это массив с числами, лежащими в некотором диапазоне с некоторым шагом.
    Например, для создания ранжированной переменной s с элементами , 1 , 2 , 3 , 4 , 5 :
    1. Поместите курсор ввода в нужное место документа. Введите имя переменной (s) и оператор присваивания. Нажмите кнопку Range Variable
    (Ранжированная переменная) на панели (Матрица, показанную на рис. 4.9, либо введите символ точки с запятой с клавиатуры. В появившиеся (рис. 4.9) введите левую и правую границы диапазона изменения ранжированной переменной о и 5.
    4.9. Создание ранжированной переменной
    Результат создания ранжированной переменной показан на рис. Чтобы создать ранжированную переменную с шагом, неравным например. Создайте ранжированную переменную в диапазоне ото до 8 (см.
    рис. 4.9).
    2. Поместите линии ввода назначение начала диапазона (о. Введите запятую. В появившийся местозаполнитель (рис введите значение шага изменения ранжированной переменной (Созданная ранжированная переменная будет иметь значения ото до включительно, с шагом, равным 2.
    Часть Общие сведения
    з
    S
    1 2
    0.. 5 Рис. 4.10.
    Вывод ранжированной переменной
    Рис.
    Создание ранжированной переменной с шагом, неравным Чаше всего ранжированные переменные используются при параллельных вычислениях (листинги 4.13 и 4.14);
    для присвоения значений элементам других массивов (листинги и Обратите внимание на типичный пример использования ранжированной переменной из листингов 4.13 и 4.14. Большинство математических действий, реализованных в Mathcad, совершаются над ранжированными переменными точно также, как над обычными числами. В этом случае одно и тоже действие осуществляется параллельно над всеми элементами ранжированной переменной.
    Листинг 4.13. Ранжированная переменная при параллельных вычислениях := 0 , 2 ..
    s ( i )
    i -
    0.841
    -0.959
    -0.961
    -0.644 0.827
    Примечание
    Параллельные вычисления производятся точно также и над произвольными векторами, необязательно являющимися ранжированными переменными. Например, можно определить в листинге 4.14 вектор i, подобно вектору из листинга, и провести те же параллельные вычисления над его элементами
    Глава 4. Типы данных
    107
    Листинг
    Ранжированная переменная при параллельных вычислениях := 0 .. 5
    2 5
    10 17 26
    sin
    0.841 0.909
    -0.959
    -0.544
    -0.961 Листинг 4.15. Использование ранжированной переменной

    для определения матрицы 3 4 5
    3 4 5 6
    2 3 4 5 6 7
    3 4 5 6 7 8
    Внимание!
    Определяя массив с помощью ранжированных переменных (листинги и 4,15), позаботьтесь о том, чтобы их значения пробегали все необходимые индексы массива. Например, если задать шаг изменения ранжированной переменной, равный 2, то половина элементов вектора будет не определена.
    Помните о том, что ранжированные переменные просто разновидности векторов с упрощенной формой задания элементов. Часто необходимо провести одни и те же вычисления циклически, большое количество раз, например, вычисление некоторой функции f (х) в некотором диапазоне х для построения подробного графика. Задание вручную всех значений аргумента
    {наподобие вектора из листинга очень трудоемко, ас помощью задания ранжированной переменной х это делается в одну строку

    Часть I. Общие сведения. Создание массивов
    Существует несколько способов создания массива ввод всех элементов вручную с помощью команды Insert
    определение отдельных элементов массива создание таблицы данных и ввод в нее чисел применение встроенных функций создания массива (см. гл.

    О создание связи с другим приложением, например Excel или MATLAB;
    чтение из внешнего файла данных импорт из внешнего файла данных.
    Рассмотрим основные способы создания массива, учитывая, что две последних возможности будут разобраны в последней части книги Применяйте способ, который оптимален в смысле простоты и читаемости конкретного документа, либо ставший наиболее для Вас привычным.
    Создание матрицы командой Insert Самый простой и наглядный способ создания вектора или матрицы заключается в следующем. Нажмите кнопку Matrix or Vector (Матрица или вектор) на панели (Матрица) (рис. 4.12) либо клавиши +, либо выберите пункт меню Insert / Matrix (Вставка / Матрица. В диалоговом окне Insert Matrix (Вставка матрицы) задайте целое число столбцов и строк матрицы, которую хотите создать. Например, для создания вектора 3x1 введите показанные на рис. 4.12 значения. Нажмите кнопку или Insert (Вставить) — в результате в документ будет вставлена заготовка матрицы с определенным числом строки столбцов (рис. 4.13).
    4. Введите значения в местозаполнители элементов матрицы. Переходить от одного элемента матрицы к другому можно с помощью указателя мыши либо клавиш со стрелками.
    Добавление в уже созданную матрицу строк или столбцов производится точно также. Выделите линиями ввода элемент матрицы, правее и ниже которого будет осуществлена вставка столбцов и (или) строк. Вставьте в него матрицу, как было описано выше. При этом допускается задание числа столбцов или строк равным нулю 4.14).
    3. Заполните местозаполнители недостающих элементов матрицы
    Глава 4, Типы данных 4.12. Вставка матрицы a Рис. 4.13. Заполнение матрицы элементами
    На рис. 4.14 и 4.15 показаны результаты последовательной вставки в матрицу столбца и строки после определения соответствующего числа столбцов и строк в диалоге Insert Matrix и нажатия в нем кнопки Insert (Вставить -
    2 •
    Рис. 4.14. Добавление одного столбца к матрице
    Рис. 4.15. Добавление одной строки к матрице
    В
    элементов матрицы можно вставлять не только числа
    (действительные или комплексные, но и любые математические выражения, состоящие из переменных, операторов, встроенных и пользовательских функций (листинг 4.16, вторая строка).
    Листинг 4.16. Использование переменных и функций
    при определении матрицы
    х : = А
    Часть I. Общие сведений Создание массива определением его отдельных элементов
    Массив можно определить следующим образом присваивая значения непосредственно отдельным элементам массива применяя ранжированные переменные (см. листинг Любой из этих способов позволяет присвоить нужное значение как всем элементам массива (см. листинг 4.15), таки части из них, либо даже одно- иному элементу. В последнем случае создается массив, размерность которого задается индексами введенного элемента (листинга неопределенным элементам по умолчанию присваиваются нулевые значения Листинг 4.17. Создание матрицы определением одного ее )
    о о 0 0 0 0 0 0 0 В любом месте документа допускается как переопределение любого из элементов массива (листинг 4.18, первая строка, таки изменение его размерности. Чтобы поменять размерность всего массива, просто присвойте любое значение новому элементу, индексы которого выходят заграницы прежней размерности (вторая строка листинга 4.18).
    Примечание
    В
    элементов матрицы допускается вставка любых функций,
    подобно применению обычного оператора присваивания Листинг. Изменение матрицы

    о о 0 1 0 0 0 0 0 99
    Глава 4. Типы данных
    111
    о о о о о 0 0 0 ООО Создание тензора
    Определение отдельных элементов — удобный способ создания тензоров
    (многоиндексных массивов. В имеется непосредственная возможность работы только с векторами и матрицами. Тем не менее, можно создать тензор путем определения вложенного массива (nested array). Для этого необходимо присвоить каждому элементу матрицы значение в виде другого вектора или матрицы (листинг 4.19). Пользователь должен лишь позаботиться о корректности задания индексов тензора и не запутаться в индексировании вложенных матриц (последняя строка листинга Листинг Создание тензора и доступ к его элементам 0
    {2,1} {2,1}
    {2,1} {2,1}
    1   ...   5   6   7   8   9   10   11   12   ...   36


    написать администратору сайта