<!-- source-page: 101 -->

This coordinate system specification is entirely local to the node definition. As the nodal data are read, the coordinates are transformed to rectangular Cartesian coordinates immediately. If a nodal coordinate system is also in effect (see “Specifying a local coordinate system in which to define nodes”), these are local rectangular Cartesian coordinates as defined by the nodal coordinate system, which are subsequently transformed to global Cartesian coordinates.

# Input File Usage:

Use the following option to specify the nodal coordinates in a rectangular Cartesian system (this is the default):

\*NODE, SYSTEM=R

Use the following option to specify the nodal coordinates in a cylindrical system:

\*NODE, SYSTEM=C

Use the following option to specify the nodal coordinates in a spherical system:

\*NODE, SYSTEM=S

For example, the following lines define node number 1 with coordinates (10cos20°, 10sin20°, 5.) in a local cylindrical system (R, , Z):

\*NODE, NSET=DISC, SYSTEM=C 1, 10., 20., 5.

If the following lines appeared in the input file before the above node definition, the coordinates of node 1 would be transformed first to rectangular Cartesian coordinates in the nodal coordinate system defined by the \*SYSTEM option and then to coordinates in the global system:

\*SYSTEM 2, 0, 2

# Grouping nodes into node sets

Node sets are used as convenient cross-references when defining loads, constraints, properties, etc. Node sets are the fundamental references of the model and should be used to assist the input definition. The members of a node set can be individual nodes or other node sets. An individual node can belong to several node sets.

Nodes can be grouped into node sets when they are created or after they have already been defined. In either case each node set is assigned a name. Node set names can be up to 80 characters long.

The same name can be used for a node set and for an element set.

By default, the nodes within a node set will be arranged in ascending order, and duplicate nodes will be removed. Such a set is called a sorted node set. You may choose to create an unsorted node set as described later, which is often useful for features that match two or more node sets. For example, if you define multi-point constraints (“General multi-point constraints,” Section 35.2.2) between two node sets, a constraint will be created between the first node in Set 1 and the first node in Set 2, then between the second node in Set 1 and the second node in Set 2, etc. It is important to ensure that the nodes are

<!-- source-page: 102 -->

combined in the desired way. Therefore, it is sometimes better to specify that a node set be stored in unsorted order.

Once nodes are assigned to a node set, additional nodes can be added to the same node set; however, nodes cannot be removed from a node set.

# Creating an unsorted node set

You can choose to assign nodes to a new node set (or to add nodes to an existing node set) in the order in which they are given. The node numbers will not be rearranged, and duplicates will not be removed.

This unsorted node set will affect node copies, node fills, linear constraint equations, multi-point constraints, and substructure nodes associated with retained degrees of freedom. An unsorted node set can be created only by directly defining an unsorted node set as described here or by copying an unsorted node set. Any additions or modifications to a node set using other means will result in a sorted node set.

Input File Usage: \*NSET, NSET=name, UNSORTED

# Assigning nodes to a node set as they are created

There are several ways that nodes can be assigned to node sets as they are created.

```txt
Input File Usage: Use any of the following options:
*NODE, NSET=name
*NCOPY, NEW SET=name
*NFILL, NSET=name
*NGEN, NSET=name
*NMAP, NSET=name 
```

# Assigning previously defined nodes to a node set

You can assign nodes that you have defined previously (by specifying their coordinates, by filling in nodes between two bounds, or by generating them incrementally) to a node set by listing the nodes forming the set directly, by generating the node set, or by generating a node set from an element set.

Listing the nodes that define the set directly

You can list the nodes that form a node set directly. Previously defined node sets, as well as individual nodes, can be assigned to node sets.

Input File Usage: \*NSET, NSET=name

For example, the following lines add nodes 1, 3, 10, 11, and all the nodes in set A11 to set A12:

\*NSET, NSET=A12

1, 3

10, 11,

A11

Node set A11 can be assigned to node set A12 only if the definition of A11 occurs before the definition of A12.

