~gabriel1984sibiu/calculix/ccx

« back to all changes in this revision

Viewing changes to CalculiX/ccx_2.7/src/outputs.f

  • Committer: Grevutiu Gabriel
  • Date: 2016-12-30 12:06:41 UTC
  • Revision ID: gabriel1984sibiu@gmail.com-20161230120641-kzmhfy8mn00w3mhg
New upstream version

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
!
2
 
!     CalculiX - A 3-dimensional finite element program
3
 
!              Copyright (C) 1998-2014 Guido Dhondt
4
 
!
5
 
!     This program is free software; you can redistribute it and/or
6
 
!     modify it under the terms of the GNU General Public License as
7
 
!     published by the Free Software Foundation(version 2);
8
 
!     
9
 
!
10
 
!     This program is distributed in the hope that it will be useful,
11
 
!     but WITHOUT ANY WARRANTY; without even the implied warranty of 
12
 
!     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
13
 
!     GNU General Public License for more details.
14
 
!
15
 
!     You should have received a copy of the GNU General Public License
16
 
!     along with this program; if not, write to the Free Software
17
 
!     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18
 
!
19
 
      subroutine outputs(inpc,textpart,jout,itpamp,istep,istat,n,iline,
20
 
     &  ipol,inl,ipoinp,inp,ipoinpc)
21
 
!
22
 
!     reading the *OUTPUT card in the input deck
23
 
!
24
 
      implicit none
25
 
!
26
 
      character*1 inpc(*)
27
 
      character*132 textpart(16)
28
 
!
29
 
      integer istep,istat,n,key,ii,jout(2),joutl,iline,ipol,inl,
30
 
     &  ipoinp(2,*),inp(3,*),ipoinpc(0:*),itpamp
31
 
!
32
 
      if(istep.lt.1) then
33
 
         write(*,*) '*ERROR reading *OUTPUT'
34
 
         write(*,*) '       *OUTPUT'
35
 
         write(*,*) '       should only be used within a *STEP' 
36
 
         write(*,*) '       definition'
37
 
         stop
38
 
      endif
39
 
!
40
 
      do ii=2,n
41
 
        if(textpart(ii)(1:10).eq.'FREQUENCY=') then
42
 
           read(textpart(ii)(11:20),'(i10)',iostat=istat) joutl
43
 
           if(istat.gt.0) call inputerror(inpc,ipoinpc,iline,
44
 
     &"*OUTPUT %")
45
 
           if(joutl.eq.0) then
46
 
              do
47
 
                 call getnewline(inpc,textpart,istat,n,key,iline,ipol,
48
 
     &                inl,ipoinp,inp,ipoinpc)
49
 
                 if((key.eq.1).or.(istat.lt.0)) return
50
 
              enddo
51
 
           endif
52
 
           if(joutl.gt.0) then
53
 
              jout(1)=joutl
54
 
              itpamp=0
55
 
           endif
56
 
        elseif(textpart(ii)(1:11).eq.'FREQUENCYF=') then
57
 
           read(textpart(ii)(12:21),'(i10)',iostat=istat) joutl
58
 
           if(istat.gt.0) call inputerror(inpc,ipoinpc,iline,
59
 
     &"*OUTPUT %")
60
 
           if(joutl.eq.0) then
61
 
              do
62
 
                 call getnewline(inpc,textpart,istat,n,key,iline,ipol,
63
 
     &                inl,ipoinp,inp,ipoinpc)
64
 
                 if((key.eq.1).or.(istat.lt.0)) return
65
 
              enddo
66
 
           endif
67
 
           if(joutl.gt.0) then
68
 
              jout(2)=joutl
69
 
              itpamp=0
70
 
           endif
71
 
        else
72
 
            write(*,*) 
73
 
     &             '*WARNING reading *NODE FILE or *EL FILE:' 
74
 
            write(*,*) '         parameter not recognized:'
75
 
            write(*,*) '         ',
76
 
     &                 textpart(ii)(1:index(textpart(ii),' ')-1)
77
 
            call inputwarning(inpc,ipoinpc,iline,
78
 
     &"*OUTPUT %")
79
 
        endif
80
 
      enddo
81
 
!
82
 
      call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
83
 
     &     ipoinp,inp,ipoinpc)
84
 
!
85
 
      return
86
 
      end