StrainShell class

The StrainShell class gives you access to define initial strain shell 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

StrainShell constants

Name Description
StrainShell.SET Initial is *INITIAL_STRAIN_SHELL_SET.
StrainShell.SHELL Initial is *INITIAL_STRAIN_SHELL.

StrainShell properties

Name Type Description
eid integer Shell Element ID or shell set ID
exists (read only) logical true if initial strain shell exists, false if referred to but not defined.
ilocal integer Flag for coordinate system of strain components
include integer The Include file number that the initial strain shell is in.
large logical true if large format, false otherwise
model (read only) integer The Model number that the initial strain shell is in.
nplane integer Number of in plane integration points being output (not read when the SET option is used)
nthick integer Number of integration points through the thickness (not read when the SET option is used)
type constant The Intial strain shell type. Can be StrainShell.SHELL or StrainShell.SET.

Detailed Description

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

Constructor

new StrainShell(Model[Model], type[constant], eid[integer], nplane[integer], nthick[integer], large[integer], ilocal[integer])

Description

Create a new StrainShell object.

Arguments

  • Model (Model)

    Model that strain_shell will be created in

  • type (constant)

    Specify the type of initial strain shell (Can be StrainShell.SHELL or StrainShell.SET)

  • eid (integer)

    Shell Element ID or shell set ID

  • nplane (integer)

    Number of in plane integration points being output

  • nthick (integer)

    Number of integration points through the thickness

  • large (integer)

    Large format flag, set 0 to turn it off or 1 to enable it. It is optional and set to 0 by default.

  • ilocal (integer)

    Flag for coordinate system of strain components. Set to 0 for global or 1 to enable local. It is optional and set to 0 by default

    Returns

    StrainShell object

    Return type

    StrainShell

    Example

    To create a new strain_shell in model m, of type SET

    var s = new StrainShell(m, StrainShell.SET, 1, 2, 2);

    Details of functions

    AssociateComment(Comment[Comment])

    Description

    Associates a comment with a initial strain shell.

    Arguments

  • Comment (Comment)

    Comment that will be attached to the initial strain shell

    Returns

    No return value

    Example

    To associate comment c to the initial strain shell iss:

    iss.AssociateComment(c);


    ClearFlag(flag[Flag])

    Description

    Clears a flag on the initial strain shell.

    Arguments

  • flag (Flag)

    Flag to clear on the initial strain shell

    Returns

    No return value

    Example

    To clear flag f for initial strain shell iss:

    iss.ClearFlag(f);


    Copy(range (optional)[boolean])

    Description

    Copies the initial strain shell. The target include of the copied initial strain shell 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

    StrainShell object

    Return type

    StrainShell

    Example

    To copy initial strain shell iss into initial strain shell z:

    var z = iss.Copy();


    DetachComment(Comment[Comment])

    Description

    Detaches a comment from a initial strain shell.

    Arguments

  • Comment (Comment)

    Comment that will be detached from the initial strain shell

    Returns

    No return value

    Example

    To detach comment c from the initial strain shell iss:

    iss.DetachComment(c);


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

    Description

    Adds an error for initial strain shell. 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 initial strain shell iss:

    iss.Error("My custom error");


    First(Model[Model]) [static]

    Description

    Returns the first initial strain shell in the model.

    Arguments

  • Model (Model)

    Model to get first initial strain shell in

    Returns

    StrainShell object (or null if there are no initial strain shells in the model).

    Return type

    StrainShell

    Example

    To get the first initial strain shell in model m:

    var iss = StrainShell.First(m);


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

    Description

    Flags all of the initial strain shells in the model with a defined flag.

    Arguments

  • Model (Model)

    Model that all initial strain shells will be flagged in

  • flag (Flag)

    Flag to set on the initial strain shells

    Returns

    No return value

    Example

    To flag all of the initial strain shells with flag f in model m:

    StrainShell.FlagAll(m, f);


    Flagged(flag[Flag])

    Description

    Checks if the initial strain shell is flagged or not.

    Arguments

  • flag (Flag)

    Flag to test on the initial strain shell

    Returns

    true if flagged, false if not.

    Return type

    Boolean

    Example

    To check if initial strain shell iss has flag f set on it:

    if (iss.Flagged(f) ) do_something...


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

    Description

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

    Arguments

  • Model (Model)

    Model that all initial strain shells are in

  • func (function)

    Function to call for each initial strain shell

  • 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 initial strain shells in model m:

    StrainShell.ForEach(m, test);
    function test(iss)
    {
    // iss is StrainShell object
    }

    To call function test for all of the initial strain shells in model m with optional object:

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


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

    Description

    Returns an array of StrainShell objects or properties for all of the initial strain shells in a model in PRIMER. If the optional property argument is not given then an array of StrainShell objects is returned. If the property argument is given, that property value for each initial strain shell is returned in the array instead of a StrainShell object

    Arguments

  • Model (Model)

    Model to get initial strain shells from

  • property (optional) (string)

    Name for property to get for all initial strain shells in the model

    Returns

    Array of StrainShell objects or properties

    Return type

    Array

    Example

    To make an array of StrainShell objects for all of the initial strain shells in model m:

    var a = StrainShell.GetAll(m);

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

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


    GetComments()

    Description

    Extracts the comments associated to a initial strain shell.

    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 initial strain shell iss:

    var comm_array = iss.GetComments();


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

    Description

    Returns an array of StrainShell objects for all of the flagged initial strain shells in a model in PRIMER If the optional property argument is not given then an array of StrainShell objects is returned. If the property argument is given, then that property value for each initial strain shell is returned in the array instead of a StrainShell object

    Arguments

  • Model (Model)

    Model to get initial strain shells from

  • flag (Flag)

    Flag set on the initial strain shells that you want to retrieve

  • property (optional) (string)

    Name for property to get for all flagged initial strain shells in the model

    Returns

    Array of StrainShell objects or properties

    Return type

    Array

    Example

    To make an array of StrainShell objects for all of the initial strain shells in model m flagged with f:

    var iss = StrainShell.GetFlagged(m, f);

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

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


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

    Description

    Returns the StrainShell object for a initial strain shell ID.

    Arguments

  • Model (Model)

    Model to find the initial strain shell in

  • number (integer)

    number of the initial strain shell you want the StrainShell object for

    Returns

    StrainShell object (or null if initial strain shell does not exist).

    Return type

    StrainShell

    Example

    To get the StrainShell object for initial strain shell 100 in model m

    var iss = StrainShell.GetFromID(m, 100);


    GetIntegrationPoint(index[integer])

    Description

    Returns the data for a specific integration point as an array. For each integration point there will be 7 strain component values. There are nplane x nthick integration points.

    Arguments

  • index (integer)

    Index you want the integration point data for. Note that indices start at 0.

    Returns

    An array containing the integration point data.

    Return type

    Array

    Example

    To get the data for the 3rd integration point for initial strain shell iss:

    var data = iss.GetIntegrationPoint(2);


    GetParameter(prop[string])

    Description

    Checks if a StrainShell 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 StrainShell.ViewParameters() method and 'method chaining' (see the examples below).

    Arguments

  • prop (string)

    initial strain shell property to get parameter for

    Returns

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

    Return type

    Parameter

    Example

    To check if StrainShell property iss.example is a parameter:

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

    To check if StrainShell property iss.example is a parameter by using the GetParameter method:

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


    Keyword()

    Description

    Returns the keyword for this initial strain shell (*INITIAL_STRAIN_SHELL). Note that a carriage return is not added. See also StrainShell.KeywordCards()

    Arguments

    No arguments

    Returns

    string containing the keyword.

    Return type

    String

    Example

    To get the keyword for strain_shell i:

    var key = i.Keyword();


    KeywordCards()

    Description

    Returns the keyword cards for the initial strain shell. Note that a carriage return is not added. See also StrainShell.Keyword()

    Arguments

    No arguments

    Returns

    string containing the cards.

    Return type

    String

    Example

    To get the cards for strain_shell i:

    var cards = i.KeywordCards();


    Last(Model[Model]) [static]

    Description

    Returns the last initial strain shell in the model.

    Arguments

  • Model (Model)

    Model to get last initial strain shell in

    Returns

    StrainShell object (or null if there are no initial strain shells in the model).

    Return type

    StrainShell

    Example

    To get the last initial strain shell in model m:

    var iss = StrainShell.Last(m);


    Next()

    Description

    Returns the next initial strain shell in the model.

    Arguments

    No arguments

    Returns

    StrainShell object (or null if there are no more initial strain shells in the model).

    Return type

    StrainShell

    Example

    To get the initial strain shell in model m after initial strain shell iss:

    var iss = iss.Next();


    Pick(prompt[string], limit (optional)[Model or Flag], modal (optional)[boolean], button text (optional)[string]) [static]

    Description

    Allows the user to pick a initial strain shell.

    Arguments

  • prompt (string)

    Text to display as a prompt to the user

  • limit (optional) (Model or Flag)

    If the argument is a Model then only initial strain shells from that model can be picked. If the argument is a Flag then only initial strain shells that are flagged with limit can be selected. If omitted, or null, any initial strain shells from any model can be selected. from any model.

  • modal (optional) (boolean)

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

  • button text (optional) (string)

    By default the window with the prompt will have a button labelled 'Cancel' which if pressed will cancel the pick and return null. If you want to change the text on the button use this argument. If omitted 'Cancel' will be used.

    Returns

    StrainShell object (or null if not picked)

    Return type

    StrainShell

    Example

    To pick a initial strain shell from model m giving the prompt 'Pick initial strain shell from screen':

    var iss = StrainShell.Pick('Pick initial strain shell from screen', m);


    Previous()

    Description

    Returns the previous initial strain shell in the model.

    Arguments

    No arguments

    Returns

    StrainShell object (or null if there are no more initial strain shells in the model).

    Return type

    StrainShell

    Example

    To get the initial strain shell in model m before initial strain shell iss:

    var iss = iss.Previous();


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

    Description

    Allows the user to select initial strain shells using standard PRIMER object menus.

    Arguments

  • flag (Flag)

    Flag to use when selecting initial strain shells

  • prompt (string)

    Text to display as a prompt to the user

  • limit (optional) (Model or Flag)

    If the argument is a Model then only initial strain shells from that model can be selected. If the argument is a Flag then only initial strain shells that are flagged with limit can be selected (limit should be different to flag). If omitted, or null, any initial strain shells 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 initial strain shells selected or null if menu cancelled

    Return type

    Number

    Example

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

    StrainShell.Select(f, 'Select initial strain shells', m);

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

    StrainShell.Select(f, 'Select initial strain shells', l);


    SetFlag(flag[Flag])

    Description

    Sets a flag on the initial strain shell.

    Arguments

  • flag (Flag)

    Flag to set on the initial strain shell

    Returns

    No return value

    Example

    To set flag f for initial strain shell iss:

    iss.SetFlag(f);


    SetIntegrationPoint(index[integer], data[Array of data])

    Description

    Set the data for a specific integration point. For each integration point there will be 7 strain component values. There are nplane x nthick integration points.

    Arguments

  • index (integer)

    Index you want the integration point data for. Note that indices start at 0.

  • data (Array of data)

    Array containing the integration point data. The array length should be 7.

    Returns

    No return value.

    Example

    To set the 3rd integration point data for initial strain shell iss to the values in array adata:

    iss.SetIntegrationPoint(2, adata);


    Sketch(redraw (optional)[boolean])

    Description

    Sketches the initial strain shell. The initial strain shell will be sketched until you either call StrainShell.Unsketch(), StrainShell.UnsketchAll(), Model.UnsketchAll(), or delete the model

    Arguments

  • redraw (optional) (boolean)

    If model should be redrawn or not after the initial strain shell is sketched. If omitted redraw is true. If you want to sketch several initial strain shells and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To sketch initial strain shell iss:

    iss.Sketch();


    SketchFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]

    Description

    Sketches all of the flagged initial strain shells in the model. The initial strain shells will be sketched until you either call StrainShell.Unsketch(), StrainShell.UnsketchFlagged(), Model.UnsketchAll(), or delete the model

    Arguments

  • Model (Model)

    Model that all the flagged initial strain shells will be sketched in

  • flag (Flag)

    Flag set on the initial strain shells that you want to sketch

  • redraw (optional) (boolean)

    If model should be redrawn or not after the initial strain shells are sketched. If omitted redraw is true. If you want to sketch flagged initial strain shells several times and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To sketch all initial strain shells flagged with flag in model m:

    StrainShell.SketchFlagged(m, flag);


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

    Description

    Returns the total number of initial strain shells in the model.

    Arguments

  • Model (Model)

    Model to get total for

  • exists (optional) (boolean)

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

    Returns

    number of initial strain shells

    Return type

    Number

    Example

    To get the total number of initial strain shells in model m:

    var total = StrainShell.Total(m);


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

    Description

    Unsets a defined flag on all of the initial strain shells in the model.

    Arguments

  • Model (Model)

    Model that the defined flag for all initial strain shells will be unset in

  • flag (Flag)

    Flag to unset on the initial strain shells

    Returns

    No return value

    Example

    To unset the flag f on all the initial strain shells in model m:

    StrainShell.UnflagAll(m, f);


    Unsketch(redraw (optional)[boolean])

    Description

    Unsketches the initial strain shell.

    Arguments

  • redraw (optional) (boolean)

    If model should be redrawn or not after the initial strain shell is unsketched. If omitted redraw is true. If you want to unsketch several initial strain shells and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To unsketch initial strain shell iss:

    iss.Unsketch();


    UnsketchAll(Model[Model], redraw (optional)[boolean]) [static]

    Description

    Unsketches all initial strain shells.

    Arguments

  • Model (Model)

    Model that all initial strain shells will be unblanked in

  • redraw (optional) (boolean)

    If model should be redrawn or not after the initial strain shells are unsketched. If omitted redraw is true. If you want to unsketch several things and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To unsketch all initial strain shells in model m:

    StrainShell.UnsketchAll(m);


    UnsketchFlagged(Model[Model], flag[Flag], redraw (optional)[boolean]) [static]

    Description

    Unsketches all flagged initial strain shells in the model.

    Arguments

  • Model (Model)

    Model that all initial strain shells will be unsketched in

  • flag (Flag)

    Flag set on the initial strain shells that you want to unsketch

  • redraw (optional) (boolean)

    If model should be redrawn or not after the initial strain shells are unsketched. If omitted redraw is true. If you want to unsketch several things and only redraw after the last one then use false for redraw and call View.Redraw().

    Returns

    No return value

    Example

    To unsketch all initial strain shells flagged with flag in model m:

    StrainShell.UnsketchAll(m, flag);


    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

    StrainShell object.

    Return type

    StrainShell

    Example

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

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


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

    Description

    Adds a warning for initial strain shell. 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 initial strain shell iss:

    iss.Warning("My custom warning");


    Xrefs()

    Description

    Returns the cross references for this initial strain shell.

    Arguments

    No arguments

    Returns

    Xrefs object.

    Return type

    Xrefs

    Example

    To get the cross references for initial strain shell iss:

    var xrefs = iss.Xrefs();


    toString()

    Description

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

    Arguments

    No arguments

    Returns

    string

    Return type

    String

    Example

    To get data for strain_shell i in keyword format

    var s = i.toString();