1 | include(dom.inc)
2 |
3 | SUBROUTINE read_data
4 |
5 | ! ================================================================!
6 | ! !
7 | ! read_data.F : Reads all data from input files and allocates !
8 | ! global vectors. !
9 | ! !
10 | ! out : Global vectors with initialized data obtained !
11 | ! from *.in files. !
12 | ! !
13 | ! author : J. AMAYA (september 2007) !
14 | ! !
15 | ! ================================================================!
16 |
17 | USE mod_pmm
18 | USE mod_prissma
19 | USE mod_inout
20 |
21 | IMPLICIT NONE
22 |
23 | INCLUDE 'dom_constants.h'
24 |
25 | DOM_INT :: idir
26 | CHARACTER*80 :: quadfile, clfacefile, gdatafile
27 |
28 | ! -----------------------!
29 | ! Initialize variables !
30 | ! -----------------------!
31 | WRITE(*,*) " PRISSMA: Allocating vetors"
32 | IF (ALLOCATED(mu)) DEALLOCATE(mu)
33 | IF (ALLOCATED(eta)) DEALLOCATE(eta)
34 | IF (ALLOCATED(ksi)) DEALLOCATE(ksi)
35 | IF (ALLOCATED(w)) DEALLOCATE(w)
36 |
37 | ! -------------------!
38 | ! Read input files !
39 | ! -------------------!
40 | WRITE(*,*) " PRISSMA: Seting file names"
41 |
42 | clfacefile = path(1:len_trim(path))//'/CLFaces.in'
43 | gdatafile = path(1:len_trim(path))//'/Global.in'
44 | quadfile = path(1:len_trim(path))//'/Quadrature.in'
45 |
46 | WRITE(*,*) " PRISSMA: Opening files"
47 | OPEN(FILE_QUADR, FILE=quadfile , FORM='UNFORMATTED')
48 | OPEN(FILE_GDATA, FILE=gdatafile , FORM='UNFORMATTED')
49 | OPEN(FILE_CLFAC, FILE=clfacefile, FORM='UNFORMATTED')
50 |
51 | ! ----------------------!
52 | ! Read global mesh data !
53 | ! ----------------------!
54 |
55 | READ(FILE_GDATA) i_dom_ncells, i_dom_nnodes, &
56 | & i_dom_nfaces, i_dom_nfacesmax, ndir
57 |
58 | nallbandes = 371
59 |
60 | READ(FILE_CLFAC) i_dom_nbfaces
61 |
62 | ! -------------------------------!
63 | ! Read quadrature data from file !
64 | ! -------------------------------!
65 |
66 | WRITE(*,*) " >> MASTER: Reading quadrature data"
67 |
68 | ALLOCATE(mu (ndir))
69 | ALLOCATE(eta(ndir))
70 | ALLOCATE(ksi(ndir))
71 | ALLOCATE(w (ndir))
72 |
73 | WRITE(*,*) " >> MASTER total number of directions: ", ndir
74 | DO idir=1,ndir
75 | READ(FILE_QUADR) mu(idir), eta(idir), ksi(idir), w(idir)
76 | ENDDO
77 |
78 | ! ------------------!
79 | ! Close all files !
80 | ! ------------------!
81 | CLOSE(FILE_CLFAC)
82 | CLOSE(FILE_QUADR)
83 | CLOSE(FILE_GDATA)
84 |
85 | END SUBROUTINE read_data