This section explains the contents of the CMS matrices file (jobname.cms).
See The Standard Header for Mechanical APDL Binary Files for a description of this set. File number (Item 1) is 8.
*comdeck,fdcms
c *** Copyright ANSYS. All Rights Reserved.
c *** ansys, inc.
c ********** description of CMS (component mode synthesis) transformation file **********
character*8 CMSNM
parameter (CMSNM='cms ')
LONGINT cmsfpL, cmsfp
integer cmsbk, cmsut
common /fdcms/ cmsfpL, cmsbk, cmsut
equivalence (cmsfp,cmsfpL)
c ********** common variable descriptions ***********
co cmsfp file position on file cms
co cmsbk block number for file cms
co cmsut file unit for file cms
c See fddesc for documentation of how binary files are stored.
c
c ********** file format **********
c recid tells the identifier for this record. Not all records will have
c identifiers -- they are only indicated for those records whose
c record pointers are stored in the second file header.
c type tells what kind of information is stored in this record:
c i - integer
c dp - double precision
c cmp - complex
c nrec tells how many records of this description are found here
c lrec tells how long the records are (how many items are stored)
c recid type nrec lrec contents
c --- i 1 100 standard ANSYS file header (see binhed8 for
c details of header contents)
c --- i 1 40 .CMS FILE HEADER
c
c fun45, neqn, nirfm, nnorm, ncstm,
c nrsdm, cmsMeth, kStress, lenbac, numdof,
c cmsMixF, disF, 0, 0, 0,
c 0, 0, 0, 0, 0,
c 0, 0, 0, 0, 0,
c 0, ptrECRl, ptrECRh, ptrNARl, ptrNARh,
c ptrIRFl, ptrNORl, ptrCSTl, ptrRSDl, ptrIRFh,
c ptrNORh, ptrCSTh, ptrRSDh, ptrELDl, ptrELDh
c each item in header is described below:
c fun45 - unit number
c neqn - number of equations (DOF)
c nirfm - number of inertia relief modes
c nnorm - number of normal modes
c ncstm - number of constraint modes
c > 0 available in file
c < 0 not available in file
c nrsdm - number of residual modes
c cmsMeth - CMS method key
c 0 = fixed interface method
c 1 = free interface method
c 3 = residual-flexible free interface method
c 4 = user defined method
c cmsMixF - flags mixed interface method derived from
c 1 = free interface method
c 3 = Residual-flexible free interface method
c 0 = default
c disF - 1 = this file is a distributed .CMS file
c that contains only modal element results
c kStress - key if modal element results are on file
c ptrECRl,ptrECRh - 64 bit pointer to element centroidal results
c ptrNARl,ptrNARh - 64 bit pointer to nodal averaged result records
c ptrIRFl,ptrIRFh - 64 bit pointer to inertia relief modes
c ptrNORl,ptrNORh - 64 bit pointer to normal modes
c ptrCSTl,ptrCSTh - 64 bit pointer to constraint modes
c ptrRSDl,ptrRSDh - 64 bit pointer to residual modes
c ptrELDl,ptrELDh - 64 bit pointer to element records
c 0 - position not used
c --- i 1 neqn SOLVER-to-ANSYS mapping vector (lSOLVtoANS(i), i=1,neqn)
c Note: When using the residual-flexible free interface method
c the modes are written in ANSYS internal equation ordering
c and the SOLVER-to-ANSYS mapping is not available. For
c other methods the modes are written in solver equation
c ordering and the SOLVER-to-ANSYS mapping is available.
c --- i 1 lenbac Nodal equivalence table. This table equates the number used
c for storage to the actual node number.
c (Back(i),i=1,lenbac)
c NOR dp nnorm neqn Normal Modes
c
c IRF dp nirfm neqn Inertia Relief Modes
c
c CST dp ncstm neqn Constraint Modes
c
c RSD dp nrsdm neqn Residual modes
c modal element results if kStress = 1:
c ELD int 1 15 nelm, maskl, nItems, ptrELM, ptrERS,
c ptrCER, ptrCERh, ptrESL, ptrESLh, nRF, (10)
c ptrFR, ptrRFh, PrecKey, maskh, 0
c each item in header is described below:
c nelm - number of elements
c maskl,h - output mask (OUTRES)
c nItems - number of element records (7, VOL
c not included)
c ptrELM - pointer to element equivalence table
c ptrERS - pointer to element record sizes
c ptrCER,h - pointer to constant element records
c ptrESL,h - pointer to element index
c nRF - number of reaction forces
c ptrRF,h - pointer to reaction forces
c PrecKey - 0, double precision 1, single
c above pointers are relative to ptrELD
c --- int 1 2*nItems Total size of each element record (LONGINT)
c ELM int 1 nelm Element equivalence table
c This table equates the order number used to
c the actual element number
c ERS int nItems nelm Sizes of the nItem element results sets for
c each element
c CER int 1 5 ptrVOL, ptrEPT, ptrEUL, 0, 0
c above pointers are relative to ptrCER
c constant element records (do not vary by mode):
c VOL dp 1 nelm*1 Element volume
c EPT dp 1 nelm*size Element structural nodal temperatures
c EUL dp 1 nelm*size Element Euler angles
c ESL int 1 10 ptrENS, ptrEEL, ptrEMS, ptrENF, ptrENG,
c ptrENSh,ptrEELh,ptrEMSh,ptrENFh,ptrENGh
c above pointers are relative to ptrESL
c non-constant element records (do vary by mode). Modes order is:
c --- nmode = [NOR CST (BCLV)] for fix interface method
c --- nmode = [NOR (IRF) CST (BCLV)] for free interface method
c --- nmode = [NOR RSD] for RFFB method
c --- () = if any
c --- BCLV = static correction vectors stored in .BCLV file
c
c ENS dp nelm nmode*size Element nodal component stresses
c EEL dp nelm nmode*size Element nodal component elastic strains
c EMS dp nelm nmode*size Element summable miscellaneous data
c ENF dp nelm nmode*size Element nodal forces
c ENG dp nelm nmode*3 Element energies
c see fdresu.inc for more information on the element results
c NAR int 1 7 nnod, ptrNCTl, ptrNCTh, ptrNSTl, ptrNSTh,
c ptrNELl, ptrNELh
c each item in header is described below:
c nnod - number of nodes
c ptrNCTl,h - pointer to Node Contributions
c ptrNSTl,h - pointer to NAR stress record
c ptrNELl,h - pointer to NAR elastic strain record
c above pointers are relative to ptrNAR
c NAR records (do vary by mode):
c NCT i nnod 2 Node Contributions
c NST dp nnod nmode*6 Nodal component stresses
c NEL dp nnod nmode*7 Nodal component elastic strains
c see fdresu.inc for more information on the NAR records
c ECR int 1 40 nelms, 0, 0, 0, 0,
c 0, 0, 0, 0, 0, (10)
c nECSl, nECSh,pECSidxl,pECSidxh, ptrECSl,
c ptrECSh, nCELl, nCELh,pCELidxl,pCELidxh, (20)
c ptrCELl, ptrCELh, 0, 0, 0,
c 0, 0, 0, 0, 0, (30)
c 0, 0, 0, 0, 0,
c 0, 0, 0, 0, 0, (40)
c each item in header is described below:
c nelms - number of elements
c nECSl,h - num values for element centroid stress data
c pECSidxl,h - pointer to the element centroid stress index table
c ptrECSl,h - pointer to elmement centroid stress data
c nCELl,h - num values for element centroid elastic strain data
c pCELidxl,h - pointer to the element centroid elastic strain index table
c ptrCELl,h - pointer to elmement centroid elastic strain data
c above pointers are relative to ptrECR
c ECR records (do vary by mode):
c ECS dp 1 nECS*nmode*6 Element centroidal stresses
c CEL dp 1 nCEL*nmode*7 Element centroidal elastic strains
c see fdresu.inc for more information on the ECR records
*comdeck,fdtcms
c *** Copyright ANSYS. All Rights Reserved.
c *** ansys, inc.
c ********** description of CMS (component mode synthesis) transformation file **********
character*8 TCMSNM
parameter (TCMSNM='tcms ')
LONGINT tcmsfpL, tcmsfp
integer tcmsbk, tcmsut
common /fdtcms/ tcmsfpL, tcmsbk, tcmsut
equivalence (tcmsfp,tcmsfpL)
c ********** common variable descriptions ***********
co tcmsfp file position on file tcms
co tcmsbk block number for file tcms
co tcmsut file unit for file tcms
c See fddesc for documentation of how binary files are stored.
c
c ********** file format **********
c recid tells the identifier for this record. Not all records will have
c identifiers -- they are only indicated for those records whose
c record pointers are stored in the second file header.
c type tells what kind of information is stored in this record:
c i - integer
c dp - double precision
c cmp - complex
c nrec tells how many records of this description are found here
c lrec tells how long the records are (how many items are stored)
c recid type nrec lrec contents
c --- i 1 100 standard ANSYS file header (see binhed8 for
c details of header contents)
c --- i 1 40 .TCMS FILE HEADER
c
c fun48, nNodes, neqn, numdof, nirfm,
c nnorm, ncstm, 0, 0, 0,
c ptrNORl, ptrCSTl, ptrIRFl, 0, 0,
c 0, 0, 0, 0, 0,
c ptrNORh, ptrCSTh, ptrIRFh, 0, 0,
c 0, 0, 0, 0, 0,
c 0, 0, 0, 0, 0,
c 0, 0, 0, 0, 0,
c 0, 0, 0, 0, 0
c each item in header is described below:
c fun48 - unit number
c nNodes - number of nodes in file
c neqn - number of equations (nNodes*numdof)
c numdof - number of dofs per node
c nirfm - number of inertia relief modes
c nnorm - number of normal modes
c ncstm - number of constraint modes
c ptrIRFl,ptrIRFh - 64 bit pointer to inertia relief modes
c ptrNORl,ptrNORh - 64 bit pointer to normal modes
c ptrCSTl,ptrCSTh - 64 bit pointer to constraint modes
c 0 - position not used
c --- i 1 nNodes Nodal equivalence table. This table equates
c the number used for storage to the actual
c node number
c NOR dp nnorm neqn Normal Modes
c IRF dp nirfm neqn Inertia Relief Modes
c CST dp ncstm neqn Constraint Modes