[MBDyn-users] Initial assembly related member functions of user defined elements are not called

masarati at aero.polimi.it masarati at aero.polimi.it
Mon Apr 2 09:51:47 CEST 2012


> Dear Mr. Masarati,
>
> When writing as user defined element one has to provide the following set
> of member functions:
>
>             virtual unsigned int iGetInitialNumDof(void) const;
>             virtual void
>             InitialWorkSpaceDim(integer* piNumRows, integer* piNumCols)
> const;
>             VariableSubMatrixHandler&
>             InitialAssJac(VariableSubMatrixHandler& WorkMat,
>                               const VectorHandler& XCurr);
>             SubVectorHandler&
>             InitialAssRes(SubVectorHandler& WorkVec, const VectorHandler&
> XCurr);
>
> But if you run a simulation with an user defined element, none of these
> member functions is called.
>
> Is it possible to enable the initial assembly phase for user defined
> elements?

As far as I remember, you need to explicitly enable their use in initial
assembly (since this phase was expressly intended for initial assembly of
joint elements).  I understand that user-defined elements can indeed play
the role of joints...  The syntax is

begin: control data;
    # ...
    use: loadable elements, in assembly;
    # ...
end: control data;

(untested).

Cheers, p.



More information about the MBDyn-users mailing list