<!-- source-page: 103 -->

All the nodes in node set A12 will be sorted into ascending numerical order. If the UNSORTED parameter were included on the \*NSET option, node set A12 would contain the nodes in the order in which they are specified on the data lines.

# Generating the node set

To generate a node set, you must specify a first node, $n _ { 1 } ;$ a last node, $^ { n _ { 2 } ; }$ and the increment in node numbers between these nodes, i. All nodes going from $n _ { 1 }$ to $n _ { 2 }$ in increments of i will be added to the set. Therefore, i must be an integer such that $( n _ { 2 } - n _ { 1 } ) / i$ is a whole number (not a fraction). The default is .

Input File Usage: \*NSET, NSET=name, GENERATE

For example, the following lines add all nodes from 100 to 120 in increments of 10 to set A13:

```txt
*NSET, NSET=A13, GENERATE 100, 120, 10 
```

# Generating a node set from an element set

You can specify the name of a previously defined element set (“Element definition,” Section 2.2.1), in which case the nodes that define the elements contained in this element set will be assigned to the specified node set. This method can be used only to define sorted node sets.

Input File Usage: \*NSET, NSET=name, ELSET=name

For example, the following lines add all nodes that define elements 50 and 100 (nodes 1, 2, 3, and 4) to node set A14:

```txt
* ELEMENT, TYPE=B21
50, 1, 2
100, 3, 4
* ELSET, ELSET=B1
50, 100
*NSET, NSET=A14, ELSET=B1 
```

Element set B1 can be assigned to node set A14 since the definition of B1 occurs before the definition of A14.

# Limitation on updating node sets that are used to define other node sets

If a node set is constructed from previously defined node sets, subsequent updates to these sets are not taken into account.

Input File Usage: \*NSET, NSET=name

For example, the following lines add nodes 1 and 2, but not 3, to the set SET-AB while adding nodes 1 and 3 to set SET-A:

```txt
*NSET, NSET=SET-A 
```

<!-- source-page: 104 -->

```csv
1,
*NSET, NSET=SET-B
2,
*NSET, NSET=SET-AB
SET-A, SET-B
*NSET, NSET=SET-A
3, 
```

# Defining part and assembly sets

In a model defined in terms of an assembly of part instances, all node sets must be defined within a part, part instance, or the assembly definition. If a node set is defined within a part (or part instance) definition, you can refer to the node numbers directly. To define an assembly-level node set, you must identify the nodes to be added to the set by prefixing each node number with the part instance name and a “.” (as explained in “Defining an assembly,” Section 2.10.1). An assembly-level node set can have the same name as a part-level node set.

# Example

The following input defines a node set, set1, that belongs to part PartA and will be inherited by every instance of PartA:

```txt
*PART, NAME=PartA
...
*NSET, NSET=set1
1,3,26,500
*END PART 
```

A node set with the same name is defined at the assembly level as follows:

```txt
*ASSEMBLY, NAME=Assembly-1
*INSTANCE, NAME=PartA-1, PART=PartA
...
*END INSTANCE
*INSTANCE, NAME=PartA-2, PART=PartA
...
*END INSTANCE
*NSET, NSET=set1
PartA-1.1, PartA-1.3, PartA-1.26, PartA-1.500
PartA-2.1, PartA-2.3, PartA-2.26, PartA-2.500
*END ASSEMBLY 
```

Assembly-level node set set1 contains all the nodes from node sets set1 belonging to part instances PartA-1 and PartA-2. Therefore, the nodes are assigned to two separate node sets: one at the part instance level and one at the assembly level. An assembly-level node set called set1 could be created with entirely different nodes than those that belong to the part set; part- and assembly-level node sets

<!-- source-page: 105 -->

are independent. However, since in this example the same nodes are assigned to both the part- and assembly-level node sets set1, the assembly-level set could alternatively be defined by

