Termination class

The Termination class gives you access to *TERMINATION_XXXX cards in PRIMER. More...

The PRIMER JavaScript API provides many class constants, properties and methods. For Arup to be able to extend and enhance the API in the future any constant, property or method names beginning with a lowercase or uppercase letter are reserved.
If you need to add your own properties or methods to one of the existing classes then to avoid any potential future conflict you should ensure that the name begins with either an underscore (_) or a dollar sign ($) or the name is prefixed with your own unique identifier.
For example if company 'ABC' need to add a property called 'example' then to avoid any potential future conflict use one of:

Class functions

Member functions

Termination constants

Constants for Direction for Degrees of Freedom (field: dof)

Name Description
Termination.DOF_X Degree of freedom in X direction for Force magnitude. Used for Termination.CONTACT.
Termination.DOF_Y Degree of freedom in Y direction for Force magnitude. Used for Termination.CONTACT.
Termination.DOF_Z Degree of freedom in Z direction for Force magnitude. Used for Termination.CONTACT.

Constants for Global Direction for Stop Criterion (field: stop)

Name Description
Termination.STOP_MAG Stop if displacement magnitude is exceeded. Used for Termination.BODY or Termination.NODE.
Termination.STOP_X Stop criterion is in Global X direction. Used for Termination.BODY or Termination.NODE.
Termination.STOP_Y Stop criterion is in Global Y direction. Used for Termination.BODY or Termination.NODE.
Termination.STOP_Z Stop criterion is in Global X direction. Used for Termination.BODY or Termination.NODE.

Constants for Type of Keyword

Name Description
Termination.BODY TERMINATION is *TERMINATION_BODY.
Termination.CONTACT TERMINATION is *TERMINATION_CONTACT.
Termination.CURVE TERMINATION is *TERMINATION_CURVE.
Termination.DELETED_SHELLS TERMINATION is *TERMINATION_DELETED_SHELLS.
Termination.DELETED_SHELLS_SET TERMINATION is *TERMINATION_DELETED_SHELLS_SET.
Termination.DELETED_SOLIDS TERMINATION is *TERMINATION_DELETED_SOLIDS.
Termination.DELETED_SOLIDS_SET TERMINATION is *TERMINATION_DELETED_SOLIDS_SET.
Termination.NODE TERMINATION is *TERMINATION_NODE.
Termination.SENSOR TERMINATION is *TERMINATION_SENSOR.

Termination properties

Name Type Description
actTime real Activation time value. Used for Termination.CONTACT or Termination.CURVE.
dof integer Directions to consider for Force Magnitude. Valid values are: Termination.DOF_X or Termination.DOF_Y or Termination.DOF_Z. Used for Termination.CONTACT.
duration real Time duration of null resultant force prior to termination. Used for Termination.CONTACT.
exists (read only) logical true if termination exists, false if referred to but not defined.
id integer Can be Part or NRBC ID based on ptype value for Termination.BODY, OR Contact ID for Termination.CONTACT, OR Node ID for Termination.NODE, OR Curve ID for Termination.CURVE, OR Part for Termination.DELETED_SHELLS or Termination.DELETED_SOLIDS, OR Part Set ID for Termination.DELETED_SHELLS_SET or Termination.DELETED_SOLIDS_SET, OR Sensor Switch ID for Termination.SENSOR.
include integer The Include file number that the termination is in.
maxc real Maximum (most positive) displacement. If value is 0.0, it is set to 1.0e21. Value should be more than minc. Used for Termination.BODY or Termination.NODE.
minc real Minimum (most negative) displacement. If value is 0.0, it is set to -1.0e21. Value should be less than maxc. Used for Termination.BODY or Termination.NODE.
model (read only) integer The Model number that the termination is in.
numDeletedElems integer Number of elements that must be deleted for the specified Part ID's, before an error termination occurs. Used for Termination.DELETED_SHELLS_SET or Termination.DELETED_SOLIDS_SET.
ptype (read only) integer Gives the type of Part for Termination.BODY. Values can be 0 for Part or 1 for NRBC
stop integer Stop Criterion. Valid values are: Termination.STOP_X or Termination.STOP_Y or Termination.STOP_Z or Termination.STOP_MAG. Used for Termination.BODY or Termination.NODE.
threshold real Any measured force magnitude below or equal to this specified threshold is taken as a null force. Used for Termination.CONTACT.
type (read only) integer Gives the type of *TERMINATION keyword.

Detailed Description

The Termination class allows you to create, modify, edit and manipulate termination cards. See the documentation below for more details.

Constructor

new Termination(Model[Model], Type[constant], id [integer])

Description

