Пятница, 2025-06-20, 3:36 PM
Приветствую Вас Гость | RSS
Главная | Урок 3 | Регистрация | Вход
Меню сайта
Вход на сайт
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Программирование

    Урок 3 - Использование переменных в пакете MatLab

     

     

    Как и во всех языках программирования, в MatLab предусмотрена возможность работы с переменными. Причем пользователь не должен заботиться о том, какие значения будет принимать переменная (комплексные, вещественные или только целые). Для того чтобы присвоить, например, переменной z значение 1.45, достаточно написать в командной строке z = 1.45, при этом MatLab сразу же выведет значение z:

    » z = 1.45 
    z  = 
    1.4500

    Здесь знак равенства используется в качестве оператора присваивания. Часто не очень удобно после каждого присваивания получать еще и результат. Поэтому в MatLab предусмотрена возможность завершать оператор присваивания точкой с запятой для подавления вывода результата в командное окно. Именем переменной может быть любая последовательность букв и цифр без пробела, начинающаяся с буквы. Строчные и прописные буквы различаются, например MZ и mz являются двумя разными переменными. Количество воспринимаемых MatLab символов в имени переменной составляет 31. 
    В качестве упражнения на использование переменных найдите значение следующего выражения:

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

    » х = sin(1.3*pi)/log(3.4); 
    » у = sqrt(tan(2.75)/tanh(2.75)); 
    » z= (х+у)/(х-у) 
    Z = 
    0.0243 - 0.9997i

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

    »(sin(1.3*pi)/log(3.4)+sqrt(tan(2.75)/tanh(2.75)))/…
    (sin(1.3*pi)/log(3.4)-sqrt(tan(2.75)/tanh(2.75))) ans = 
    0.0243 - 0.9997i

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

    Для ввода длинных формул или команд в командную строку следует поставить три точки (подряд, без пробелов), нажать клавишу <Enter> и продолжить набор формулы на следующей строке. Так можно разместить выражение на нескольких строках. MatLab вычислит все выражение или выполнит команду после нажатия на <Enter> в последней строке (в которой нет трех идущих подряд точек).

    MatLab запоминает значения всех переменных, определенных во время сеанса работы. Если после ввода примера, приведенного выше, были проделаны еще какие-либо вычисления, и возникла необходимость вывести значение х, то следует просто набрать х в командной строке и нажать <Enter>:

    » x 
    -0.6611

    Переменные, определенные выше, можно использовать и в других формулах. Например, если теперь необходимо вычислить выражение

    ,

    то достаточно ввести следующую команду:

    » (x-y)^(3/2) 
    ans = 
    -0.8139 + 0.3547i

    Вызов функций в MatLab обладает достаточной гибкостью. Например, вычислить е3.5 можно, вызвав функцию ехр из командной строки:

    » ехр(3.5)
    ans = 
    33.1155

    Другой способ состоит в использовании оператора присваивания:

    » t = ехр(3.5) 
    t = 
    33.1155

    Предположим, что часть вычислений с переменными выполнена, а остальные придется доделать во время следующего сеанса работы с MatLab. В этом случае понадобится сохранить переменные, определенные в рабочей среде.

     

    Просмотр переменных

    При работе с достаточно большим количеством переменных необходимо знать, какие переменные уже использованы, а какие нет. Для этой цели служит команда who, выводящая в командное окно MatLab список используемых переменных:

    » who 
    Your variables are: 
    al      a2      a3

    Команда whos позволяет получить более подробную информацию о переменных в виде таблицы:

    >> whos

     

     

     

    Name

    Size

    Bytes

    Class

    al

    1X1

    8

    double array

    a2

    1X1

    8

    double array

    a3

    1X1

    8

    double array

    Grand total is 3 elements using 24 bytes

    Первый столбик Name состоит из имен используемых переменных. То, что содержится в столбике Size, по существу, определяется основным принципом работы MatLab. Программа MatLab все данные представляет в виде массивов.Переменные al, a2 и а3 являются двумерными массивами размера один на один. Каждая из переменных занимает по восемь байтов, как указано в столбике Bytes. Наконец, в последнем столбике Class указан тип переменных - double array, т.е. массив, состоящий из чисел двойной точности. В строке под таблицей написано, что в итоге три элемента, т.е. переменные, занимают двадцать четыре байта. Оказывается, что представление всех данных в MatLab в виде массивов дает определенные преимущества. 
    Для освобождения из памяти всех переменных используется команда clear. Если в аргументах указать список переменных (через пробел), то только они будут освобождены из памяти, например:

    » clear al аЗ 
    » who 
    Your variables are: 
    a2

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

    uCozCopyright MyCorp © 2025