⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 node.hxx

📁 不错的国外的有限元程序代码,附带详细的manual,可以节省很多的底层工作.
💻 HXX
字号:
//   ******************
//   *** CLASS NODE ***
//   ******************


#include "femcmpnn.hxx"
#include "domain.hxx"
#include <stdio.h>
class Dof ; class NodalLoad ; class TimeStep ;
class FloatArray ; class IntArray ;


class Node : public FEMComponent
/*
   This class implements a node in a finite element mesh. A node is an attri-
   bute of a domain. It is usually also attribute of a few elements.
 DESCRIPTION
   The node possesses 'numberOfDofs' degrees of freedom, stored in 'dofArray'.
   In 'loadArray' it stores the number of every nodal load it is subjected to
   (typically, concentrated forces and moments).
   In 'locationArray' the node stores the equation number of each of its dofs.
   This location array is used by the node for assembling its load vector to
   the right-hand side of the linear system ; it is also used by elements for
   calculating their own location arrays.
 TASKS
   - managing its position in space. In geometrically linear analysis, this
     only amounts to managing its coordinates ;
   - managing its degrees of freedom (method 'giveDof') ;
   - calculating its nodal load vector and having it assembled to the linear
     system ;
   - printing and updating at end of step ;
   - managing its swapping to and from disk.
*/
{
   private:
      FloatArray*  coordinates ;
      int          numberOfDofs ;
      Dof**        dofArray ;
      IntArray*    loadArray ;
      IntArray*    locationArray ;

   public:
      Node (int,Domain*) ;                        // constructor
      ~Node () ;                                  // destructor

      // coordinates
      double       giveCoordinate (int) ;
      void         getCoordinates () ;

      // degrees of freedom
      Dof*         giveDof (int) ;
      int          giveNumberOfDofs () ;

      // nodal load vector
      void         assembleYourLoadsAt (TimeStep*) ;
      FloatArray*  ComputeLoadVectorAt (TimeStep*) ;
      IntArray*    giveLoadArray () ;
      IntArray*    giveLocationArray () ;

      // time step termination
      void         printOutputAt (TimeStep*) ;
      void         updateYourself () ;

      // miscellaneous
      char*        giveClassName (char* s)      { return strcpy(s,"Node") ;}
      void         instanciateYourself () ;
      void         printYourself () ;
} ;









⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -