C
CK=X(MJ) -X(MI)
BJI=Y(MJ)-YM
BJJ=YM-Y(MI)
BJM=Y(MI)-Y(MJ)
CJI=XM-X(MJ)
CJJ=X(MI)-XM
CJM=X(MJ) -X(MI)
BKI=YM-Y(MK)
BKM=Y(MK) -Y(MI)
BKK=Y(MI)-YM
CKI=X(MK)-XM
CKM=X(MI) -X(MK)
CKK=XM-X(MI)
TRS=ABS(CJ*BI-BJ*CI)
B.6. Source Programs
345
C introducing upstream weights
C
C
C
IF (IHC .EQ. 1) THEN
WI=l.!3 .
WJ=l.!3 .
WK=l.!3 .
ELSE
CALL WEIT(BI.BJ.BK.CI.CJ.CK.DXX(N) .VX(N) .VY(N) .WI.WJ.WK.PT)
ENDIF
BBJI=BJI+WI*BJM
BBJJ=BJJ+WJ*BJM
BBJK=WK*BJM
CCJI=CJI+WI*CJM
CCJJ=CJJ+WJ*CJM
CCJK=WK*CJM
BBKI=BKI+WI*BKM
BBKJ=WJ*BKM
BBKK=BKK+WK*BKM
CCKI=CKI+WI*CKM
CCKJ=WJ*CKM
CCKK=CKK+WK*CKM
C generating coefficient matrices of discretization equations
C
NI=MA(MI)
CFA(NI+1)=CFA(NI+1)
1
+«D11*BBJI+D12*CCJI)*(BI-BJ)
2
+ (D12*BBJI+D22*CCJI)*(CI-CJ)
3
+ (Dll*BBKI+D12*CCKI) * (BI-BK)
4
+ (D12*BBKI+D22*CCKI)*(CI-CK))/(2.*TRS)
IF (IHC .EQ. 2) THEN
VV=(VX(N)*(BBJI+BBKI)+VY(N)*(CCJI+CCKI))/4.
CFA(NI+l)=CFA(NI+l)+VV
ENDIF
CFB(NI+l) =CFB(NI+l) +TRS*SS/6.
NS=MA(MI+1)-MA(MI)
DO I=l.NS
IF(MCPN(I.MI) .EQ. MJ) THEN
CFA(NI+I)=CFA(NI+I)
1
+«Dll*BBJJ+D12*CCJJ)*(BI-BJ)
2
+ (D12*BBJJ+D22*CCJJ)*(CI-CJ)
3
+ (Dll*BBKJ+D12*CCKJ) * (BI-BK)
4
+ (D12*BBKJ+D22*CCKJ)*(CI-CK))/(2.*TRS)
IF (IHC .EQ. 2) THEN
VV=(VX(N)*(BBJJ+BBKJ)+VY(N)*(CCJJ+CCKJ))/4.
Précédent

- 360/392

Suivant