Построение графиков в matlab по точкам. Иллюстрированный самоучитель по MatLab

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

Пусть тело состоит только из двух грузов массы и , соединенных стрежнем (рис. 125). Если масса стержня мала по сравнению с массами и , то ею можно пренебречь. На каждую из масс действуют силы тяжести, равные соответственно и ; обе они направлены вертикально вниз, т. е. параллельно друг другу. Как мы знаем, равнодействующая двух параллельных сил приложена в точке , которая определяется из условия

Рис. 125. Определение центра тяжести тела, состоящего из двух грузов

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

Так как две равные массы имеют общий центр тяжести в точке, делящей пополам расстояние между этими массами, то сразу ясно, что, например, центр тяжести однородного стержня лежит в середине стержня (рис. 126).

Поскольку любой диаметр однородного круглого диска делит его на две совершенно одинаковые симметричные части (рис. 127), то центр тяжести должен лежать на каждом диаметре диска, т. е. в точке пересечения диаметров - в геометрическом центре диска . Рассуждая сходным образом, можно найти, что центр тяжести однородного шара лежит в его геометрическом центре, центр тяжести однородного прямоугольного параллелепипеда лежит на пересечении его диагоналей и т. д. Центр тяжести обруча или кольца лежит в его центре. Последний пример показывает, что центр тяжести тела может лежать вне тела.

Рис. 126. Центр тяжести однородного стержня лежит в его середине

Рис. 127. Центр однородного диска лежит в его геометрическом центре

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

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

Рис. 128. Точка пересечения вертикальных линий, проведенных через точки подвеса и есть центр тяжести тела

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

Рис. 129. а) Центр тяжести соединенных шарниром брусков, расположенных на одной прямой, лежит на оси брусков, б) Центр тяжести согнутой системы брусков лежит вне брусков

81.1. Где находится центр тяжести двух одинаковых тонких стержней, имеющих длину 12 см и скрепленных в виде буквы Т?

81.2. Докажите, что центр тяжести однородной треугольной пластины лежит на пересечении медиан.

Рис. 130. К упражнению 81.3

81.3. Однородная доска массы 60 кг лежит на двух опорах, как показано на рис. 130. Определите силы, действующие на опоры.

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

Функция plot() позволяет менять цвет и тип отображаемой линии. Для этого, используются дополнительные параметры, которые записываются следующим образом:

plot(, , <’цвет линии, тип линии, маркер точек’>);

Обратите внимание, что третий параметр записывается в апострофах и имеет обозначения, приведенные в таблицах 3.1-3.3. Маркеры, указанные ниже записываются подряд друг за другом, например,

‘ko’ – на графике отображает черными кружками точки графика,
‘ko-‘ – рисует график черной линией и проставляет точки в виде кружков.

Табл. 3.1. Обозначение цвета линии графика

Цвет линии

фиолетовый

Табл. 3.2. Обозначение типа линии графика

Цвет линии

непрерывная

штриховая

пунктирная

штрих-пунктирная

Табл. 3.3. Обозначение типа точек графика

Цвет линии

звездочка

Ниже показаны примеры записи функции plot() с разным набором маркеров.

x = 0:0.1:2*pi;
y = sin(x);

subplot(2,2,1); plot(x,y,"r-");
subplot(2,2,2); plot(x,y,"r-",x,y,"ko");
subplot(2,2,3); plot(y,"b--");
subplot(2,2,4); plot(y,"b--+");

Результат работы фрагмента программы приведен на рис. 3.7. Представленный пример показывает, каким образом можно комбинировать маркеры для достижения требуемого результата. А на рис. 3.7 наглядно видно к каким визуальным эффектам приводят разные маркеры, используемые в программе. Следует особо отметить, что в четвертой строчке программы по сути отображаются два графика: первый рисуется красным цветом и непрерывной линией, а второй черными кружками заданных точек графика. Остальные варианты записи маркеров очевидны.

Рис. 3.7. Примеры отображения графиков с разными типами маркеров

Из примеров рис. 3.7 видно, что масштаб графиков по оси Ox несколько больше реальных значений. Дело в том, что система MatLab автоматически масштабирует систему координат для полного представления данных. Однако такая автоматическая настройка не всегда может удовлетворять интересам пользователя. Иногда требуется выделить отдельный фрагмент графика и только его показать целиком. Для этого используется функция axis() языка MatLab, которая имеет следующий синтаксис:

axis([ xmin, xmax, ymin, ymax ]),

где название указанных параметров говорят сами за себя.

Воспользуемся данной функцией для отображения графика функции синуса в пределах от 0 до :

x = 0:0.1:2*pi;
y = sin(x);

subplot(1,2,1);
plot(x,y);
axis();

subplot(1,2,2);
plot(x,y);
axis();

Из результата работы программы (рис. 3.8) видно, что несмотря на то, что функция синуса задана в диапазоне от 0 до , с помощью функции axis() можно отобразить как весь график, так и его фрагмент в пределах от 0 до .

Рис. 3.8. Пример работы функции axis()

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

Таблица 3.4. Функции оформления графиков

Название

Описание

Включает/выключает сетку на графике

title(‘заголовок графика’)

Создает надпись заголовка графика

xlabel(‘подпись оси Ox’)

Создает подпись оси Ox

ylabel(‘подпись оси Oy’)

Создает подпись оси Oy

text(x,y,’текст’)

Создает текстовую надпись в координатах (x,y).

Рассмотрим работу данных функций в следующем примере:

x = 0:0.1:2*pi;
y = sin(x);

plot(x,y);
axis();
grid on;
title("The graphic of sin(x) function");
xlabel("The coordinate of Ox");
ylabel("The coordinate of Oy");
text(3.05,0.16,"\leftarrow sin(x)");

Из результата работы данной программы, представленного на рис. 3.9, видно каким образом работают функции создания подписей на графике, а также отображение сетки графика.

Таким образом, используя описанный набор функций и параметров, можно достичь желаемого способа оформления графиков в системе MatLab.

Рис. 3.9. Пример работы функций оформления графика



Понравилась статья? Поделитесь с друзьями!