PartialNonUniformLoad

BriefFiniteElementNet.Loads.PartialNonUniformLoad class represents a nonuniform load on an element’s body. Partial means not covering whole element’s body, but only one region and nonuniform means load severity changes along any location. The partial part of element is defined in iso parametric coordination system.

../../_images/pnfload-body-bar.png

PartialNonUniformLoad applying on a BarElement

StartIsoLocations

Isoparametric coordination of start location of load on the element in isoparametric coordination system.

EndIsoLocations

Isoparametric coordination of end location of load on the element in isoparametric coordination system.

Coordination System

Same as UniformLoad.CoordinationSystem, PartialNonUniformLoad.CoordinationSystem defines the coordination system of load. It can only have two different values of CoordinationSystem.Global or CoordinationSystem.Local:

  • CoordinationSystem.Global: The load is assumed in global coordination system

  • CoordinationSystem.Local: The load is assumed in local coordination system of element that load is applied to (each element type have different local coordination system which is stated in appropriated section).

Look at examples section for more information on how to use.

Direction

PartialNonUniformLoad.Direction which is a property with type of Vector, defines the direction of trapezoidal load. An instance of Vector class defines a vector in 3d space with three components of X, Y and Z. Note that length of vector is not taken into account, only its direction is used.

Look at examples section and definition of local CoordinationSystem in BarElement, TriangleElement, etc. for more information on how to use.

Example 1 (BarElement)

Adding a PartialNonUniformLoad with :

  • Magnitude of 100 [N/m]

  • Direction of Z

  • Coordination System of global

to a BarElement:

../../_images/tload-ex1.png
var bar = new BarElement();                                  //creating new instance of element
var load = new PartialTrapezoidalLoad();             //creating new instance of load
load.StartMagnitudes = new double[]{2000};           //set Magnitude at start
load.EndMagnitudes = new double[]{1000};                     //set Magnitude at end

load.StartLocations = new double[]{-1+2/6};          //set locations of trapezoidal load
load.EndLocations = new double[]{1-1/6};                     //set locations of trapezoidal load

load.Direction = Vector.K;                                           //set direction
load.CoordinationSystem =
    CoordinationSystem.Global;                                       //set coordination system

bar.Loads.Add(load);                                                         //apply load to element