Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛабораторныйПрактикум1.pdf
Скачиваний:
395
Добавлен:
02.02.2015
Размер:
4.76 Mб
Скачать

11.2. SMATH STUDIO

11.2.1. Интерфейс SMath Studio

SMath Studio95 – бесплатный математический пакет с графическим интерфейсом для вычисления математических выражений и построения двумерных и трёхмерных графиков. Поддерживает работу с матрицами, векторами, комплексными числами, дробями и алгебраическими системами, единицами измерений. Удобный, графический (как на бумаге) интерфейс и богатые вычислительные возможности программы хорошо сочетаются с достойным количеством настроек и автоматических режимов. В дистрибутив программы также встроен информативный математический справочник. Пакет мультиязычен – поддерживает 35 языков. Программу разрабатывает петербургский программист Андрей Ивашов. В развитии пакета принимают участие пользователи, ведущие активное обсуждение на форуме проекта. Доступны версии для Windows

иLinux, в разработке версия для Android. Для устройств с другими системами или с компьютеров, где по каким-то причинам нет возможности установить пакет, но есть браузер и доступ к интернету, есть возможность пользоваться сетевой версией пакета по адресу http://smath.info/live. Веб-сервис позволяет загружать и сохранять документы, получать ссылку на документ для публикации. Документы, созданные в пакетах для всех платформ совместимы и используют текстовый формат XML (легко сжимается, читается текстовыми редакторами, доступен для сторонних программ).

SMath Studio содержит текстовый редактор – в нём ведётся редактирование текста, вычислитель – механизм проведения численных

исимвольных расчётов, и графический процессор для построения графиков. Документом в системе SMath Studio называется полное математическое описание алгоритмов решения задач. Документ, в свою очередь, состоит из блоков, т. е. отдельных частей. Блоки делятся на текстовые, математические и графические. Текстовые блоки являются комментариями и не исполняются. Текст может состоять из слов,

математических выражений и формул, спецзнаков. Математические

95 http://ru.smath.info/, в этом руководстве рассматривается версия SMath Studio 0.95.4594 от 30 июля 2012 года.

265

(вычислительные) блоки – основа документа SMath Studio, в них задаются данные и производятся расчёты. Графические блоки содержат графики, чаще всего построенные на основании данных и зависимостей математических блоков.

По ходу выполнения работы определения, горячие клавиши, программы и результаты записывайте в лабораторный журнал. Запустите SMath Studio. Окно SMath Studio имеет классический интерфейс – рамка, заголовок, меню, панель инструментов, боковая панель, поле документа, окно вывода (включается командой Вид/Окно вывода) и статусная строка. При редактировании режим Вид/Динамическая помощь ввода (должен быть включен!) выводит контекстный список имён для быстрой вставки.

Панель основных команд управления (сохранения, загрузки, печати, мастера вставки функций и размерностей) расположена под меню, над полем документа. Боковая панель содержит группы команд построения документа (арифметика, матрицы, функции, график, программирование,

символы). При поднесении мыши к кнопке команды появляется подсказка по команде и горячим клавишам.

Выполните команду Файл/ Параметры страницы, установите размер бумаги A4, размер левого поля 30 мм, верхнего, нижнего и правого – 20 мм. Если создаётся небольшой документ, то колонтитулы можно отключить (очистить или модифицировать поля).

На экране отображаются границы листов. Если объекты выходят за границу, при печати выступающая часть игнорируется, что позволяет часть блоков, которые не нужно печатать, располагать на полях.

Для комфортного отображения инструментом масштабирования, расположенным в статусной строке, можно менять масштаб, например, установите масштаб 125%.

При выполнении вычислений можно использовать справочник и набор примеров из меню Помощь, которые открываются в новом документе (документы в SMath Studio переключаются в списке меню Листы или клавишами Ctrl+Tab или Ctrl+F6, в обратном порядке,

Ctrl+Shift+Tab или Ctrl+Shift+F6). SMath Studio позволяет работать сразу с несколькими документами, поэтому нет необходимости для одновременного запуска сразу нескольких копий программы. Большое количество примеров от ответов на вопросы представлены на форуме

266

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

При сохранении документа можно задать параметр (тип файла), включающий сжатие файла. Обычный документ SMath Studio имеет расширение имени файла (тип) .sm, сжатый – .smz, также можно сохранить в виде веб страницы (.html), изображения (.png, .bmp, .gif, .jpg) и документа Mathcad .xmcd. Необходимо отметить, что из-за разницы реализаций Mathcad и SMath Studio не все функции и графики совместимы. Довольно большая часть вычислений при загрузке в другой пакет (Mathcad/SMath Studio) потребует доработки.

Для создания еще одного нового документа, например для решения следующего задания, нужно выбрать команду меню Файл/Создать лист (Ctrl+N) или нажать на кнопку Создать лист с изображением чистого листа в панели команд. Закрыть документ после сохранения можно командой Файл/Закрыть лист или клавишами Ctrl+F4.

