三对角方程直接解法--追赶法+TDMA程序
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
void ZG(int n)
{
for(i=1;i<=n-1;i++)
U[i]=c[i];
L[1]=b[1];
for(i=2;i<=n;i++)
{
M[i]=a[i]/L[i-1];
L[i]=b[i]-M[i]*U[i-1];
}
Y[1]=f[1];
for(i=2;i<=n;i++)
Y[i]=f[i]-M[i]*Y[i-1];
Q[i]=(D[i]+C[i]*Q[i-1])/(A[i]-C[i]*P[i-1]);
}
T[n]=Q[n];
for(i=n-1;i>=1;i--)
T[i]=P[i]*T[i+1]+Q[i];
}
X[n]=Y[n]/L[n];
for(i=n-1;i>=1;i--)
X[i]=(Y[i]-U[i]*X[i+1])/L[i];
}
void TDMA(inБайду номын сангаас n)
{
P[1]=B[1]/A[1];
Q[1]=D[1]/A[1];
for(i=2;i<=n;i++)
{
P[i]=B[i]/(A[i]-C[i]*P[i-1]);
{
for(i=1;i<=n-1;i++)
U[i]=c[i];
L[1]=b[1];
for(i=2;i<=n;i++)
{
M[i]=a[i]/L[i-1];
L[i]=b[i]-M[i]*U[i-1];
}
Y[1]=f[1];
for(i=2;i<=n;i++)
Y[i]=f[i]-M[i]*Y[i-1];
Q[i]=(D[i]+C[i]*Q[i-1])/(A[i]-C[i]*P[i-1]);
}
T[n]=Q[n];
for(i=n-1;i>=1;i--)
T[i]=P[i]*T[i+1]+Q[i];
}
X[n]=Y[n]/L[n];
for(i=n-1;i>=1;i--)
X[i]=(Y[i]-U[i]*X[i+1])/L[i];
}
void TDMA(inБайду номын сангаас n)
{
P[1]=B[1]/A[1];
Q[1]=D[1]/A[1];
for(i=2;i<=n;i++)
{
P[i]=B[i]/(A[i]-C[i]*P[i-1]);