Cloned SEACAS for EXODUS library with extra build files for internal package management.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

111 lines
3.6 KiB

C Copyright(C) 1999-2020 National Technology & Engineering Solutions
C of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
C NTESS, the U.S. Government retains certain rights in this software.
C
C See packages/seacas/LICENSE for details
C=======================================================================
SUBROUTINE TPMAIN (A, NEUTRL, NAMES,
& NPTIMS, IPTIMS, TIMES, WHOTIM, BLKCOL,
& IDELB, MAPEL, MAPND)
C=======================================================================
C --*** TPMAIN *** (TPLOT) TPLOT main plot routine
C -- Written by Amy Gilkey - revised 02/29/88
C --
C --TPMAIN reads the plot variables, and displays the time-history or
C --the variable-versus-variable plots.
C --
C --Parameters:
C -- A - IN - the dynamic memory base array
C -- NEUTRL - IN - the type of neutral file to write.
C -- NAMES - IN - the variable names
C -- NPTIMS - IN - the number of selected time steps
C -- IPTIMS - IN - the selected time steps
C -- TIMES - IN - the database times
C -- WHOTIM - IN - true iff whole (versus history) time step
C -- BLKCOL - IN/OUT - the user selected colors of the element blocks.
C -- BLKCOL(0) = 1 if the user defined material
C -- colors should be used in mesh plots.
C -- = -1 if program selected colors should
C -- be used.
C -- BLKCOL(i) = the user selected color of element
C -- block i:
C -- -2 - no color selected by user.
C -- -1 - black
C -- 0 - white
C -- 1 - red
C -- 2 - green
C -- 3 - yellow
C -- 4 - blue
C -- 5 - cyan
C -- 6 - magenta
C --
C --Common Variables:
C -- Uses NTPVAR of /TPVARS/
include 'params.blk'
PARAMETER (KLFT=1, KRGT=2, KBOT=3, KTOP=4)
C --These parameters define the indices of 2D limit arrays
include 'dbnums.blk'
include 'tpvars.blk'
DIMENSION A(*)
CHARACTER*(*) NAMES(*)
INTEGER IPTIMS(NPTIMS)
REAL TIMES(*)
LOGICAL WHOTIM(*)
INTEGER BLKCOL(0:NELBLK)
INTEGER IDELB(*)
INTEGER MAPEL(*), MAPND(*)
REAL TIMLIM(2)
C --Use the selected color table
CALL GRCOLU ('ALTERNATE')
C --Reserve storage for plot variables
C --*NOTE* PLTVAL(x,NTPVAR+1) holds the time data
C -- PLTVAL(x,NTPVAR+2) holds the compressed time data
LPLVAR = NPTIMS * NTPVAR
L = 0
IF (TIMPLT) THEN
L = NPTIMS + NPTIMS
END IF
CALL MDRSRV ('PLTVAL', KPLVAL, LPLVAR + L)
CALL MDSTAT (NERR, MEM)
IF (NERR .GT. 0) GOTO 100
C --Read plot variables
CALL TPREAD (A, NPTIMS, IPTIMS, TIMES, WHOTIM,
& A(KPLVAL+LPLVAR), A(KPLVAL))
CALL MDSTAT (NERR, MEM)
IF (NERR .GT. 0) GOTO 100
C --Compress plot variables
CALL MDRSRV ('NPTCRV', KNPTS, NTPVAR)
CALL MDSTAT (NERR, MEM)
IF (NERR .GT. 0) GOTO 100
CALL SQZTPV (NPTIMS, IPTIMS, WHOTIM, A(KNPTS), A(KPLVAL))
C --Plot
TIMLIM(1) = TIMES(IPTIMS(1))
TIMLIM(2) = TIMES(IPTIMS(NPTIMS))
CALL TPPLOT (NEUTRL, NPTIMS, A(KNPTS), TIMLIM, A(KPLVAL),
& NAMES, BLKCOL, MAPEL, MAPND)
CALL MDDEL ('PLTVAL')
CALL MDDEL ('NPTCRV')
100 CONTINUE
RETURN
END