Documente Academic
Documente Profesional
Documente Cultură
1/24
6/29/2014
c output arguments:
c
ch8
(ch*8,sc,out)
2/24
6/29/2014
c
= WR_SUPLSITER - ls,iter id supress key
c
= WR_NOTELINE
- note line supress key
c
= WR_SUPCOLHEADER - column header supress key
c
= WR_SUPCOLMAX - column maximum supress key
c
c output arguments:
c
wrinqr (int,func,out)
- the value corresponding to key
keyid
keynot
keylab
keysum
3/24
6/29/2014
4/24
6/29/2014
typ=int,dp,log,chr,dcp
siz=sc,ar(n)
intent=in,out,inout
c input arguments:
c
variable (typ,siz,intent)
description
c
filein (ch*16,sc,in)
- Filename used for character portion of
c
message ID (this is the file name of the
c
file which contains the source for this
c
routine)
c
msgid
(int,sc,in)
- Numeric portion of the message ID
c
1 - 9999, unique for each erhandler
c
call in the FILE. Recommend using
c
a sequence, similar to format conventions,
c
i.e., 3010, 3020, 3030
c
msglvl (int,sc,in)
- level of error (same as anserr)
c
0=no label (used for u/i pop-ups)
c
-1=no label (used for u/i pop-ups) timed
c
as a note message
c
1=note, 2=warning, 3=error, 4=fatal
c
messg
(ch*256,sc,in)
- error message to display. use keywords
c
of %i %g %c %/ for formating (same as
c
anserr)
c
dperr
(dp,ar(*),in)
- vector of data to display. contains both
c
integer and double precision data.
c
(same as anserr)
c
cherr
(ch*(*),ar(*),in) - vector of character data to display
c
max length of character data is 32 characters
c
vector element. (same as anserr)
5/24
6/29/2014
c
= 0 - a yval of zero will not signal the end
c
of the table (e.g. stress fitting)
c
= 1 - a yval of zero will signal the end of
c
the table (in general, material
c
properties (exception: alpx))
c
c
NOTE: the end of the table will be signaled thru
c
either of the above conditions, or more
c
commonly, that nmax values have been processed,
c
or that the present x table entry is less than
c
the previous one (ax(i) .lt. ax(i-1)).
c
evaluations done after the end of the table are
c
evaluated as if they were at the end of the
c
table. similarly, evaluations done before the
c
beginning of the table are done as if they were
c
done at the beginning of the table.
c
c
xval
(dp,sc,in)
- value of x with which to go into the table
c
ax
(dp,ar(*),in)
- table of x values, in ascending order
c
ay
(dp,ar(*),in)
- table of y values
c
nmax
(int,sc,in)
- maximum table size allowed
c
c output arguments:
c
yval
(dp,sc,out)
- value of y which comes back from the table
c
kyoff
(int,sc,out)
- xval status flag
c
= 0 - xval in x range
c
= 1 - xval less than minimum x
c
= 2 - xval greater than maximum x
6/24
6/29/2014
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c
c output arguments: none
- vector v1
- vector v2
- length of vectors v1 and v2
c output arguments:
c
vdot
(dp,sc,out)
- vector va
- length of vector va
c output arguments:
c
vsum
(dp,sc,out)
- vector sum
http://mostreal.sk/html/prog_55/g-upf/UPS3.htm
7/24
6/29/2014
- vector v
- length of vector v
c output arguments:
c
locmax (int,sc,out)
c
vmax
(dp,sc,out)
3.3.4 lastv Function (Retrieving the Position of the Last Nonzero Term in a Double Precision Vector)
function lastv (v,n)
c *** primary function: find position of last non-zero term in a d.p. vector
c
c input arguments:
c
v
(dp,ar(n),in) - vector V
c
n
(int,sc,in)
- the number of items in the vector
C output arguments:
c
lastv
(dp,sc,out)
8/24
6/29/2014
- length of vector v
- constant to set vector v to
9/24
6/29/2014
c output arguments:
c
v
(dp,ar(n),out)
- vector v
- a vector
- b vector
- length of vectors a,b,c
c output arguments:
c
c
(dp,ar(n),out)
- c vector
10/24
6/29/2014
- vector a
- vector b
- length of vectors a,b,c
c output arguments:
c
c
(dp,ar(n),out)
- vector c
- vector v1
- length of vectors v1, v2
- constant to multiply v1
11/24
6/29/2014
c output arguments:
c
v2
(dp,ar(n),out)
- vector v2
typ=int,dp,log,chr,dcp
siz=sc,ar(n)
intent=in,out,inout
c input arguments:
c
a
(dp,ar(3),in)
c
b
(dp,ar(3),in)
c output arguments:
c
c
(dp,ar(3),out)
- resulting vector
12/24
6/29/2014
13/24
6/29/2014
- matrix a
- vector v
- number of rows in matrix a
- number of columns to multiply in matrix a
c output arguments:
c
w
(dp,ar(*),out)
- product vector w
c output arguments:
c
w
(dp,ar(na,*),out) - product vector w
14/24
6/29/2014
Transposed Matrix)
subroutine matxv1 (a,v, nr,nc)
c *** primary function: multiply vector by full transposed matrix
c *** Notice - This file contains ANSYS Confidential information ***
c input arguments:
c
a
(dp,ar(nr,*),in)
c
v
(dp,ar(nr),inout)
c
nr
(int,sc,in)
c
nc
(int,sc,in)
c
- matrix a
- vector v
- number of rows in matrix (un-transposed)
- number of columns in matrix (un-transposed)
*** nc limited to 60 ***
c output arguments:
c
v
(dp,ar(nc),inout) - product, stored in vector v
- matrix a
- matrix b
- number of rows in matrix a
- number of rows in matrix b
- number of rows in matrix c
- number of rows in matrix c to fill
- number of columns in matrix c to fill
- number of columns in matrix a and
number of rows of matrix b
to work with (the two need
to be the same for the inner product)
c output arguments:
c
c
(dp,ar(nc,*),out) - product matrix c
typ=int,dp,log,chr,dcp
siz=sc,ar(n)
intent=in,out,inout
c input arguments:
c
a
(dp,ar(*),in)
- vector to be multiplied by itself to
c
generate an nxn square matrix
c
(a by a-transposed)
c
c
(dp,ar(nc,*),inout) - matrix to be accumulated onto
c
nc
(int,sc,in)
- number of rows in the c matrix
c
n
(int,sc,in)
- size of square matrix
http://mostreal.sk/html/prog_55/g-upf/UPS3.htm
15/24
6/29/2014
con
(dp,sc,in)
c output arguments:
c
c
(dp,ar(nc,*),inout) - matrix to be accumulated onto
c
only the lower triangular matrix is done
c
c
typ=int,dp,log,chr,dcp
siz=sc,ar(n)
intent=in,out,inout
c input arguments:
c
a
(dp,ar(nd,*),inout) - matrix to have its lower triangular part
c
copied to its upper triangular part
c
nd
(int,sc,in)
- number of rows of the a matrix
c
n
(int,sc,in)
- size of matrix to be processed
c output arguments:
c
a
(dp,ar(nd,*),inout) - matrix that has its lower triangular part
c
copied to its upper triangular part
16/24
6/29/2014
typ=int,dp,log,chr,dcp
siz=sc,ar(n)
intent=in,out,inout
c input arguments:
c
variable (typ,siz,intent)
description
c
zs
(dp,ar(nz,nz),inout) - matrix to be transformed
c
tr
(dp,ar(ntr,ntr),in) - transformation matrix
c
nz
(int,sc,in)
- dimensioned size of zs matrix
c
ntr
(int,sc,in)
- dimensioned size of tr matrix
c
nrow
(int,sc,in)
- number of rows of zs matrix to transform
c
irot
(int,sc,in)
- block size to transform(size of tr matrix)
c output arguments:
c
variable (typ,siz,intent)
description
c
zs
(dp,ar(nz,nz),inout) - transformed matrix
typ=int,dp,log,chr,dcp
siz=sc,ar(n)
intent=in,out,inout
c input arguments:
c
variable (typ,siz,intent)
description
c
a
(dp,ar(nd,*),inout) - matrix to be solved or inverted
c
second dimension must be at least:
c
n + abs(nc)
c
nd
(int,sc,in)
- first dimension of the a matrix
c
n
(int,sc,in)
- number of equations
c
nc
(int,sc,in)
- number of additional columns.
c
if nc = +n or -n, invert n x n matrix and
c
put result in the n+1 to 2xn columns.
c
if nc is 0 or negative, nc will be reset to
c
n and then symeqn will set up identity
c
matrix after the input matrix, where the
c
result of the inversion will be put.
c
if nc is positive and less than n, do a
c
partial inversion. see example 1 below.
c output arguments:
c
variable (typ,siz,intent)
description
c
a
(dp,ar(nd,*),inout) - results or inverted matrix.
c
starts in column n+1.
c
note: original information is destroyed.
c
c example 1: Solve three simultaneous linear equations:
c
call symeqn (a(1,1),3,3,1)
c
calling routine has a dimensioned as a(3,4)
http://mostreal.sk/html/prog_55/g-upf/UPS3.htm
17/24
6/29/2014
c
c
c
c
c
c
c
c
c
18/24
6/29/2014
c
c input arguments:
c
variable (typ,siz,intent)
c
msg
(ch*256,sc,in)
c
k
(int,ar,in)
c
n
(int,sc,in)
c
inc
(int,sc,in)
c
c output arguments:
c
none
description
- message to print
- integer vector to print
- size of vector
- increment
19/24
6/29/2014
c input arguments:
c
variable (typ,siz,intent)
description
c
msg
(ch*256,sc,in)
- message to print
c
i
(int,sc,in)
- integer to print
c
r
(dp,sc,in)
- real to print
c
c output arguments:
c
none
20/24
6/29/2014
c
msg
(ch*256,sc,in)
c
k
(int,ar,in)
c
n
(int,sc,in)
c
c output arguments:
c
none
- message to print
- integer vector to print
- size of vector
21/24
6/29/2014
c
c output arguments:
c
none
22/24
6/29/2014
c output arguments:
c
none
http://mostreal.sk/html/prog_55/g-upf/UPS3.htm
23/24
6/29/2014
http://mostreal.sk/html/prog_55/g-upf/UPS3.htm
24/24