Operator * DATE 99/22/01 Opérateur * See also :+ ----------- - ** RESU1 = ( MODL1) OBJET1 * OBJET2 ; / Description : _____________ The * operator calculates the product of the objects OBJET1 and OBJET2. Possible operations : ______________________ --------------------------------------------------------------------- | OBJET1 | OBJET2 | RESU1 | --------------------------------------------------------------------- | ENTIER | ENTIER | ENTIER | | FLOTTANT | ENTIER | FLOTTANT | | FLOTTANT | FLOTTANT | FLOTTANT | | POINT | FLOTTANT | POINT | | LISTREEL | ENTIER | LISTREEL | | LISTREEL | FLOTTANT | LISTREEL | | LISTREEL | LISTREEL | LISTREEL | | LISTENTI | LISTENTI | LISTENTI | | MCHAML | ENTIER | MCHAML | | MCHAML | FLOTTANT | MCHAML | | CHPOINT | ENTIER | CHPOINT | | CHPOINT | FLOTTANT | CHPOINT | | RIGIDITE | CHPOINT | CHPOINT | | RIGIDITE | ENTIER | RIGIDITE | | RIGIDITE | FLOTTANT | RIGIDITE | | CHPOINT (LISTMOT1)| CHPOINT (LISTMOT2) | CHPOINT (LISTMOT3) | | (MODL1) MCHAML | MCHAML | MCHAML | | MCHAML (LISTMOT1) |MCHAML (LISTMOT2)(LREE1)| MCHAML (LISTMOT3) | | EVOLUTION | ENTIER | EVOLUTION | | EVOLUTION | FLOTTANT | EVOLUTION | | EVOLUTION | EVOLUTION | EVOLUTION | | CHPOINT | EVOLUTION | CHPOINT | | MCHAML | EVOLUTION | MCHAML | | TABLE 'VECTEUR' | ENTIER | TABLE 'VECTEUR' | | TABLE 'VECTEUR' | FLOTTANT | TABLE 'VECTEUR' | --------------------------------------------------------------------- Remark 1 : __________ When the * operator calculates the product of two CHPOINT, the following multiplication rule is used : any point with a single component named "SCAL" in one of the CHPOINT will have all the values of the components of the other CHPOINT multiplied by the scalar value. The CHPOINT RESU1 only applies to such points. An alternate way is to provide 3 LISTMOT type objects. The rule for combining the components is given by the 3 LISTMOT type objects whose lengths are identical: The I.th component name of the resulting CHPOINT is the I.th word of the third LISTMOT and equal the product of the component of the 1st CHPOINT whose name is the I.th word of the 1st LISTMOT by the component of the second CHPOINT whose name is the I.th word of the 2nd LISTMOT. For instance: chp3 chp1 chp2 component component component résult argument 1 argument 2 'FX' 'KX' 'UX' 'FY' 'KYX' 'UX' lmot1 = 'MOTS' 'KX' 'KYX' ; lmot2 = 'MOTS' 'UX' 'UX' ; lmot3 = 'MOTS' 'FX' 'FY' ; chp3 = chp1 '*' chp2 lmot1 lmot2 lmot3 ; It is possible to specify the NATURE of the result. To this extent use the key words 'NATU' |'INDETERMINE' | | 'DIFFUS' | | 'DISCRET' | Remark 2 : __________ The * operator calculates the product of a TABLE type object of 'VECTEUR' subtype and a number (FLOTTANT or ENTIER) VAL1. The result is of TABLE type and 'VECTEUR' subtype. Remark 3 : __________ When the * operator calculates the product of two EVOLUTION type objects, both the given objects must be of same type, i.e. they must be real or complex : a) Real EVOLUTION objects : The product of the two curves with an index common to both objects is performed term by term; the progressions of the abscissae of these curves must be identical; they become the abscissae of the curves of the EVOLUTION object newly created by the operator. b) Complex EVOLUTION objects : The abscissae must be identical; they become the abscissae of the EVOLUTION object newly created by the operator. Each of the two objects can be either "PREE PIMA", or "MODU PHAS". The EVOL3 object is of same type as EVOL1. A color COUL1 may be allocated to it. EVOL3 = EVOL1 * EVOL2 ( COUL1 ) ; Remark 4 : __________ When the * operator calculates the product of two objects, the one of MCHAML (or CHPOINT ) type, and the other of EVOLUTION type, it transforms all the values of the OBJET1 MCHAML (or CHPOINT) by means of the function represented by the OBJET2 EVOLUTION object. Remark 5 : __________ When the * operator calculates the product of two MCHAML type objects, the latter must have the same elementary subspaces. There are five types of multiplications : - Any MCHAML multiplied by a scalar MCHAML with identical subspaces - One MCHAML by another MCHAML if moreover, the name of their components and their subspaces are identical. The multiplication is performed component by component. The components type may be FLOTTANT or LISTREEL. - One MCHAML by another MCHAML if their subspaces are identical. The user must specify three LISTMOTS of equal length, and the rule is the same than in the case of CHPOINT objects (see below). It is moreover possible to specify a LISTREEL object of the same length than the LISTMOTS : its coefficients multiply the components of the final MCHAML. The components type may be FLOTTANT or LISTREEL. - A MCHAML of Hooke's matrices by a MCHAML of stresses or strains For this case, also provide the MODL1 model object (MMODEL type) - A MCHAML of gradiant by another MCHAML of gradiant or a flexural MCHAML of gradiant. For this case, also provide the MODL1 model object (MMODEL type)