```txt
*ASSEMBLY, NAME=Assembly-1
*INSTANCE, NAME=PartA-1, PART=PartA
...
*END INSTANCE
*INSTANCE, NAME=PartA-2, PART=PartA
...
*END INSTANCE
*NSET, NSET=set1
PartA-1.set1, PartA-2.set1
*END ASSEMBLY 
```

This node set definition is equivalent to the previous example, where the nodes are listed individually.

Alternate method for defining assembly-level node sets

Sometimes it is not convenient to define an assembly-level node set by referring to part-level node sets. In such cases a set definition containing many nodes can get quite lengthy. Therefore, an alternate method is provided.

Input File Usage: \*NSET, NSET=NsetName, INSTANCE=InstanceName

The following example shows two equivalent ways to define an assembly-level node set; once by prefixing each node number with a part instance name (as shown above) and once using the more compact INSTANCE notation:

```txt
*ASSEMBLY, NAME=Assembly-1
*INSTANCE, NAME=PartA-1, PART=PartA
...
*END INSTANCE
*INSTANCE, NAME=PartA-2, PART=PartA
...
*END INSTANCE
*NSET, NSET=set2
PartA-1.11, PartA-1.12, PartA-1.13, PartA-1.14,
PartA-2.21, PartA-2.22, PartA-2.23, PartA-2.24
*NSET, NSET=set3, INSTANCE=PartA-1
11, 12, 13, 14
*NSET, NSET=set3, INSTANCE=PartA-2
21, 22, 23, 24
*END ASSEMBLY
```

When the \*NSET option is used more than once with the same name, as it is with set3, the nodes in the second use of \*NSET are appended to the set created by the first use of \*NSET.

<!-- source-page: 106 -->

# Internal node sets created by Abaqus/CAE

In Abaqus/CAE many modeling operations are performed by picking geometry with the mouse. For example, a concentrated load can be applied by picking a point on a geometric part instance. Since the \*CLOAD option refers to a node set, this “picked” geometry must be translated into a node set in the input file. Such sets are assigned a name by Abaqus/CAE and marked as internal. You can view these internal sets using display groups in the Visualization module of Abaqus/CAE (see Chapter 78, “Using display groups to display subsets of your model,” of the Abaqus/CAE User’s Guide).

Input File Usage: \*NSET, NSET=NsetName, INTERNAL

# Transferring of node sets

If the results of an Abaqus/Explicit analysis are imported into an Abaqus/Standard analysis (or vice versa) or results from an Abaqus/Standard analysis are imported into another Abaqus/Standard analysis (see “Transferring results between Abaqus analyses: overview,” Section 9.2.1), all node set definitions in the original analysis are imported by default. Alternatively, you can import only selected node set definitions; see “Importing element set and node set definitions” in “Transferring results between Abaqus analyses: overview,” Section 9.2.1, for details.

If a three-dimensional model is generated from a symmetric model (see “Symmetric model generation,” Section 10.4.1), all node sets in the original model will be used (and expanded) in the generated model.

# Creating nodes from existing nodes by generating them incrementally

You can generate nodes incrementally from existing nodes. All of the nodes along a straight or curved line can be generated by giving the coordinates of the two end nodes and defining the type of curve.

The two end nodes must already be defined, usually by specifying their coordinates, but it is also possible to have them defined by an earlier generation.

# Defining a straight line between the two end nodes

To define a straight line between the two end nodes, specify the number of the first end node, ; the number of the last end node, ; and the increment in node numbers between each node along the line, i. Therefore, i must be an integer such that $( n _ { 2 } - n _ { 1 } ) / i$ is a whole number (not a fraction). The default is .

Input File Usage: \*NGEN

For example, in the following input node number 1 with coordinates (0., 0., 0.) and node number 6 with coordinates (10., 0., 0.) are defined and nodes 2, 3, 4, and 5 with coordinates (2., 0., 0.), (4., 0., 0.), (6., 0., 0.), and (8., 0., 0.), respectively, are generated automatically:

\*NODE

1, 0., 0., 0.

6, 10., 0., 0.

<!-- source-page: 107 -->

\*NGEN

1, 6, 1

