Python數(shù)學(xué)建模極簡(jiǎn)入門(mén)(五)--動(dòng)力系統(tǒng)習(xí)題

第一題

  1. 你計(jì)劃拿出一部分薪水作為子女的教育經(jīng)費(fèi),你希望在賬戶里有足夠的存款,使得從現(xiàn)在開(kāi)始20年后的開(kāi)始8年里,每月能提出1000美元,賬戶每年付給你0.35%的利息。 問(wèn)題:a. 為完成你的投資目標(biāo),從現(xiàn)在開(kāi)始的20年里你總共需要累積多少錢(qián)?注:20年后停止投資。b. 在以后的20年里你每月必須存多少錢(qián)?

解:
a. 首先說(shuō)明我們的利率是這樣計(jì)算的,年利率0.35,月利率為0.35/12=0.02917這其實(shí)是銀行貸款常用的算法。
'''思路:需要累積多少錢(qián),即到二十年年末有多少錢(qián)將每個(gè)月提出的1000美元折算到第21年的一月份初;
20年1月底:initialValue1 = a1/(1+0.0002917)
20年2月底:initialValue2 = a2/(1+0.0002917)^2
……
將所有的a都這算成初始值,加起來(lái)就行了
8年總共有96個(gè)月'''

draw = 1000
InitialDeposit = []
TotalDeposit = 0
for i in range(0,96):
    draw = draw/(1+0.0002917)
    InitialDeposit.append(draw)
TotalDeposit = sum(InitialDeposit)
print(TotalDeposit)
\#積累了94654.69358881074美元

b.'''思路:這個(gè)問(wèn)題稍微復(fù)雜一丟丟,需要將每個(gè)月的存款設(shè)成未知數(shù)20年里每個(gè)月必須存x元,折算成二十年后的本利和,再與之前的求解立方程來(lái)解'''

TotalDeposit = 94654.69358881074
MonthlyDeposit = 0
rate = (1+0.0002917)
rates = []
for i in range(0,240):
    rates.append(rate)
    rate = rate * (1+0.0002917)
TotalRates = sum(rates)
MonthlyDeposit = TotalDeposit/TotalRates
print(MonthlyDeposit)
\#需要存 380.69668460355354美元

第二題

我們正在考慮鯨魚(yú)的生存問(wèn)題,又假設(shè)如果鯨魚(yú)的數(shù)量降低到低于最小生存水平m以下,該物種將會(huì)滅絕。還假設(shè)由于環(huán)境的容量M,鯨魚(yú)的數(shù)量是受限制的,也就是說(shuō),如果鯨魚(yú)的數(shù)量超過(guò)了M,那么由于環(huán)境不能支持,數(shù)量會(huì)衰減。在下列模型中,an表示n年后鯨魚(yú)的數(shù)量,對(duì)M = 5000 ,m = 100, k = 0.0001 以及 a0 = 1000求數(shù)值解。an+1 - an = k(M-an)(an-m)再對(duì)不同的M,m,k做實(shí)驗(yàn),試著對(duì)若干個(gè)a0的起始值做實(shí)驗(yàn),你的模型有什么預(yù)測(cè)?

import matplotlib.pyplot as plt
def Whale(a,M,m,k):
    list1 = []
    sum1 = 0
    for i in range(1,20):
        list1.append(a)
        a = a + k*(M-a)*(a-m)
    plt.plot(list1)
Whale(90,1000,100,0.0001)#參數(shù)隨便設(shè)置一下就行了

第三題