11.2.2. Редактирование

Ввод документа осуществляется блоками в точку, помеченную красным маркером. Вы можете переместить маркер мышью или клавишами управления курсором. При вводе вокруг блока размещается граница, размер которой автоматически меняется. Место ввода аргументов помечается квадратным черным маркером. Относительное расположение блоков влияет на результат выполнения расчётов. Блоки можно передвигать мышью, буксируя за границу блока или выделить мышью группу и буксировать группу. Блоки можно выравнивать командами панели инструментов по вертикали и по горизонтали. Ввод и редактирование блока необходимо осуществлять внутри границы блока, т.е. блок должен быть целостным. Для вставки одного математического блока в маркированную позицию другого, можно использовать операции копирования/вставки (Ctrl+C/ Ctrl+X / Ctrl+V). Удалить выделенный блок или группу можно клавишей Delete. Выделить весь документ – Ctrl+A. Перемещаться по блоку можно клавишами влево/вправо, выбирать блоки клавишами вверх/вниз, выйти из блока – клавишей Enter.

267

Часто возникают сложности при наборе формул с использованием подстрочных и надстрочных элементов. При завершении набора подстрочного или надстрочного элемента для возврата в основную формулу необходимо нажать клавишу ПРОБЕЛ или стрелку вправо. При этом увеличивается курсор редактируемого блока. Для вставки пары скобок в маркер ввода или вокруг выделенной части блока используйте левую круглую скобку. Для удаления скобок нужно переместить их содержимое в буфер обмена (Ctrl+X), удалить скобки и вставить сохранённое содержимое в позицию маркера. Для ввода текстов, т. е. создания текстовых блоков документов, достаточно ввести знак двойные кавычки ("). Текущее положение курсора окажется в обрамлении рамки. В этой рамке можно вводить текст. По мере ввода текста рамка увеличивается. Если надо перейти на новую строку текста, то следует нажать клавиши Ctrl+Enter, при этом текстовый блок расширяется на одну строку вниз, нажатие Enter завершает ввод и выводит курсор за пределы текстового блока (введенный текст остаётся на экране дисплея, но обрамляющая его граница блока исчезает). Автоматически текстовый блок создается, если после ввода какого-либо слова нажать пробел.

11.2.3. Идентификаторы, формат вывода

При наборе математических блоков используются переменные, константы и функции, объединённые операторами. Переменные – именованные области памяти для хранения данных. Константа неизменное числовое или текстовое значение. Например, константа (число) 5 имеет значение, равное пяти, в любом месте программы. Системная переменная – предварительно определённая переменная, значение которой задается в начале загрузки системы, например, основанием натуральных логарифмов e = 2,7183, или число = 3,1416. Функция – некоторая зависимость одной переменной от другой или ряда переменных, или констант. Главным признаком функции является возврат значения, т. е. функция в ответ на обращение к ней по имени с указанием её аргументов должна возвратить свое значение. Например, при использовании функции sin(x) в выражении после её вычисления (во время вычисления всего выражения), вместо неё будет подставлено число, равное значению синуса с аргументом, равным значению

268

переменной x. Для задания комплексных чисел в качестве окончания используется буква i, например 3+1,5i.

Разделитель десятичной части дробного числа и разделитель параметров меняются в зависимости от региона (настроек системы). Для русскоязычной версии по умолчанию устанавливается запятая и точка с запятой. Изменить настройки можно в окне Сервис/Опции. Так как формат хранения универсален, то документы, набранные в программе с одними настройками корректно работают в программе с другими настройками.

Аргуметы тригонометрических функций задаются в радианах96. Для использования градусов укажите единицы измерения: sin(30°).

При ошибке ввода используйте операцию отмены действия Ctrl+Z (для возврата отменённого действия – Ctrl+Y).

Для вывода численного результата используется знак равно (=). Создайте текстовый блок вводом двойной кавычки ("), введите

комментарий «Базовые операции», выйдите из блока клавишей Enter. Далее введите текст математических блоков, набор каждого также заканчивайте клавишей Enter: «123 / 5 =», «25 * 4 =», «cos(0) =», «5! =».

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

Для присвоения значения переменной или выражения функции в математическом блоке используется оператор :=, который вводится из группы команд Арифметика боковой панели или двоеточием (символ «равно» дописывается автоматически). Собственно все простые математические блоки построены на операторе присваивания или на операторе

96 Радиан (обозначение: рад, rad; от лат. radius – луч, радиус) – основная единица измерения плоских углов в современной математике и физике. Радиан определяется как угловая величина дуги, длина которой равна её радиусу. Таким образом, величина полного угла равна 2π радиан.

269

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

SMath Studio реализует вычисления в определённом порядке: сверху вниз по строкам в документе и слева направо по блокам в строке. Т.е. перед использованием переменных в вычислениях, значения этих переменных необходимо задать выше или левее.

Введите посимвольно выражения, завершая каждое клавишей Enter: sin(x)+z=

z:x+y

x:0,5

y:1

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

Вматематических выражениях используются идентификаторы – имена встроенных и определённых пользователем констант, переменных

ифункций. Идентификаторы должны начинаться с буквы (строчные и прописные латинские, греческие, национальные (кириллица) буквы) и

могут содержать в себе цифры. Регистр символов в идентификаторах учитывается! Идентификаторы могут содержать знаки подчеркивания (_), решётки (#), бесконечности (∞) и штрихов ('`). Создаваемые идентификаторы должны быть уникальны, т.е. не повторять имен ранее введенных констант, переменных и функций, в том числе встроенных. Для набора греческих букв можно использовать разделы Символы боковой панели или ввести с клавиатуры следующим образом: наберите соответствующий символ при включенной английской раскладке клавиатуры, затем нажмите Ctrl+G – буква будет преобразована из латинской раскладки в греческую. Соответствие символов:

A–

H–

O–

V–

a–

h–

o–

v–

B–

I–

P–

W– b–

i–

p–

w–

 

 

 

 

270

 

 

 

C– D– E–

F– G–

J– K– L– M–

N–

Q–

X–

c–

j–

q–

x–

R–

Y–

d–

k–

r–

y–

S–

Z–

e–

l–

s–

z–

T–

 

f–

m–

t–

 

U–

 

g–

n–

u–

 

Следующие идентификаторы являются допустимыми: х, X, , , x, Alfa, Start_Value, U1, FSin, воды. А вот эти идентификаторы недопустимы: 2U – начинается с цифры и будет автоматически преобразовано в 2·U, sin

– совпадает с именем встроенной функции.

Исторически так сложилось, что имена переменных, содержащих целые значения (индексы и целые счётчики циклов), принято именовать буквами i, j, k, l, m, n, а имена массивов начинать с большой буквы.

Винженерных расчётах довольно часто применяются уточняющие надписи в подстрочном положении (subscript) у основного имени, например Gводы – расход воды. Довольно часто для этой цели используется индекс, обозначающий номер элемента массива (массивы будут рассматриваться далее), что является неверным. Редактор математических блоков позволяет задать завершающую часть имени в подстрочном положении (литеральный индекс) с помощью точки, сама точка при этом не отображается. Литеральный индекс визуально похож на индекс массива (индекс массива выводится чуть ниже и правее), но эти обозначения различны. У массива имя ссылается на весь массив, а индекс массива является отдельной переменной или константой, указывающей один конкретный элемент массива. Литеральный индекс является частью имени переменной со смещённым вертикальным положением.

Введите следующие математические блоки: sin(1/2 ПРОБЕЛ Ctrl+Shift+p =

a Ctrl+G : 0,5

r Ctrl+G .воды : 1000'кг/'м^3

Врезультате должны получить следующие выражения:

271

Так как значения переменных x и y заданы выше, самостоятельно

введите выражение

x y

, должен быть выведен результат. Замените

4

 

 

выше в операциях присвоения значение x на 3, а y на 5, выражения должны быть автоматически пересчитаны (режим Вычисление/ Автопересчёт должен быть включён).

Операторы, выделяющие области в блоках, такие как возведение в степень, корень, дробь, называют «цепкими» и для завершения области действия, необходимо определить её клавишами ПРОБЕЛ или вправо (влево), которые циклично перебирают вложенные области. Заметьте, что клавиши вверх и вниз (Tab и Shift+Tab) в случае выделенного блока перемещают выделение по блокам документа, курсор на листе вне блоков перемещается клавишами управления курсором.

При выводе результатов SMath Studio использует числа с мантиссой (количество значимых цифр в числе) до 15 знаков. По умолчанию десятичные числа выводятся с точностью до четырёх знаков после десятичного разделителя (задаётся в Сервис/Опции/Вычисление/Точность ответа). Ввод числовых данных может выполняться в любой форме, например, число «123,45» можно ввести как «0,12345 103» или

«12345010–3» и т. д.

Рассмотрите варианты изменения вида результатов. Введите формулу 122/6 =. Выделите эту формулу снова, в контекстном меню вызовите команду Точность ответа 5 (так как максимальный размер мантиссы 15 символов, увеличение точности более 13 символов не изменит результат, потому что ещё две цифры числа расположены до запятой). Для этой формулы также выполните команду контекстного меню Вид ответа (дроби)/Обыкновенные, затем Вид ответа

(дроби)/Десятичные (формат по умолчанию чисел ответа задаётся в поле

Сервис/Опции/Вычисление/Вид ответа (дроби)). Присвойте переменной q

число 2000000, выведите значение q=. Должен быть получен результат «q = 2 106». Выделите этот блок результата, в контекстном меню выполните команду Экспоненциальный порог 7 (указывает порядок

272