# Defining a circular arc between the two end nodes

To define a circular arc between the two end nodes, specify the number of the first end node, $n _ { 1 } ;$ the number of the last end node, $n _ { 2 } ;$ and the increment in node numbers between each node along the arc, i. Therefore, i must be an integer such that $( n _ { 2 } - n _ { 1 } ) / i$ is a whole number (not a fraction). The default is $i = 1$ .

In addition, you must specify the coordinates of one extra point, the center of the circle, either by giving the node number of a node that has already been defined or by giving the nodal coordinates directly. If both are supplied, the node number will take precedence over the coordinates.

If the coordinates are defined directly, they can be specified in a local coordinate system as described later.

The coordinates of the end nodes will be adjusted radially if the circle cannot be passed through both points. An arc of a circle of 180° through 360° will require more extensive definition. For this case you must define the plane of the circular disc by giving the normal to the disc; the nodes will then be numbered according to the right-hand rule about this normal.

Input File Usage: \*NGEN, LINE=C

# Defining a parabola between the two end nodes

To define a parabola between the two end nodes, specify the number of the first end node, $^ { n _ { 1 } ; }$ the number of the last end node, ${ \mathrm { ~ } n } _ { 2 } ;$ and the increment in node numbers between each node along the parabola, i. Therefore, i must be an integer such that $( n _ { 2 } - n _ { 1 } ) / i$ is a whole number (not a fraction). The default is

In addition, you must specify the coordinates of one extra point, the midpoint on the arc between the two end points, either by giving the node number of a node that has already been defined or by giving the nodal coordinates directly. If both are supplied, the node number will take precedence over the coordinates.

If the coordinates are defined directly, they can be specified in a local coordinate system as described later.

Input File Usage: \*NGEN, LINE=P

# Defining the extra point and the normal direction in a local coordinate system

You can specify the coordinates of the extra point that is required for a circle or a parabola in a local rectangular Cartesian system, a cylindrical system, or a spherical system. These coordinate systems are shown in Figure 2.1.1–2.

If a nodal coordinate system is in effect (see “Specifying a local coordinate system in which to define nodes”), the coordinates and normal direction specified in the node definition are assumed to be in the nodal coordinate system. If a nodal coordinate system is in effect and you specify the extra point for a circle or parabola in a local coordinate system, the input is first transformed according to the local system specified in the node definition and subsequently according to the nodal coordinate system.

<!-- source-page: 108 -->

<table><tr><td>Input File Usage:</td><td>Use the following option to specify the extra point in a rectangular Cartesian system (this is the default):*NGEN, SYSTEM=RCUse the following option to specify the extra point in a cylindrical system:*NGEN, SYSTEM=CUse the following option to specify the extra point in a spherical system:*NGEN, SYSTEM=S</td></tr></table>

# Creating nodes by copying existing nodes

You can create new nodes by copying existing nodes. The coordinates of the new nodes can be translated and rotated, reflected from the nodes being copied, or projected from the nodes being copied by using a polar projection with respect to a pole node.

You must identify the existing node set to copy and specify an integer constant, n, that will be added to the node numbers of existing nodes to define node numbers for the nodes being created.

You can assign the newly created nodes to a node set. If you do not specify a node set name for the newly created nodes, they are not assigned to a node set.

Input File Usage: \*NCOPY, OLD SET=name, CHANGE NUMBER=n, NEW SET=new\_name

# Translating and rotating the coordinates of the old nodes

You can create new nodes by translating and/or rotating the nodes in the old node set (see Figure 2.1.1–3). You specify the value of the translation in the X-, Y-, and Z-directions.

In addition, you specify the coordinates of the first point defining the rotation axis (point a in Figure 2.1.1–3), the coordinates of the second point defining the rotation axis (point b in Figure 2.1.1–3), and the angle of rotation (in degrees) about the a–b axis. The rotation can be applied multiple times as described later.

If you specify both translation and rotation, the translation is applied once before the rotation.

