Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
[ Цыганов ] Системы символьных вычислений (Maple).pdf
Скачиваний:
64
Добавлен:
22.08.2013
Размер:
449.75 Кб
Скачать

> with(plots): display3d({surf,planes});

Для того, чтобы определить область интегрирования рассмотрим проекцию на плоскость XY

> polarplot((cos(theta)^2-sin(theta)^2)^2,theta=0..2*Pi);

Теперь очевидно, что область интегрирования имеет вид

0 < z < 2 , 0 < θ < 2π , 0 < r < (cos^2 (θ) -- sin^2 (θ) ^ 2

Таким образом,Объем тела равен

> v:=Int(Int(Int(rho,rho=0..(cos(theta)^2-sin(theta)^2)^2), theta=0..2*Pi),z=0..2);

2

v := 22 π( cos( θ)2 sin( θ)2 ) ρ dρ dθ dz

0 0 0

Вычислим этот интеграл

> value(v);

3 π

4

3. Практическое занятие

Лабораторная работа 4

Метод наименьших квадратов

Напомним, как найти аппроксимирующую функцию в классе полиномов, т.е. когда требуется функцию g, заданную в n точках xj , приблизить

многочленом степени m < n :

m

f = ai xi

i =0

Итак, нам необходимо найти полином, который обеспечивает минимум

суммы

m ρi ( yi ai xi )2 i =0

Здесь ρi - вес, с которым в физике данное измерение влияет на выбор аппроксимирующей функции, т.е. если ρi = 0 , то i-тое измерение не

влияет на выбор аппроксимации. Для нахождения минимума достаточно продифференцировать это выражение по каждому из неизвестных коэффициентов ak . B результате, после преобразования, получим

m

k m

n

 

( i +k )

 

ρj yj xj

 

 

xj

 

k=0,..m

= ai ρi

 

j =1

i =0

j =1

 

 

 

Таким образом, для определения коэффициентов ak необходимо решить

систему (m+1) линейных уравнений, которые называют нормальными уравнениями, с (m+1) неизвестными ai . B матричной форме эту систему

уравнений можно записать в виде с=Ba, где B - симметрическая

9

матрица размерности (m+1).

 

 

 

Подчеркнем, что матрица

B не зависит от

значений

исходной

функции

yi . Это было достаточно

важным свойством

данного

метода,

так как

при обработке нескольких функций, заданных на одной сетке, достаточно было построить и обратить матрицу B только один раз. С развитием компьютеров это обстоятельство перестало быть определяющим при выборе метода аппроксимации.

Итак, предположим, что нам надо сдать лабораторную работу по закону Ома - сила тока прямо пропорциональна приложенному напряжению и

обратно пропорциональна сопротивлению проводника.

J = UR

Обычно, при фиксированном напряжении U изменяется сопротивление R и измеряется сила тока J.

Загрузим необходимые библиотеки

>restart:

with(plots): with(stats):

и смоделируем экспериментальную установку, используя известный нам по теории закон Ома,

> f:=r->U/r;

Для этого зададим напряжение

> U:=100:

и число измерений

> N:=10:

Пусть в эксперименте сопротивление реостата изменяется линейно, а сопротивление и ток мы измеряем идеальными приборами

> for i from 1 to N do

R[i]:=i; J[i]:=f(R[i]); end do:

Таким образом, мы построили график “идеальных” измерений

>Data:=[ [R[k],J[k]] $k=1..N]: plot([100/r,Data],r=R[1]..R[N],style=[line,point], symbol =circle,color=[red,maroon]);

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

>NoiseR:=stats[random, normald](N);

>NoiseJ:=stats[random, normald](N):

>for i from 1 to N do

Rn[i]:=R[i]*(1+0.03*[NoiseR][i]/max(NoiseR));

Jn[i]:=J[i]*(1+0.04*[NoiseJ][i]/max(NoiseJ)); end do:

Здесь сопротивление измеряется с погрешностью, не превосходящей 3%, а ток - 4% процентов. Эта погрешность указывается на реальных физических приборах.

10