ИД "Мой компьютер"   "Игроград"   "Реальность фантастики"   Ассамблея "Портал"
Сделать стартовой   

 
Домашняя страница
Расширенный поиск
E-mail

 

N 16 (447)




МОЙ КОМПЬЮТЕР




  Новости:

 
МК
Украина
Игры
Интернет
Железо
Софт
Пресс-релизы

  Статьи:

 
Уголок читателя
Прочее
Имеющий уши
Программирование
Интернет
Железо
Софт
Игры


 
КОНКУРСЫ



Правила конкурсов

Конкурс "АВЧ"

Рейтинг победителей


ОПРОС

Вы посещаете нас:
первый раз
1-2 раза в месяц
1-2 раза в неделю
1-2 раза в день
более 2-х раз в день Что привело Вас к нам?
поиск информации
интерес к статьям
интерес к новостям
любопытство
реклама
другое








боулинг

ads.mycomputer.ua

ads.mycomputer.ua

ads.mycomputer.ua

ads.mycomputer.ua

ads.mycomputer.ua













Argumentum ad ignorantiam!

 

статьи
Софт



 

На правах рекламы  
Прочее  
Свободная ВаRя  
Не windows  
Windows  
Графика  
Развлечения  
Интернет  
Утилиты  
Офис  




    Графика


Матлаборатория-3

Александр СОЛОВЕЙ
N 4 (435) 20.01.2007


Продолжение. Начало см. в МК №
В прошлых выпусках мы ознакомились с основными возможностями MatLAB, научились работать с матрицами, строить графики и решать системы уравнений. Сегодня речь пойдет о трехмерных представлениях MatLAB и о создании собственных функций в среде.

Графики функций с несколькими неизвестными

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

Приведем пример создания графика функции z=x3/2+xy+y3/2:

Результат вы можете увидеть на рисунке ( рис. 1).

Рисунок 1.

Каркасные поверхности создаются командой surf, по синтаксису схожей с mesh ( рис. 2):

Рисунок 2.

Задать выводимое полотно можно командой shading. Так, при shading flat поверхность состоит из квадратиков цвета, а shading interp — из переливающейся радуги (как на рисунке).

Команды surfc, meshc дополнительно к построению отображают проекции изгибов фигуры.

Обширны возможности MatLAB и по созданию контурных графиков. Задав массив levels с определенными уровнями, можно создавать контурные графики командами contour, contourf (двухмерные графики поверхностей), contour3 (3D-график).

Создание функций в MatLAB

Каждая функция MatLAB (как штатная, так и создаваемая пользователем) хранится в одноименном файле с расширением .m. Создать файл достаточно просто: File > New > M–File откроет редактор M–файлов. Начинается функция со слова function, после чего следует имя результата (или множество, заключенное в квадратные скобки, если результатов несколько) и список передаваемых параметров. Операторных скобок в MatLAB нет (по крайней мере, я не встречал). Конец блока, как и конец функции, обозначается словом end.

Пример функции, вычисляющей корни квадратного выражения:

Поместим этот текст в файл qsolve.m.

Теперь, вызвав функцию [ans1, ans2] = qsolve(1,4,1), мы получим корни квадратного уравнения x2+4x+1=0.

Работа с полиномами

Прежде чем описывать работу с полиномами, расскажу о замечательной функции pretty, которая позволяет выводить любые выражения в более дружественном для человека формате — так, например, (x^3)/a+x^2+x отобразится почти такой, как напечатана в учебнике, разве что шрифтом одного размера ( рис. 3).

Рисунок 3.

Все операции над символическими переменными и функциями должны быть описаны словами sym и syms соответственно, рассмотрим на примере:

В данном примере использовалась функция simple — она упрощает полином, перебирая всевозможные методы. Остальные, наиболее используемые методы смотрите в таблице 1.

Таблица 1.

Нахождение пределов, интегралов и производных

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

Функция limit определяет предел функции. Второй и третий аргумент могут указывать, какая переменная и куда стремиться, четвертый же, представленный строковыми константами left и right, позволяет определить поиск предела слева или справа.

Для примера найдем предел функции sin(x)/x, где  x стремится к нолю.

Если предел стремится к бесконечности, указывается служебное слово inf.

Нахождение производных осуществляется функцией diff.

При необходимости найти вторую, третью, n-ую производную — номер указывается вторым аргументом функции.

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

Когда будете решать — не забывайте дописывать свободный член (+C), MatLAB его не ставит.

Рассмотрим более сложный пример: двойной интеграл ( рис. 4).

Рисунок 4.

Решение дифференциальных уравнений

Для аналитического решения дифференциальных уравнений распространена всего одна, но очень мощная в этом плане функция — dsolve. Она может принимать неограниченное число аргументов с указанием уравнений. Производные функций задаются в уравнении как DNy, где  — порядок производной. По определенным причинам неизвестные в алгоритме функции называются не  x, а  t — на это следует обратить внимание.

Для примера: y’’-2y’=2e^x; y(1)=-1; y’(1)=0

Итоги

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







Расширенный поиск 
 

О проекте  Рекламодателям  Карта сайта  Контакт  Обратная связь 

© ИД "Мой компьютер"®, 1998-2004