*#// Load_universally_for.bas
*#
*#     // for lines
*#
*#
*#
*intformat "%d"
*Set Var nMasterSlaveIndex=0
*# *or(1) *or(2,Int) *or(3,Int) 
*Set Cond Load_universally_for_Line  *elems *CanRepeat  
*#Add Cond Fixed_2D_Shell_to_Solid_for_Line     *nodes *or(1,Real) *or(2,Real) *or(3,Int) *or(4,Int) *CanRepeat  
*#Add Cond Fixed_2D_Shell_to_Solid_for_Point    *nodes *or(1,Real) *or(2,Real) *or(3,Int) *or(4,Int) *CanRepeat 

*If(CondNumEntities(Int)>0)
// selection has *CondNumEntities entities
*If(Cond(Apply_in_Subincrement,int)==ApplyInSubincrement  || strcmp(GenData(Calculation_Analysis),"Static")==0) 
*# format "%d %d %20.10f"
*#  MASTER SLAVE NODAL LISTS "Master*IntervalIndex(int)" "Slave*IntervalIndex(int)" DISTANCE *GenData(MASTER_SLAVE_DISTANCE,REAL)

*loop elems *OnlyInCond
*#


*Set Var Bit = 0 
*If(Cond(Force_Component_X,int)==1) 
*Set Var Bit=Operation(Bit+1)
*EndIf
*If(Cond(Force_Component_Y,int)==1) 
*Set Var Bit=Operation(Bit+2)
*EndIf
*If(Cond(Force_Component_Z,int)==1) 
*Set Var Bit=Operation(Bit+4)
*EndIf


LOAD BODY /**GROUP 205 TO 205**/ 
  MNODE_IDS "LOAD_UNIVERSALLY_ELEM_*ElemsNum_Interval*IntervalNum" 
  MNODE_LOADS "LOAD_UNIVERSALLY_ELEM_*ElemsNum_Interval*IntervalNum_LOAD" 
  MNODE_DOFS_MASK *Bit 
  MNODE_MAX_DISTANCE *Cond(Distance,real)         
  MNODE_DIM1 *Cond(A_DIV,int)   
  MNODE_DIM2 1  
  MNODE_DIM3 1

*#   

*End nodes
*EndIf

*End
*#
*#
*#
*#
*#
*#
*#
*#
*#
*#
*#     // for surfaces
*#
*#
*#
*intformat "%d"
*Set Var nMasterSlaveIndex=0
*# *or(1) *or(2,Int) *or(3,Int) 
*Set Cond Load_universally_for_Surface  *elems *or(1,Real) *or(2,Real) *or(3,Int) *or(4,Int) *CanRepeat  
*#Add Cond Fixed_2D_Shell_to_Solid_for_Line     *nodes *or(1,Real) *or(2,Real) *or(3,Int) *or(4,Int) *CanRepeat  
*#Add Cond Fixed_2D_Shell_to_Solid_for_Point    *nodes *or(1,Real) *or(2,Real) *or(3,Int) *or(4,Int) *CanRepeat 

*If(CondNumEntities(Int)>0)
// selection has *CondNumEntities entities
*If(Cond(Apply_in_Subincrement,int)==ApplyInSubincrement  || strcmp(GenData(Calculation_Analysis),"Static")==0) 
*# format "%d %d %20.10f"
*#  MASTER SLAVE NODAL LISTS "Master*IntervalIndex(int)" "Slave*IntervalIndex(int)" DISTANCE *GenData(MASTER_SLAVE_DISTANCE,REAL)

*loop elems *OnlyInCond
*#


*Set Var Bit = 0 
*If(Cond(Force_Component_X,int)==1) 
*Set Var Bit=Operation(Bit+1)
*EndIf
*If(Cond(Force_Component_Y,int)==1) 
*Set Var Bit=Operation(Bit+2)
*EndIf
*If(Cond(Force_Component_Z,int)==1) 
*Set Var Bit=Operation(Bit+4)
*EndIf


LOAD BODY /**GROUP 205 TO 205**/ 
  MNODE_IDS "LOAD_UNIVERSALLY_ELEM_*ElemsNum_Interval*IntervalNum" 
  MNODE_LOADS "LOAD_UNIVERSALLY_ELEM_*ElemsNum_Interval*IntervalNum_LOAD" 
  MNODE_DOFS_MASK *Bit 
  MNODE_MAX_DISTANCE *Cond(Distance,real)         
  MNODE_DIM1 *Cond(A_DIV,int)   
  MNODE_DIM2 *Cond(B_DIV,int)    
  MNODE_DIM3 1

*#   

*End nodes
*EndIf

*End