$\begin{array} { r l r } { \mathrm { l n p u t \ F i l e \ U s a g e : } \quad } & { } & { \ast \mathrm { N C O P Y , O L D \ S E I = } n a m e , \mathrm { C H A N G E \ N U M B E R = } n , \mathrm { S H F T } } \end{array}$

# Applying the rotation multiple times

You can specify the number of times the rotation should be applied, m. For example, if nodes are to be created at angles of 30°, 60°, and 90°, set m=3. The identifiers of the nodes created are incremented sequentially by the value of n, as described above.

$\begin{array} { r l r } { { \mathrm { l n p u t ~ F i l e ~ U s a g e : } } \quad } & { } & { \mathrm { * N C O P Y , O L D ~ S E T = } n a m e , \mathrm { C H A N G E ~ N U M B E R = } n , \mathrm { S H I F T , M U L T I P L E = } m } \end{array}$

# Reflecting the coordinates of the old nodes

You can create new nodes by reflecting the coordinates of the old nodes through a line, a plane, or a point.

<!-- source-page: 109 -->

![](images/page-109_6beb3f1865006dae470c6b549de90eb10b92747d7221b2dcc1cb584b8ddd9c56.jpg)

<details>
<summary>flowchart</summary>

```mermaid
graph TD
    a["Point a"] -->|dashed arrow| parallelogram1
    a -->|solid arrow| parallelogram2
    a -->|solid arrow| parallelogram3
    a -->|solid arrow| parallelogram4
    a -->|solid arrow| parallelogram5
    a -->|solid arrow| parallelogram6
    a -->|solid arrow| parallelogram7
    a -->|solid arrow| parallelogram8
    a -->|solid arrow| parallelogram9
    a -->|solid arrow| parallelogram10
    a -->|solid arrow| parallelogram11
    a -->|solid arrow| parallelogram12
    a -->|solid arrow| parallelogram13
    a -->|solid arrow| parallelogram14
    a -->|solid arrow| parallelogram15
    a -->|solid arrow| parallelogram16
    a -->|solid arrow| parallelogram17
    a -->|solid arrow| parallelogram18
    a -->|solid arrow| parallelogram19
    a -->|solid arrow| parallelogram20
    a -->|solid arrow| parallelogram21
    a -->|solid arrow| parallelogram22
    a -->|solid arrow| parallelogram23
    a -->|solid arrow| parallelogram24
    a -->|solid arrow| parallelogram25
    a -->|solid arrow| parallelogram26
    a -->|solid arrow| parallelogram27
    a -->|solid arrow| parallelogram28
    a -->|solid arrow| parallelogram29
    a -->|solid arrow| parallelogram30
    a -->|solid arrow| parallelogram31
    a -->|solid arrow| parallelogram32
    a -->|solid arrow| parallelogram33
    a -->|solid arrow| parallelogram34
    a -->|solid arrow| parallelogram35
    a -->|solid arrow| parallelogram36
    a -->|solid arrow| parallelogram37
    a -->|solid arrow| parallelogram38
    a -->|solid arrow| parallelogram39
    a -->|solid arrow| parallelogram40
    a -->|solid arrow| parallelogram41
    a -->|solid arrow| parallelogram42
    a -->|solid arrow| parallelogram43
    a -->|solid arrow| parallelogram44
    a -->|solid arrow| parallelogram45
    a -->|solid arrow| parallelogram46
    a -->|solid arrow| parallelogram47
    a -->|solid arrow| parallelogram48
    a -->|solid arrow| parallelogram49
    a -->|solid arrow| parallelogram50
    a -->|solid arrow| parallelogram51
    a -->|solid arrow| parallelogram52
    a -->|solid arrow| parallelogram53
    a -->|solid arrow| parallelogram54
    a -->|solid arrow| parallelogram55
    a -->|solid arrow| parallelogram56
    a -->|solid arrow| parallelogram57
    a -->|solid arrow| parallelogram58
    a -->|solid arrow| parallelogram59
    a -->|solid arrow| parallelogram60
    a -->|solid arrow| parallelogram61
    a -->|solid arrow| parallelogram62
    a -->|solid arrow| parallelogram63
    a -->|solid arrow| parallelogram64
    a -->|solid arrow| parallelogram65
    a -->|solid arrow| parallelogram66
    a -->|solid arrow| parallelogram67
    a -->|solid arrow| parallelogram68
    a -->|solid arrow| parallelogram69
    a -->|solid arrow| parallelogram70
    a -->|solid arrow| parallelogram71
    a -->|solid arrow| parallelogram72
    a -->|solid arrow| parallelogram73
    a -->|solid arrow| parallelogram74
    a -->|solid arrow| parallelogram75
    a -->|solid arrow| parallelogram76
    a -->|solid arrow| parallelogram77
    a -->|solid arrow| parallelogram78
    a -->|solid arrow| parallelogram79
    a -->|solid arrow| parallelogram80
    a -->|solid arrow| parallelogram81
    a -->|solid arrow| parallelogram82
    a -->|solid arrow| parallelogram83
    a -->|solid arrow| parallelogram84
    a -->|solid arrow| parallelogram85
    a -->|solid arrow| parallelogram86
    a -->|solid arrow| parallelogram87
    a -->|solid arrow| parallelogram88
    a -->|solid arrow| parallelogram89
    a -->|solid arrow| parallelogram90
    a -->|solid arrow| parallelogram91
    a -->|solid arrow| parallelogram92
    a -->|solid arrow| parallelogram93
    a -->|solid arrow| parallelogram94
    a -->|solid arrow| parallelogram95
    a -->|solid arrow| parallelogram96
    a -->|solid arrow| parallelogram97
    a -->|solid arrow| parallelogram98
    a -->|solid arrow| parallelogram99
    a -->|solid arrow| parallelogram100
    b -->|vertical axis| a
```
</details>

