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.
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:
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