殺手病毒:

  1. 該病毒數(shù)目每小時(shí)翻番,當(dāng)數(shù)量達(dá)到100萬(wàn)時(shí)人體免疫系統(tǒng)才開(kāi)始反應(yīng)
  2. 反應(yīng)后身體發(fā)熱,使增長(zhǎng)速度變?yōu)槊啃r(shí)增長(zhǎng)50%
  3. 最大的響應(yīng)下,每小時(shí)能殺死200000個(gè)病毒復(fù)制體
  4. 當(dāng)病毒數(shù)量達(dá)到一萬(wàn)億個(gè)的時(shí)候,人會(huì)死亡
  5. 注射抗生素之后,病毒復(fù)制速度仍然為每小時(shí)50%(肯定是在免疫系統(tǒng)反應(yīng)之后才能發(fā)現(xiàn))但是免疫系統(tǒng)和抗生素每小時(shí)能殺死500000000個(gè)病毒復(fù)制體。

求: 為了保證病人生命,注射病毒的最晚時(shí)間

import matplotlib.pyplot as plt
VirusNumber = 1
hours = 1
\#首先計(jì)算要多少小時(shí)免疫系統(tǒng)才能反應(yīng)
while(VirusNumber <= 1000000):
    VirusNumber = VirusNumber * 2
    hours += 1
print(hours,VirusNumber)
\#結(jié)果為21小時(shí)小時(shí)之后免疫系統(tǒng)開(kāi)始反應(yīng)
\#計(jì)算不注射抗生素多少小時(shí)會(huì)死掉
while(VirusNumber <= 1000000000000):
    VirusNumber = VirusNumber * 1.5 - 200000
    hours += 1
print(hours)
\#結(jié)果為57小時(shí)后,病人會(huì)死亡
\#注射抗生素的情況,從第21小時(shí)開(kāi)始
def antibiotic(x):
    curve = []
    VirusNumber = 1048576
    for i in range(0,x):#尚未注射
        curve.append(VirusNumber)
        VirusNumber = VirusNumber * 1.5 - 200000
    while VirusNumber >= 0 and VirusNumber <= 1000000000000:
            VirusNumber = VirusNumber * 1.5 - 500000000
            curve.append(VirusNumber)
    plt.plot(curve)  
    if VirusNumber >1000000000000:
        return '死亡'
    if VirusNumber < 0:
        return '存活'
for i in range(1,25):
    print("第%d個(gè)小時(shí)注射會(huì)%s"%(i,antibiotic(i)))

結(jié)果計(jì)算出來(lái)最晚在第18個(gè)小時(shí)要注射抗生素了。
最后上一張沒(méi)什么用的圖………………

病毒數(shù)量曲線
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這一期講動(dòng)力系統(tǒng) 在準(zhǔn)備這一期教程的過(guò)程中我找到了一個(gè)挺有意思的課件,推薦給大家:動(dòng)力系統(tǒng)建模-唐云(清華大學(xué)教授...
    dalalaa閱讀 4,367評(píng)論 0 15
  • 今天是2017年1月2日我在承德,距離我畢業(yè)已經(jīng)過(guò)去了6個(gè)多月了,回首這一年,我決定進(jìn)行一個(gè)自我的總結(jié),希...
    阿洋的grow閱讀 615評(píng)論 0 0
  • 記得六、七歲時(shí),學(xué)校是有秋假的。而每到秋天,莊稼收割的季節(jié),田野便成了孩子們歡樂(lè)的海洋。 吃過(guò)午飯,避開(kāi)大...
    從頭兒活起閱讀 435評(píng)論 0 0
  • 又一天,烏鴉叼著肉又被狐貍發(fā)現(xiàn)了,狐貍對(duì)烏鴉說(shuō):"親愛(ài)的烏鴉,我們又見(jiàn)面了。"烏鴉眼睛里閃著兇光,狐貍看出...
    徐寅博閱讀 445評(píng)論 2 1
  • 不知從何時(shí)起,有了看的書(shū)夠多了可以開(kāi)始自己寫(xiě)文了的錯(cuò)覺(jué),但當(dāng)靜心思索題材時(shí)腦子里卻又是一團(tuán)亂麻。在我的文中,記錄的...
    Graxia閱讀 432評(píng)論 0 3

友情鏈接更多精彩內(nèi)容