Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Элементы виртуальной физической реальности на ряде примеров

Занятие №9

 

Задача №1. Воспроизвести визуально и программно колебания струны u (t, x) (t — время, x — пространственная координата) с закрепленными концами. На рис.1 приведено начальное положение струны.

 

Рис.1. Начальное положение струны

 

Решение соответствующего волнового уравнения (utt - a 2 uxx = 0, u (t,0) = u (t, L) = 0, u (0, x) = u 0(x), ut (0 ,x) = 0) представим в виде ряда:

.

 

Решение. Создадим m-файл, моделирующий динамику струны:

global Cn numfun a L x0

hF=figure(¢NumberTitle¢,¢off¢,¢Name¢, …

¢The oscillations of string¢,¢Color¢,[0 1 0]);

hA=axes(¢Parent¢,hF,¢Units¢,¢pixels¢,¢Position¢,[25 25 500 325]);

r=2; L=5; h=1; x0=1; a=1;

numfun=30; numx=20; dx=L/numx;

Cn=2*h*L^2/(pi^2*x0*(L-x0));

axis([0,L,–h,h]); X=[];

for i=1:(numx+1)

xn=dx*(i-1); X=[X,xn];

end

for t=1:300

Y=zeros(1,numx+1);

for i=1:(numx+1)

x=X(i); Y(i)=u(t,x);

end

line(X,Y,¢Color¢,¢black¢,¢EraseMode¢,¢none¢,¢LineWidth¢,r);

pause(0.1);

line(X,Y,¢Color¢,¢white¢,¢EraseMode¢,¢none¢,¢LineWidth¢,r);

end

Создаем m-функцию, вычисляющую сумму ряда и соответственно форму струны u (t,x):

function Y=u(t,x)

global Cn numfun a L x0

s=0;

for n=1:numfun

m1=sin(pi*x0*n/L);

m2=sin(pi*x*n/L);

m3=cos(pi*a*t*n/L);

s=s+m1*m2*m3/(n*n);

end

Y=Cn*s;

 

Задача №2. Смоделировать визуально и программно часы с тремя стрелками в виде соответствующего MATLAB сценария.

Решение:

hF=figure(¢NumberTitle¢,¢off¢,¢Name¢, …

¢The Arrow Clock¢, ¢Color¢,[0 1 0]);

hA=axes(¢Parent¢,hF,¢Units¢,¢pixels¢,¢Position¢,[25 25 125 125]);

axis([-1,1,-1,1]);

r=3; x0=0; y0=0;

LS=0.9; LM=0.7; LH=0.5;

asec=-pi/30;

fis=0; fim=0; fih=0;

for t=1:300

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

xs=x0+LS*cos(fis);

ys=y0-LS*sin(fis);

XS=[x0,xs]; YS=[y0,ys];

xm=x0+LM*cos(fim);

ym=y0-LM*sin(fim);

XM=[x0,xm]; YM=[y0,ym];

xh=x0+LH*cos(fih);

yh=y0-LH*sin(fih);

XH=[x0,xh]; YH=[y0,yh];

line(XS,YS,¢Color¢,¢black¢,¢EraseMode¢,¢none¢,¢LineWidth¢,1);

line(XM,YM,¢Color¢,¢black¢,¢EraseMode¢,¢none¢,¢LineWidth¢,2);

line(XH,YH,¢Color¢,¢black¢,¢EraseMode¢,¢none¢,¢LineWidth¢,3);

pause(0.1);

line(XS,YS,¢Color¢,¢white¢,¢EraseMode¢,¢none¢,¢LineWidth¢,1);

line(XM,YM,¢Color¢,¢white¢,¢EraseMode¢,¢none¢,¢LineWidth¢,2);

line(XH,YH,¢Color¢,¢white¢,¢EraseMode¢,¢none¢,¢LineWidth¢,3);

fis=fis-asec;

fim=fim-asec/12;

fih=fih-asec/144;

end

 

Задача №3. Смоделировать стереоэффект (оптическую иллюзию) на примере изображения тетраэдра, представленного в виде отрезков линий. Стереоэффект реализовать с помощью вращения вершин A, B, C по часовой стрелке, а вершины D — против часовой стрелки. На рис.2 приведен примерный эскиз изображения тетраэдра.

 

Рис.2. Стрелки у вершин тетраэдра указывают
направление вращения вершин

 

Решение.

Задаем рабочее окно:

hF=figure(¢NumberTitle¢,¢off¢,¢Name¢, …

¢Stereo Effect of Plain Images¢,¢Color¢,[0 1 0]);

hA=axes(¢Parent¢,hF,¢Units¢,¢pixels¢,¢Position¢,[25 25 325 325]);

axis([-1,1,-1,1]);

r=3; LS=0.1; asec=-pi/30; fis=0;

Задаем вершины тетраэдра и их вращения:

x=[-0.5,0,0.6,0]; y=[-0.5,0.8,-0.4,0];

xb=-0.3; yb=-0.3;

for t=1:300

xs=LS*cos(fis); ys=LS*sin(fis);

xh=1.5*LS*cos(fis); yh=-1.5*LS*sin(fis);

XS=[x(1)+xs,x(2)++xs,x(3)+xs,x(1)+xs, …

x(4)+xh,x(2)+xs,x(3)+xs,x(4)+xh];

YS=[y(1)+ys,y(2)++ys,y(3)+ys,y(1)+ys, …

y(4)+yh,y(2)+ys,y(3)+ys,y(4)+yh];

line(XS,YS,¢Color¢,¢black¢,¢EraseMode¢,¢none¢,¢LineWidth¢,r);

pause(0.1);

line(XS,YS,¢Color¢,¢white¢,¢EraseMode¢,¢none¢,¢LineWidth¢,r);

fis=fis+asec;

end;



<== предыдущая лекция | следующая лекция ==>
Очистительные клизмы ставятся не позднее, чем за 2 часа до предстоящего исследования, т.к. изменяют рельеф слизистой оболочки кишечника. | ЗВУК Л согласный сонорный звонкий твердый
Поделиться с друзьями:


Дата добавления: 2016-12-17; Мы поможем в написании ваших работ!; просмотров: 237 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Что разум человека может постигнуть и во что он может поверить, того он способен достичь © Наполеон Хилл
==> читать все изречения...

2488 - | 2300 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.01 с.