MATLAB數學實驗報告

2021-07-25 09:16:00 字數 5265 閱讀 9364

matlab 數學實驗報告

一、 實驗目的

通過以下四組實驗,熟悉matlab的程式設計技巧,學會運用matlab的一些主要功能、命令,通過建立數學模型解決理論或實際問題。了解諸如分岔、混沌等概念、學會建立malthu模型和logistic模型、懂得最小二乘法、線性規劃等基本思想。

二、 實驗內容

2.1 實驗題目一

2.1.1實驗問題

feigenbaum曾對超越函式y=λsin(πx)(λ為非負實數)進行了分岔與混沌的研究,試進行迭代格式xk+1=λsin(πxk),做出相應的feigenbaum圖

2.1.2程式設計

clear;clf;

axis([0,4,0,4]);

hold on

for r=0:0.3:3.9

x=[0.1];

for i=2:150

x(i)=r*sin(3.14*x(i-1));

endpause(0.5)

for i=101:150

plot(r,x(i),'k.');

endtext(r-0.1,max(x(101:150))+0.05,['\it=',num2str(r)])

end加密迭代後

clear;clf;

axis([0,4,0,4]);

hold on

for r=0:0.005:3.9

x=[0.1];

for i=2:150

x(i)=r*sin(3.14*x(i-1));

endpause(0.1)

for i=101:150

plot(r,x(i),'k.');

endend執行後得到feigenbaum圖

2.2實驗題目二

2.2.1實驗問題

某農夫有乙個半徑10公尺的圓形牛欄,長滿了草。他要將一頭牛拴在牛欄邊界的樁欄上,但只讓牛吃到一半草,問拴牛鼻子的繩子應為多長?

2.2.2問題分析

如圖所示,e為圓abd的圓心,ab為拴牛的繩子,圓abd為草場,區域abcd為牛能到達的區域。問題要求區域abcd等於圓abc的一半,可以設bc等於x,只要求出∠a和∠b就能求出所求面積。先計算扇形abcd的面積,2a÷π×πx2=2aπ2,再求ab的面積,用扇形abe的面積減去三角形abe的面積即可。

2.2.3程式設計

f=inline('acos(x/20)*x^2+100*pi-200*acos(x/20)-x*sqrt(100-(x^2)/4)-50*pi');

a=0;

b=20;

dlt=1.0*10^-3;

k=1;

while abs(b-a)>dlt

c=(a+b)/2;

if f(c)==0

break;

elseif f(c)*f(b)<0

a=c;

else

b=c;

endfprintf('k=%d,x=%.5f\n',k,c);

k=k+1;

end2.2.4問題求解與結論

k=6,x=11.56250

k=7,x=11.71875

k=8,x=11.64063

k=9,x=11.60156

k=10,x=11.58203

k=11,x=11.59180

k=12,x=11.58691

k=13,x=11.58936

k=14,x=11.58813

k=15,x=11.58752

結果表明,要想牛只吃到一半的草,拴牛的繩子應該為11.6公尺。

2.3實驗題目三

2.3.1實驗問題

飼養廠飼養動物**,設每頭動物每天至少需要700g蛋白質、30g礦物質、100mg維生素。現有5種飼料可供選用,每種飼料每千克所含營養成分含量及單價如下表。試確定既能滿足動物生長的營養需要,又可使費用最省的選用飼料的方案。

五種飼料單位質量(1kg)所含營養成分

2.3.2問題分析與模型建立

設xj (j=1,2,3,4,5)表示飼料中所含的第j種飼料的數量。由於提供的蛋白質總量必須每天滿足最低要求70g,故應有

3x1+2x2+1x3+6x4+18x5≥700

同理,考慮礦物質和維生素的需求。應有

1x1+0.5x2+0.2x3+2x4+0.5x5≥30

0.5x1+1x2+0.2x3+2x4+0.8x5≥100

希望調配出來的混合飼料成本最低,故目標函式f為

f=0.2x1+0.7x2+0.4x3+0.3x4+0.8x5

當來對決策量xj的要求應為非負。

所以該飼料配比問題是乙個線性規劃模型

min f =0.2x1+0.7x2+0.4x3+0.3x4+0.8x5

3x1+2x2+1x3+6x4+18x5≥700

1x1+0.5x2+0.2x3+2x4+0.5x5≥30

0.5x1+1x2+0.2x3+2x4+0.8x5≥100

xj≥0,j=1,2,3,4,5

2.3.3模型評述

一般的食譜問題可敘述為: 設有 n 種食物,每種食物中含有 m 種營養成分。用ija 表示乙個單位的第 j 種食物中含有第 i 種營養的數量,用ib 表示每人每天對第 i 種營養的最低需求量,jc 表示第 j 種食品的單價,jx 表示所用的第 j 種食品的數量,一方面滿足 m 種營養成分的需要同時使事物的總成本最低。

一般的食譜問題的線性規劃模型為

這類線性規劃模型還可以描述很多諸如合理下料、最小成本運輸、合分派任務等問題,具有很強的代表性。

2.3.4模型計算

將該問題化成 matlab 中線性規劃問題的標準形式min f=0.2x1+0.7x2+0.4x3+0.3x4+0.8x5

-3x1-2x2-1x3-6x4-18x5≤-700

