Задачи

 

Версия для печати

Начало работы

Глава содержит задачи, не вошедшие в учебник «Maple для студентов-физиков» [2]. Для удобства пользования сохранена преемственность в нумерации задач.

Дополнительные сведения о командах и конструкциях языка Maple, которые понадобятся для решения задач и моделирования физических процессов, приведены в главе 2 данного учебника «Правила формального синтаксиса команд Maple и примеры».

Задача 1.22. Задайте функцию

Задайте функцию и вычислите f(1, 2), f(0, a), .

  • f:=(x,y)->l-sin(x"2+y"2);
  • evalf(f(1,2)); f(0,a);
  • simplify(f(a"2-b"2,b"2-a"2));
Задача 1.23. Задайте векторную функцию

Задайте векторную функцию и вычислите .

  • h:=(x,y)-Xcos(x-y),sin(x-y)>; evalf(h(l ,2)); h(Pi,-Pi);
  • combine(h(cos(a"2),cos(l-a"2)),trig);
Задача 1.24. Нарисуйте действительные корни уравнения

Нарисуйте действительные корни уравнения для .

  • Sol:=[solve(x"3+(a-3)"3*x"2-a"2*x+a"3=0,x)];
  • for i from 1 to 3 do
  • R||i:=unapply(Sol[i],a):
  • print(plot(R||i(a),a=0..1,numpoints=500)); od:
Задача 1.25. Расчет кусочной функции

Для функций и рассчитайте составную функцию и .

  • f:=x->x"2; h:=x->x+sin(x);
  • f(h(f(x))); (f@h@f)(x); f(f(f(f(x)))); (f@@4)(x);

Правила и примеры задания кусочной функции см. в параграфе 2.1. «Кусочные функции» главы 2 «Правила формального синтаксиса команд Maple и примеры».

Задача 1.26. Задайте функцию

Задайте функцию и постройте ее график в [–5, 5].

  • g:=x->piecewise(x>=-l and x<=0,l+x,x>=0 and x<=l,l-x,0);
  • plot(g(x),x=-3..3,thickness=3,color=blue);
  • g:=proc(x) if x>=-l and x<=0 then 1+x elif x>=0 and x<=l
  • then 1-x else 0 end if: end proc;
  • plot(g,-3..3,thickness=3,color=blue);
Задача 1.27. Механика Лагранжа голономной системы с N степенями свободы

В механике Лагранжа голономная система с N степенями свободы описывается уравнениями Лагранжа:

где L = T – P – функция Лагранжа системы; T – кинетическая энергия; P – потенциальная энергия; qi – обобщенные координаты; Qi – обобщенные силы (не порожденные потенциалом), и

.

Считаем, что обобщенные силы, , кинетическая и потенциальная энергии заданы. Напишем процедуру для вывода уравнений Лагранжа. Для примера рассмотрим движение двойного маятника с массой m и длиной L в вертикальной плоскости под действием сил тяжести. Для маятника (N = 2) обобщенными координатами являются углы (обозначим А и В), обобщенные не потенциальные силы = 0.

  • Eq_Lagrange:=proc(q,L,Q)
  • local i,j,N,dq,d2q,Lq,Ldq,dLdq,Eq;
  • N:=nops(q);
  • for i from 1 to N do dq[i]:=cat(q[i],`'`);
  • end do;
  • for i from 1 to N do d2q[i]:=cat(q[i],`''`);
  • end do;
  • for i from 1 to N do<
  • Lq:=diff(L,q[i]); Ldq:=diff(L,dq[i]);
  • dLdq:=add(diff(Ldq,q[j])*dq[j]+diff(Ldq,dq[j])*d2q[j],j=1..N);
  • Eq[i]:=dLdq-Lq-Q[i];
  • end do;
  • RETURN(normal(convert(Eq,list)));
  • end proc;
  • T:=m*x^2*`A'`^2+m*x^2*`A'`*`B'`*cos(A-B)+1/2*m*x^2*`B'`^2;
  • P:=-m*g*x*cos(A)-m*g*x*(cos(A)+cos(B));
  • q:=[A,B]; g:=omega^2*x; Q:=[0,0];
  • Eq_L:=Eq_Lagrange(q,T-P,Q);
  • Eq_L1:=factor(Eq_L);

См. параграф 2.2. «Объекты и операции с ними» главы 2 «Правила формального синтаксиса команд Maple и примеры».