Create a new Termination object.

Arguments

  • Model (Model)

    Model that termination will be created in

  • Type (constant)

    Specify the type of Termination (Can be Termination.BODY or Termination.CONTACT or Termination.CURVE or Termination.DELETED_SHELLS or Termination.DELETED_SOLIDS or Termination.NODE or Termination.SENSOR).

  • id (integer)

    Can be Part ID for Termination.BODY or Termination.DELETED_SHELLS or Termination.DELETED_SOLIDS, OR Contact ID for Termination.CONTACT, OR Node ID for Termination.NODE, OR Curve ID for Termination.CURVE, OR Part Set ID for Termination.DELETED_SHELLS_SET or Termination.DELETED_SOLIDS_SET, OR Sensor Switch ID for Termination.SENSOR.

    Returns

    Termination object

    Return type

    Termination

    Example

    To create a new termination in model m, type BODY, part id 100:

    var term = new Termination(m, Termination.BODY, 100);

    Details of functions

    AssociateComment(Comment[Comment])

    Description

    Associates a comment with a termination.

    Arguments

  • Comment (Comment)

    Comment that will be attached to the termination

    Returns

    No return value

    Example

    To associate comment c to the termination term:

    term.AssociateComment(c);


    Browse(modal (optional)[boolean])

    Description

    Starts an edit panel in Browse mode.

    Arguments

  • modal (optional) (boolean)

    If this window is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the window will be modal.

    Returns

    no return value

    Example

    To Browse termination term:

    term.Browse();


    ClearFlag(flag[Flag])

    Description

    Clears a flag on the termination.

    Arguments

  • flag (Flag)

    Flag to clear on the termination

    Returns

    No return value

    Example

    To clear flag f for termination term:

    term.ClearFlag(f);


    Copy(range (optional)[boolean])

    Description

    Copies the termination. The target include of the copied termination can be set using Options.copy_target_include.

    Arguments

  • range (optional) (boolean)

    If you want to keep the copied item in the range specified for the current include. Default value is false. To set current include, use Include.MakeCurrentLayer().

    Returns

    Termination object

    Return type

    Termination

    Example

    To copy termination term into termination z:

    var z = term.Copy();


    Create(Model[Model], modal (optional)[boolean]) [static]

    Description

    Starts an interactive editing panel to create a termination

    Arguments

  • Model (Model)

    Model that the termination will be created in.

  • modal (optional) (boolean)

    If this window is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the window will be modal.

    Returns

    Termination object (or null if not made).

    Return type

    Termination

    Example

    To start creating a termination in model m:

    var term = Termination.Create(m);


    DetachComment(Comment[Comment])

    Description

    Detaches a comment from a termination.

    Arguments

  • Comment (Comment)

    Comment that will be detached from the termination

    Returns

    No return value

    Example

    To detach comment c from the termination term:

    term.DetachComment(c);


    Edit(modal (optional)[boolean])

    Description

    Starts an interactive editing panel.

    Arguments

  • modal (optional) (boolean)

    If this window is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the window will be modal.

    Returns

    no return value

    Example

    To Edit termination term:

    term.Edit();


    Error(message[string], details (optional)[string])

    Description

    Adds an error for termination. For more details on checking see the Check class.

    Arguments

  • message (string)

    The error message to give

  • details (optional) (string)

    An optional detailed error message

    Returns

    No return value

    Example

    To add an error message "My custom error" for termination term:

    term.Error("My custom error");


    First(Model[Model]) [static]

    Description

    Returns the first termination in the model.

    Arguments

  • Model (Model)

    Model to get first termination in

    Returns

    Termination object (or null if there are no terminations in the model).

    Return type

    Termination

    Example

    To get the first termination in model m:

    var term = Termination.First(m);


    FlagAll(Model[Model], flag[Flag]) [static]

    Description

    Flags all of the terminations in the model with a defined flag.

    Arguments

  • Model (Model)

    Model that all terminations will be flagged in

  • flag (Flag)

    Flag to set on the terminations

    Returns

    No return value

    Example

    To flag all of the terminations with flag f in model m:

    Termination.FlagAll(m, f);


    Flagged(flag[Flag])

    Description

    Checks if the termination is flagged or not.

    Arguments

  • flag (Flag)

    Flag to test on the termination

    Returns

    true if flagged, false if not.

    Return type

    Boolean

    Example

    To check if termination term has flag f set on it:

    if (term.Flagged(f) ) do_something...


    ForEach(Model[Model], func[function], extra (optional)[any]) [static]

    Description

    Calls a function for each termination in the model.
    Note that ForEach has been designed to make looping over terminations as fast as possible and so has some limitations.
    Firstly, a single temporary Termination object is created and on each function call it is updated with the current termination data. This means that you should not try to store the Termination object for later use (e.g. in an array) as it is temporary.
    Secondly, you cannot create new terminations inside a ForEach loop.

    Arguments

  • Model (Model)

    Model that all terminations are in

  • func (function)

    Function to call for each termination

  • extra (optional) (any)

    An optional extra object/array/string etc that will appended to arguments when calling the function

    Returns

    No return value

    Example

    To call function test for all of the terminations in model m:

    Termination.ForEach(m, test);
    function test(term)
    {
    // term is Termination object
    }

    To call function test for all of the terminations in model m with optional object:

    var data = { x:0, y:0 };
    Termination.ForEach(m, test, data);
    function test(term, extra)
    {
    // term is Termination object
    // extra is data
    }


    GetAll(Model[Model], property (optional)[string]) [static]

    Description

    Returns an array of Termination objects or properties for all of the terminations in a model in PRIMER. If the optional property argument is not given then an array of Termination objects is returned. If the property argument is given, that property value for each termination is returned in the array instead of a Termination object

    Arguments

  • Model (Model)

    Model to get terminations from

  • property (optional) (string)

    Name for property to get for all terminations in the model

    Returns

    Array of Termination objects or properties

    Return type

    Array

    Example

    To make an array of Termination objects for all of the terminations in model m:

    var a = Termination.GetAll(m);

    To return an array containing the value of property 'foo' (for example 'x' for a node) for each termination in model m:

    var a = Termination.GetAll(m, 'foo');


    GetComments()

    Description

    Extracts the comments associated to a termination.

    Arguments

    No arguments

    Returns

    Array of Comment objects (or null if there are no comments associated to the node).

    Return type

    Array

    Example

    To get the array of comments associated to the termination term:

    var comm_array = term.GetComments();


    GetFlagged(Model[Model], flag[Flag], property (optional)[string]) [static]

    Description

    Returns an array of Termination objects for all of the flagged terminations in a model in PRIMER If the optional property argument is not given then an array of Termination objects is returned. If the property argument is given, then that property value for each termination is returned in the array instead of a Termination object

    Arguments

  • Model (Model)

    Model to get terminations from

  • flag (Flag)

    Flag set on the terminations that you want to retrieve

  • property (optional) (string)

    Name for property to get for all flagged terminations in the model

    Returns

    Array of Termination objects or properties

    Return type

    Array

    Example

    To make an array of Termination objects for all of the terminations in model m flagged with f:

    var term = Termination.GetFlagged(m, f);

    To return an array containing the value of property 'foo' (for example 'x' for a node) for all of the terminations in model m flagged with f:

    var a = Termination.GetFlagged(m, f, 'foo');


    GetFromID(Model[Model], number[integer]) [static]

    Description

    Returns the Termination object for a termination ID.

    Arguments

  • Model (Model)

    Model to find the termination in

  • number (integer)

    number of the termination you want the Termination object for

    Returns

    Termination object (or null if termination does not exist).

    Return type

    Termination

    Example

    To get the Termination object for termination 100 in model m

    var term = Termination.GetFromID(m, 100);


    GetParameter(prop[string])

    Description

    Checks if a Termination property is a parameter or not. Note that object properties that are parameters are normally returned as the integer or float parameter values as that is virtually always what the user would want. For this function to work the JavaScript interpreter must use the parameter name instead of the value. This can be done by setting the Options.property_parameter_names option to true before calling the function and then resetting it to false afterwards.. This behaviour can also temporarily be switched by using the Termination.ViewParameters() method and 'method chaining' (see the examples below).

    Arguments

  • prop (string)

    termination property to get parameter for

    Returns

    Parameter object if property is a parameter, null if not.

    Return type

    Parameter

    Example

    To check if Termination property term.example is a parameter:

    Options.property_parameter_names = true;
    if (term.GetParameter(term.example) ) do_something...
    Options.property_parameter_names = false;

    To check if Termination property term.example is a parameter by using the GetParameter method:

    if (term.ViewParameters().GetParameter(term.example) ) do_something...


    Keyword()

    Description

    Returns the keyword for this Termination (*TERMINATION_xxxx) Note that a carriage return is not added. See also Termination.KeywordCards()

    Arguments

    No arguments

    Returns

    string containing the keyword.

    Return type

    String

    Example

    To get the keyword for Termination termination:

    var key = Termination.Keyword();


    KeywordCards()

    Description

    Returns the keyword cards for the Termination. Note that a carriage return is not added. See also Termination.Keyword()

    Arguments

    No arguments

    Returns

    string containing the cards.

    Return type

    String

    Example

    To get the cards for Termination termination:

    var cards = Termination.KeywordCards();


    Last(Model[Model]) [static]

    Description

    Returns the last termination in the model.

    Arguments

  • Model (Model)

    Model to get last termination in

    Returns

    Termination object (or null if there are no terminations in the model).

    Return type

    Termination

    Example

    To get the last termination in model m:

    var term = Termination.Last(m);


    Next()

    Description

    Returns the next termination in the model.

    Arguments

    No arguments

    Returns

    Termination object (or null if there are no more terminations in the model).

    Return type

    Termination

    Example

    To get the termination in model m after termination term:

    var term = term.Next();


    Previous()

    Description

    Returns the previous termination in the model.

    Arguments

    No arguments

    Returns

    Termination object (or null if there are no more terminations in the model).

    Return type

    Termination

    Example

    To get the termination in model m before termination term:

    var term = term.Previous();


    Select(flag[Flag], prompt[string], limit (optional)[Model or Flag], modal (optional)[boolean]) [static]

    Description

    Allows the user to select terminations using standard PRIMER object menus.

    Arguments

  • flag (Flag)

    Flag to use when selecting terminations

  • prompt (string)

    Text to display as a prompt to the user

  • limit (optional) (Model or Flag)

    If the argument is a Model then only terminations from that model can be selected. If the argument is a Flag then only terminations that are flagged with limit can be selected (limit should be different to flag). If omitted, or null, any terminations can be selected. from any model.

  • modal (optional) (boolean)

    If selection is modal (blocks the user from doing anything else in PRIMER until this window is dismissed). If omitted the selection will be modal.

    Returns

    Number of terminations selected or null if menu cancelled

    Return type

    Number

    Example

    To select terminations from model m, flagging those selected with flag f, giving the prompt 'Select terminations':

    Termination.Select(f, 'Select terminations', m);

    To select terminations, flagging those selected with flag f but limiting selection to terminations flagged with flag l, giving the prompt 'Select terminations':

    Termination.Select(f, 'Select terminations', l);


    SetFlag(flag[Flag])

    Description

    Sets a flag on the termination.

    Arguments

  • flag (Flag)

    Flag to set on the termination

    Returns

    No return value

    Example

    To set flag f for termination term:

    term.SetFlag(f);


    Total(Model[Model], exists (optional)[boolean]) [static]

    Description

    Returns the total number of terminations in the model.

    Arguments

  • Model (Model)

    Model to get total for

  • exists (optional) (boolean)

    true if only existing terminations should be counted. If false or omitted referenced but undefined terminations will also be included in the total.

    Returns

    number of terminations

    Return type

    Number

    Example

    To get the total number of terminations in model m:

    var total = Termination.Total(m);


    UnflagAll(Model[Model], flag[Flag]) [static]

    Description

    Unsets a defined flag on all of the terminations in the model.

    Arguments

  • Model (Model)

    Model that the defined flag for all terminations will be unset in

  • flag (Flag)

    Flag to unset on the terminations

    Returns

    No return value

    Example

    To unset the flag f on all the terminations in model m:

    Termination.UnflagAll(m, f);


    ViewParameters()

    Description

    Object properties that are parameters are normally returned as the integer or float parameter values as that is virtually always what the user would want. This function temporarily changes the behaviour so that if a property is a parameter the parameter name is returned instead. This can be used with 'method chaining' (see the example below) to make sure a property argument is correct.

    Arguments

    No arguments

    Returns

    Termination object.

    Return type

    Termination

    Example

    To check if Termination property term.example is a parameter by using the Termination.GetParameter() method:

    if (term.ViewParameters().GetParameter(term.example) ) do_something...


    Warning(message[string], details (optional)[string])

    Description

    Adds a warning for termination. For more details on checking see the Check class.

    Arguments

  • message (string)

    The warning message to give

  • details (optional) (string)

    An optional detailed warning message

    Returns

    No return value

    Example

    To add a warning message "My custom warning" for termination term:

    term.Warning("My custom warning");


    Xrefs()

    Description

    Returns the cross references for this termination.

    Arguments

    No arguments

    Returns

    Xrefs object.

    Return type

    Xrefs

    Example

    To get the cross references for termination term:

    var xrefs = term.Xrefs();


    toString()

    Description

    Creates a string containing the Termination data in keyword format. Note that this contains the keyword header and the keyword cards. See also Termination.Keyword() and Termination.KeywordCards().

    Arguments

    No arguments

    Returns

    string

    Return type

    String

    Example

    To get data for Termination termination in keyword format

    var term = termination.toString();