Python Forum
How can I program this algorithm with Python
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How can I program this algorithm with Python
#6
Now, I wrote this new code. But we always have an error :
import numpy as np
from scipy.integrate import odeint
import matplotlib.pyplot as plt
n=2501
lambd1=np.arange(n)
lambd2=np.arange(n)
lambd3=np.arange(n)
lambd4=np.arange(n)
x=np.arange(n)
y=np.arange(n)
vi=np.arange(n)
vni=np.arange(n)
u1=np.arange(n)
u2=np.arange(n)
x[0]=200
y[0]=80
vi[0]=5000
vni[0]=0
lambd1[n-1]=0
lambd2[n-1]=0
lambd3[n-1]=0
lambd4[n-1]=0
u1[0]=0
u2[0]=0
s=10
d=0.02
beta=2.4*10**-5
a=0.5
k=600
mu=3
r=0.01
h=100/(n-1)
for i in range(n):
    x[i+1]=(x[i]+h*(s+r*y[i]))/(1+h*(d+(1-u1[i])*beta*vi[i]))
    y[i+1]=(y[i]+h*(1-u1[i])*beta*vi[i]*x[i+1])/(1+h*(a+r))
    vi[i+1]=(vi[i]+h*(1-u2[i])*k*y[i+1])/(1+h*mu)
    vni[i+1]=(vni[i]+h*hu2[i]*k*y[i+1])/(1+h*mu)
for i in range(1,n):
    lambd1[n-i-1]=(lambd1[n-i]+h*(1+(1-u1[i])*beta*vi[i+1]*lambd2[n-i]))/(1+h*(d+(1-u1[i])*beta*vi[i]))
    lambd2[n-i-1]=(lambd2[n-i]+h*(r*lambd1[n-i-1]+lambd[n-i]*(1-u2[i])*k+k*u2[i]*lambd4[n-i])/(1+h*(a+r))
    lambd3[n-i-1]=(lambd3[n-i]+(lambd2[n-i-1]-lambd1[n-i-1])*(1-u1[i])*beta*x[i+1]*h)/(1+h*mu)
    lambd4[n-i-1]=lambd4[n-i]/(1+h*mu)
for i in range(0, n):
    R1[i+1]=((lambd1[n-i-1]-lambd2[n-i-1])*beta*vi[i+1])/A1
    R2[i+1]=((lambd4[n-i-1]-lambd3[n-i-1])*k*y[i+1])/A2
    u1[i+1]=min(1,max(R1[i+1],0))
    u2[i+1]=min(1,max(R2[i+1],0))
Returned message :
Error:
lambd3[n-i-1]=(lambd3[n-i]+(lambd2[n-i-1]-lambd1[n-i-1])*(1-u1[i])*beta*x[i+1]*h)/(1+h*mu) ^ SyntaxError: invalid syntax
Reply


Messages In This Thread
RE: How can I program this algorithm with Python - by docmaths - Jul-08-2019, 08:14 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Genetic Algorithm Tetris Python not improving Fanto88 0 1,700 Mar-06-2021, 09:16 PM
Last Post: Fanto88

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020