前提・実現したいこと
fpythonにおける単純なエラーの解決
発生している問題・エラーメッセージ
runfile('/Users/Desktop/python/ftdt.py', wdir='/Users//Desktop/python') File "/Users/Desktop/python/ftdt.py", line 37 for k in range (1,z_max+1): ^ SyntaxError: invalid syntax このようなエラーメッセージが出てしまい、解決できません。python初学者のため文内のミスでなくどこか前提が間違っているかもしれません。解答お願いします。
該当のソースコード
python
1import math 2import numpy as np 3 4z_max:int=300 5DELTA_Z=0.005 6DELTA_T=2.0e-12 7n_max:int=3000 8EPSILON0=8.854e-12 9MU0=1.234e-6 10 11Ey=[[0]*((n_max)+1)]*((z_max)+1) 12Hx=[[0]*(n_max+1)]*(z_max+1) 13epsilon=[0]*(z_max+1) 14mu=[0]*(z_max+1) 15sigma=[0]*(z_max+1) 16 17 18def ftdt(): 19 for i in range (0,z_max): 20 epsilon[i]=EPSILON0 21 mu[i]=MU0 22 sigma[i]=0.0 23 if(20<i<50): 24 Ey[0][i]=math.sin(2.0*math.pi*i/20.0) 25 Hx[0][i]=-1*(math.sin(2.0*math.pi*(i-0.5)/20.0))/math.sqrt(mu[1]/epsilon[i]) 26 else: 27 Ey[0][i]=0.0 28 Hx[0][i]=0.0 29 30 31ftdt() 32for n in range (1,n_max+1): 33 Ey[n][0]=0 34 Ey[n][z_max]=0 35 for j in range (1,z_max): 36 Ey[n][j]=(2*epsilon[j]-sigma[j]*DELTA_T)/(2*epsilon[j]+sigma[j]*DELTA_T*Ey[n-1][j]+(DELTA_T/DELTA_Z)*(2/(2*epsilon[j]+sigma[j]*DELTA_T))*(Hx[n-1][j+1]-Hx[n-1][j]) 37 for k in range (1,z_max+1): 38 Hx[n][k]=Hx[n-1][k]+(1/mu[k])*(DELTA_T/DELTA_Z)*(Ey[n][k]-Ey[n][k-1])
試したこと
前文の括弧の応対チェック
該当文の打ち直し
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。