示例#1
0
        b[i - 1] = conc[i, k]

    c = np.linalg.solve(A, b)

    for i in np.arange(0, len(x) - 2):
        conc[i + 1, k + 1] = c[i]

    conc[0, k + 1] = (4 / 3) * conc[1, k + 1] - (1 / 3) * conc[2, k + 1]
    conc[-1, k + 1] = (4 / 3) * conc[1, k + 1] - (1 / 3) * conc[2, k + 1]

err = np.zeros((len(x), len(t)))
errSumX = np.zeros((len(x), 1))

plt.figure()
for i in np.arange(0, len(t), 1):
    err[:, i] = abs(conc[:, i] - uf.cBar(x, t[i])).T
    plt.plot(x, conc[:, i], 'b', linewidth=3)
    plt.plot(x[::5], uf.cBar(x[::5], t[i]), 'rx', mew=5, ms=5)
    ##    plt.ylim((0,cmax))
    #    plt.plot(np.ones(40),np.arange(0,4,0.1),'--')
    #    plt.plot(-1*np.ones(40),np.arange(0,4,0.1),'--')
    #    plt.plot(x,np.ones(len(x)),'--')
    #    plt.plot(-x,np.ones(len(x)),'--')
    #    plt.xlim((x_start,3))
    plt.pause(0.00000001)
    plt.clf()
#

errSumX = np.sum(err[:, 1:], axis=1)
errSumT = np.sum(err[:, 1:], axis=0)
示例#2
0
    
    conc[0,k+1] = c[1]
    conc[-1,k+1] = c[-2]

#std = np.diff(sparktimes)
#sm1 = conc[400,:]
#s1 = conc[600,:]
#
#sdif = abs(sm1-s1)

err = np.zeros((len(x),len(t)))
errSumX = np.zeros((len(x),1))

plt.figure()
for i in np.arange(0,len(t),1):
    err[:,i] = abs(conc[:,i]-uf.cBar(x,t[i])).T
    plt.plot(x,conc[:,i],'b',linewidth=3)
#    plt.plot(x[::10],uf.cBar(x[::10],t[i]),'ro',mew=3,ms=3)
###    plt.ylim((0,cmax))
#    
#    plt.plot(np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(-1*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(2*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(-2*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(3*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(-3*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(4*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(-4*np.ones(40),np.arange(0,4,0.1),'--')
#    
#    plt.plot(x,np.ones(len(x)),'--')
#    plt.plot(-x,np.ones(len(x)),'--')
示例#3
0
#
#sdif = abs(sm1-s1)

err = np.zeros((len(x),len(t)))
errSumX = np.zeros((len(x),1))
#D=2
#x = x*2
#
#t = t*((d**2)/D)
##std = std*((d**2)/D)
#sparktimes = sparktimes*((d**2)/D)
#std = np.diff(sparktimes)
#conc = 0.14*conc
plt.figure()
for i in np.arange(0,len(t),1):
    err[:,i] = abs(conc[:,i]-uf.cBar(x,t[i])).T
    plt.plot(x,conc[:,i],'b',linewidth=3)
    plt.plot(x[::20],uf.cBar(x[::20],t[i]),'ro',mew=3,ms=3)
###    plt.ylim((0,cmax))
#    
    plt.plot(np.ones(40),np.arange(0,4,0.1),'--')
    plt.plot(-1*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(2*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(-2*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(3*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(-3*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(4*np.ones(40),np.arange(0,4,0.1),'--')
#    plt.plot(-4*np.ones(40),np.arange(0,4,0.1),'--')
#    
    plt.plot(x,np.ones(len(x)),'--')
    plt.plot(-x,np.ones(len(x)),'--')
示例#4
0
    c = np.linalg.solve(A, b)

    for i in np.arange(0, len(x) - 2):
        conc[i + 1, k + 1] = c[i]

    conc[0, k + 1] = (4 / 3) * conc[1, k + 1] - (1 / 3) * conc[2, k + 1]

realsol = np.zeros((len(x), len(t)))

err = np.zeros((len(x), len(t)))
errSumX = np.zeros((len(x), 1))
""" Plot solutions for all time """
plt.figure()
for i in np.arange(0, len(t), 1):
    err[:, i] = abs(conc[:, i] - uf.cBar(x, t[i])).T
    plt.plot(x, conc[:, i], 'b', linewidth=3)
    plt.plot(x, uf.cBar(x, t[i]))
    #    plt.ylim((0,cmax))
    plt.plot(np.ones(40), np.arange(0, 4, 0.1), '--')
    plt.plot(-1 * np.ones(40), np.arange(0, 4, 0.1), '--')
    plt.plot(x, np.ones(len(x)), '--')
    plt.plot(-x, np.ones(len(x)), '--')
    plt.xlim((x_start, 3))
    plt.pause(0.00000001)
    plt.clf()

errSumX = np.sum(err[:, 1:], axis=1)
errSumT = np.sum(err[:, 1:], axis=0)

plt.figure()