C Rutina 070 C----------------------------------------------------------ESC_MATRIZ--- C C SUBRUTINA ESC_MATRIZ C C ESCRIBE LA MATRIZ DEL SISTEMA C SUBROUTINE ESC_MATRIZ(PRB,NOD,SAij,SFi) C IMPLICIT NONE INCLUDE '_param.for' INCLUDE '_struct.for' C CCCCCCCCCCCCCCCCCCCCCCCCCCC C VARIABLES EXTERNAS CCCCCCCCCCCCCCCCCCCCCCCCCCC C C PRB : Variables globales del problema RECORD /S_problema/ PRB C NOD : Nodos del problema RECORD /S_nodo/ NOD(N_MAX_NOD) C SAIJ(,) : Matriz del sistema. REAL*8 SAij(N_MAX_INC,N_MAX_INC) C SFI() : Termino independiente. REAL*8 SFi(N_MAX_INC) C CCCCCCCCCCCCCCCCCCCCCCCCCCC C VARIABLES INTERNAS CCCCCCCCCCCCCCCCCCCCCCCCCCC C INTEGER i,j,k,m,n C CCCCCCCCCCCCCCC C RUTINA CCCCCCCCCCCCCCC C C ESCRITURA EN LA BASE DE DATOS C IF(W_D.GE.2)THEN DO i=1,PRB.NINC j=0 DO WHILE(j.LT.N_MAX_NOD) j=j+1 k=0 m=NOD(j).NINC DO WHILE(k.LT.m) k=k+1 IF(NOD(j).INC(k).EQ.i)THEN WRITE(F_H,01) NOD(j).VAR(k),NOD(j).NUM, @ (SAij(n,i),n=1,PRB.NINC) k=m+1 j=N_MAX_NOD+2 END IF END DO END DO IF(j.EQ.N_MAX_NOD)THEN WRITE(F_H,01) 0,i,(SAij(n,i),n=1,PRB.NINC) END IF END DO WRITE(F_H,01) 0,0,(SFi(n),n=1,PRB.NINC) END IF C C FORMATOS DE ESCRITURA C 01 FORMAT(2x,i2,'(',i2,')',1x,1000(e18.12,1x)) C C FINAL DEL PROGRAMA C END C