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