-1x1-0.5x2-0.2x3-2x4-0.5x5≤-30

-0.5x1-1x-0.2x3-2x4-0/;.8x5≤-100

j≥0,j=1,2,3,4,5

由matlab軟體的編輯器構作m檔案lf如下:

c=[0.2,0.7,0.4,0.3,0.8];

a=[-3,-2,-1,-6,-18;-1,-0.5,-0.2,-2,-0.5;-0.5,-1,-0.2,-2,-0.8];

b=[-700,-30,-100];

lb=[0 0 0 0 0];

ub=;

aeq=;

beq=;

[x,fval]=linprog(c,a,b,aeq,beq,lb,ub)

在matlab命令視窗鍵入lf,回車,計算結果顯示如下

x= 0.0000

0.0000

0.0000

39.7436

25.6410

fval =

32.4359

其結果顯示x1=0 x2=0 x3=0 x4=39.7436 x5=25.6410,則表示該公司分別購買第四種第五種飼料39.

7436(kg), 25.6410(kg)配成混合飼料;所耗成本32.4359(元)為滿足營養條件下的最低成本。

2.3.5模型思考:線性規劃的本質特點

一. 目標函式是決策變數的線性函式

二. 約束條件是決策變數的線性等式或不等式,它是一種較為簡單而又特殊的約束極值問題。

三. 能轉化為線性規劃問題的例項很多如:生產決策問題,一般性的投資問題,位址的選擇,運輸問題等等。

2.4實驗題目四

2.4.1 實驗題目描述

2023年到2023年各年美國人口數的統計資料如下表:

試根據以上資料,

(1) 分別用malthu模型和logistic模型建立美國人口增長的近似曲線(設美國人口總體容納量為3.5億);

(2) **2023年,2023年,2023年,2023年,2023年人口數;

(3) 對兩種**結果進行比較.

2.4.2問題的分析

2.4.2.1 malthu模型

2023年,malthus提出對生物繁殖規律的看法。他認為,一種群中個體數量的增長率與該時刻種群的的個體數量成正比。設x(t)表示該種群在t時刻個體的數量,則其增長率(dx/dt)=rx(t),或相對增長率1/x*dx/dt=r.

其中常數r=b-d,b和d分別為該種群個體的平均生育率與死亡率。

2.4.2.2 logistic模型

2023年,verhulst指出上述模型未考慮「密度制約」因素。種群生活在一定的環境中,在資源給定的情況下,個體數目越多,個體所獲資源就越少,這將抑制其生長率,增加死亡率。所以相對增長率1/x*(dx/dt)不應為一常數r,而應是r乘上乙個「密度制約」因子。

此因子隨x單調減小,設其為(1-x/k),其中k為環境容納量。於是verhulst提出logistic模型:dx/dt=rx(1-x/k)。

2.4.3實驗設計的流程

2.4.3.1 malthu模型源**

clear;clf

x=10:10:200;

y=[3.9 5.3 7.

2 9.6 12.9 17.

1 23.2 31.4 38.

6 50.2 62.0 72.

0 92.0 106.5 123.

2 131.7 150.7 179.

3 204.0 226.5];

plot(x+1780,'k-','markersize',20);

axis([1780,2020,3,800]);

grid;hold on

n=20;

a=sum(x(1:n));

b=sum(x(1:n).*x(1:n));

c=sum(log(y(1:n)));

d=sum(log(y(1:n)).*x(1:n));

a=[n a;a b];

b=[c;d];

p=inv(a)*b;

t=10:10:800;

f=exp(p(1)+p(2)*t);

plot(t+1780,f,'ro-','linewidth',2);

k=[2000 2005 2010 2015 2020];

f=exp(p(1)+p(2)*(k-1780));

fprintf('f=%.1f',f);

2.4.3.2 logistic模型程式源**

clc;clear;

x=9:28;

y=[3.9 5.3 7.

2 9.6 12.9 17.

1 23.2 31.4 38.

6 50.2 62.0 72.

0 92.0 106.5 123.

2 131.7 150.7 179.

3 204.0 226.5];

MATLAB數學實驗報告

人口統計與 指導老師 王寧 實驗者 核工程93 孔海宇 09032064 核工程93 萬承輝 09032075 核工程93 張勇 09032082 實驗日期 2010年5月28日 實驗目的 通過對人口 問題的分析求解,了解利用最小二乘法進行資料擬合的基本思想,熟悉尋找最佳擬合曲線的方法,掌握建立增長...

數學matlab上機實驗報告

班級 土木01 姓名 謝昌亞學號 10072014 實驗一 一 實驗問題 第81頁上機實驗題 2如圖所示,為了在海島i與城市c之間鋪設一條地下光纜,每千公尺光纜鋪設成本在水下部分是c1,在地下部分是c2,為使得鋪設的光纜的總成本最低,光纜的轉折點p 在海岸線上 應該取在何處?二 問題分析 本題是典型...

數學實驗報告 基於matlab

西安交通大學 實驗報告 課程 高數實驗 班級 自動化32 姓名 張文傑 學號 2130504049 日期 2014年4月20日 1 計算值其它公式 請按照上述公式分別程式設計計算並與 1 就精度與疊加次數進行比較,能得出什麼結論?解 1 按照以下的程式得到n取不同的值 1 式計算的的近似值 form...