Figure 2.1.1–3 Translation and rotation of existing nodes.

Reflecting the coordinates through a line

To reflect the old nodal coordinates through a line, you specify the coordinates of points a and b (see Figure 2.1.1–4).

Input File Usage: \*NCOPY, OLD SET=name, CHANGE NUMBER=n, REFLECT=LINE

![](images/page-109_5e525712b2250e88f1343cb9afddc4b9f08cdb2997fec2b5dfe326ad741ad1ef.jpg)

<details>
<summary>text_image</summary>

a
New Set
b
Old set
</details>

a, b define the line   
Figure 2.1.1–4 Reflection of coordinates through a line.

<!-- source-page: 110 -->

Reflecting the coordinates through a plane

To reflect the old nodal coordinates through a plane, you specify the coordinates of points a, b, and c (see Figure 2.1.1–5).

Input File Usage: \*NCOPY, OLD SET=name, CHANGE NUMBER=n, REFLECT=MIRROR

![](images/page-110_483ca35257fd36cb6ba3fda8c2fe4576ce90e5c2dc7cbec8aae501388fdbe8b5.jpg)

<details>
<summary>text_image</summary>

New Set
Old Set
a
b
c
</details>

a, b, c define the mirror plane   
Figure 2.1.1–5 Reflection of coordinates through a plane.

Reflecting the coordinates through a point

To reflect the old nodal coordinates through a point, you specify the coordinates of point a (see Figure 2.1.1–6).

Input File Usage: \*NCOPY, OLD SET=name, CHANGE NUMBER=n, REFLECT=POINT

# Projecting the nodes in the old set from a pole node

You can create new nodes by projecting the nodes in the old set from a pole node. Each new node will be located such that the corresponding old node is equidistant between the pole node and the new node. The pole node (see Figure 2.1.1–7) is identified by giving its number or, alternatively, its coordinates.

This method is particularly useful for creating nodes that are associated with infinite elements (“Infinite elements,” Section 28.3.1). In this case the pole node should be located at the center of the far-field solution.

Input File Usage: \*NCOPY, OLD SET=name, CHANGE NUMBER=n, POLE
