| Error Label | Interpretation |
| 1 | The specified total number of node points, NPOIN, in the structure is less than or equal to zero. |
| 2 | The possible maximum total number of node points in the structure is less than the specified total, NPOIN. |
| 3 | The number of restrained nodal points is less than 2 or greater than NPOIN (for plane problems at least 2 points must be restrained to eliminate rigid body motions). |
| 4 | The total number of load increments is less than 1. |
| 5 | The problem type parameter, NTYPE, is not specified as either 1, 2 or 3. |
| 6 | The number of nodes/element is less than 4 (linear quadrilateral) or greater than 9 (quadratic Lagrangian elements). |
| 7 | The number of degrees of freedom per node is not equal to 2 (plane) or 3 (plate problems). |
| 8 | The total number of different materials is less than or equal to zero or greater than the total number of elements in the structure. |
| 9 | The parameter specifying the yield criterion to be employed is outside the permissible range. |
| 10 | The number of Gaussian integration points in each direction is not equal to either 2 or 3. |
| 11 | The parameter specifying the nonlinear solution algorithm to be employed is outside the permissible range. |
| 12 | The size of the stress matrix is less than 3 (plane) or greater than 5 (plate problems). |
# 6.4.14 Data echo subroutine, ECHO
The function of this subroutine is to list all the remaining data cards after at least one error has been detected by either of the diagnostic subroutines CHECK1 or CHECK2. This is accomplished by means of a simple read and write operation in alphanumeric format.
| DO 170 IVFIX=1,NVFIX | CEK2 104 |
| IF(NOFIX(IVFIX).LE.O.OR.NOFIX(IVFIX).GT.NPOIN) NEROR(22)=NEROR(22) | CEK2 105 |
| . +1 | CEK2 106 |
| KOUNT=0 | CEK2 107 |
| NLOCA=NOFIX(IVFIX)-1)*NDOFN | CEK2 108 |
| DO 160 IDOFN=1,NDOFN | CEK2 109 |
| NLOCA=NLOCA+1 | CEK2 110 |
| 160 IF(IFFIX(NLOCA).GT.0) KOUNT=1 | CEK2 111 |
| IF(KOUNT.EQ.0) NEROR(23)=NEROR(23)+1 | CEK2 112 |
| KVFIX=IVFIX-1 | CEK2 113 |
| DO 170 JVFIX=1,KVFIX | CEK2 114 |
| 170 IF(IVFIX.NE.1.AND.NOFIX(IVFIX).EQ.NOFIX(JVFIX)) NEROR(24)=NEROR(24 | CEK2 115 |
| . )+1 | CEK2 116 |
| KEROR=0 | CEK2 117 |
| DO 180 IEROR=13,24 | CEK2 118 |
| IF(NEROR(IEROR).EQ.0) GO TO 180 | CEK2 119 |
| KEROR=1 | CEK2 120 |
| WRITE(6,910) IEROR,NEROR(IEROR) | CEK2 121 |
| 910 FORMAT(//31H *** DIAGNOSIS BY CHECK2, ERROR,I3,6X,18H ASSOCIATED NCEK2 | 122 |
| .UMBER,I5) | CEK2 123 |
| 180 CONTINUE | CEK2 124 |
| IF(KEROR.NE.0) GO TO 200 | CEK2 125 |
| C | CEK2 126 |
| C*** RETURN ALL NODAL CONNECTION NUMBERS TO POSITIVE VALUES | CEK2 127 |
| C | CEK2 128 |
| DO 190 IELEM=1,NELEM | CEK2 129 |
| DO 190 INODE=1,NNODE | CEK2 130 |
| 190 LNODS(IELEM,INODE)=IABS(LNODS(IELEM,INODE)) | CEK2 131 |
| RETURN | CEK2 132 |
| 200 CALL ECHO | CEK2 133 |
| END | CEK2 134 |
Table 6.3 Errors diagnosed by Subroutine CHECK2
| Error Label | Interpretation |
| 13 | A total of x identical nodal coordinates have been detected, i.e. x nodal points have coordinates which are identical to those of one or more of the remaining nodes. |
| 14 | A total of x element material identification numbers are less than or equal to zero or greater than the total number of elements in the structure. |
| 15 | A total of x nodal connection numbers have a zero value. |
| 16 | A total of x nodal connection numbers are negative or greater than the specified maximum value, NPOIN. |
| 17 | A total of x repetitions of node numbers within individual elements have been detected. |
| 18 | A total of x nodes exist in the list of nodal points which do not appear anywhere in the list of element nodal connection numbers. |
| 19 | Non-zero coordinates have been specified for a total of x nodes which do not appear in the list of element nodal connection numbers. |
| 20 | A total of x node numbers which do not appear in the element nodal connections list have been specified as restrained nodal points. |
| 21 | The largest frontwidth encountered in the problem has exceeded the maximum value specified in subroutine FRONT of the program. |
22 A total of x restrained nodal points have numbers less than or equal to zero or greater than the specified maximum value, NPOIN.
23 A total of $x$ restrained nodal points at which the fixity code is less than or equal to zero have been detected.
24 A total of $x$ repetitions in the list of restrained nodal points have been detected.
# 6.5 Standard subroutines for elasto-plastic finite element analysis
In this section we describe four additional subroutines which are common to all the elasto-plastic and elasto-viscoplastic applications presented in Chapters 7, 8 and 9. For each subroutine presented, the form of the argument list and common block structure will be that required for two-dimensional elasto-plastic applications.
# 6.5.1 Data input subroutine, INPUT
The role of this subroutine is to accept most of the input data required for analysis of elasto-plastic problems. The structure of this subroutine follows closely that of subroutine DATA described in Section 3.2. Subroutine INPUT also closely resembles the data input subroutine presented in Chapter 3, Ref. 4 for linear elastic problems.
The control parameters necessary for two-dimensional applications extend beyond those required for one-dimensional analysis and are presented below.
NPOIN Total number of nodal points in the structure.
NELEM Total number of elements in the structure.
NVFIX Total number of boundary points, i.e. nodal points at which one or more degrees of freedom are restrained.
NTYPE Problem type parameter:
1—Plane stress,
2—Plain strain,
3—Axial symmetry.
NNODE Number of nodes per element:
4—Linear isoparametric quadrilateral element,
8—Quadratic isoparametric Serendipity element,
9—Quadratic isoparametric Langrangian element.
NMATS Total number of different materials in the structure.
NGAUS The order of Gaussian quadrature rule to be employed for numerical integration of the element stiffness matrices, etc., as described in Section 6.3.2. If NGAUS is prescribed as 2 a two-point Gauss rule is to be employed; if NGAUS is input as 3 a three-point rule will be used.
NALGO Parameter controlling nonlinear solution algorithm:
1—Initial stiffness method. The element stiffnesses are computed at the beginning of the analysis and remain unchanged thereafter.
2—Tangential stiffness method. The element stiffnesses are recomputed during each iteration of each load increment.
3—Combined algorithm. The element stiffnesses are recomputed for the first iteration of each load increment only.
4—Combined algorithm. The element stiffnesses are recomputed for the second iteration of each load increment only. (Of course for the first load increment, the element stiffnesses must be calculated for the first iteration also.)
NCRIT The yield criterion to be employed:
1—Tresca,
2—Von Mises,
3—Mohr-Coulomb,
4—Drucker-Prager.
NINCS The total number of increments in which the final loading is to be applied.
NSTRE The number of independent stress components for the application:
3—Plane stress/strain,
4—Axial symmetry.
For the present two-dimensional applications two coordinate components are required to locate each nodal point. With reference to Figs. 6.2–6.4 the x, y components must be specified for plane stress or plane strain problems and the r, z components for axisymmetric situations. This information is stored in the array
# COORD (IPOIN, IDIME)
where IPOIN corresponds to the number of the nodal point and IDIME refers to the coordinate component. As mentioned in Section 6.4.1 nodal coordinates need not be supplied for mid-side nodes of 8- and 9-noded elements if they lie on a straight line between corner nodes. The coordinates of such intermediate nodes are evaluated by subroutine NODEXY by linear interpolation.
For each nodal point at which the displacement value corresponding to one or more degrees of freedom are prescribed, input data must be supplied specifying these fixity conditions. The nodes at which one or more degrees of freedom are restrained are stored in array
# NOFIX (IVFIX)
which signifies that the IVFIX $^{th}$ boundary node has a nodal point number NOFIX (IVFIX). Input parameter IFPRE controls which degrees of freedom of a particular node are to have a specified displacement value. For
example, for plane or axisymmetric problems, integer code IFPRE may have the following values:
10 Displacement in the $x(r)$ direction specified,
01 Displacement in the $y(z)$ direction specified,
11 Displacements in both $x(r)$ and $y(z)$ directions specified.
This information is then transferred, for permanent storage, into array IFFIX (ITOTV)
where ITOTV ranges over the total number of degrees of freedom of the structure. The prescribed displacement value associated with a restrained degree of freedom is stored in array
PRESC (IVFIX, IDOFN)
where IVFIX indicates that the prescribed displacements pertain to the IVFIX $^{th}$ boundary node and IDOFN ranges over the degrees of freedom of that node.
The list of material properties for two-dimensional applications differs from the corresponding one-dimensional case considered in Section 3.2. In particular for plane and axisymmetric elasto-plastic problems the following material parameters must be input.
PROPS (NUMAT, 1) Elastic modulus, $E$ .
PROPS (NUMAT, 2) Poisson's ratio, $\nu$ .
PROPS (NUMAT, 3) Material thickness, t (applicable to plane problems only).
PROPS (NUMAT, 4) Material mass density, $\rho$ .
PROPS (NUMAT, 5) Uniaxial yield stress, $\sigma_{Y}$ (Tresca and Von Mises solids); Cohesion c (Mohr–Coulomb and Drucker–Prager materials).
PROPS (NUMAT, 6) Hardening parameter $H'$ for linear strain hardening.
PROPS (NUMAT, 7) Angle of internal friction for Mohr-Coulomb and Drucker-Prager materials only.
Consequently NPROP = 7 for two-dimensional elasto-plastic applications. The corresponding material data for plate bending problems is listed in Chapter 9.
Subroutine INPUT also calls subroutine GAUSSQ, described in Section 6.4.2, whose function is to generate the sampling point position and weighting factors for numerical integration of the element stiffness matrices, etc., by Gaussian quadrature. The order of integration rule to be employed has been specified, through NGAUS, in the control data.
Subroutine INPUT is now presented and is self-explanatory.
```fortran
SUBROUTINE INPUT(COORD, IFFIX, LNODS, MATNO, MELEM, MEVAB, MFRON, MMATS, INPT 1
. MPOIN, MTOTV, MVFIX, NALGO, INPT 2
. NCRIT, NDFRO, NDOFN, NELEM, INPT 3
. NEVAB, NGAUS, NGAU2, INPT 4
. NINCS, NMATS, NNODE, NOFIX, NPOIN, NPROP, NSTRE, NSTR1, INPT 5
. NTOTG, NTOTV, NTYPE, NVFIX, POSGP, PRESC, PROPS, WEIGP) INPT 6
C*****
C
C*** THIS SUBROUTINE ACCEPTS MOST OF THE INPUT DATA INPT 7
C
C*****
DIMENSION COORD(MPOIN, 2), IFFIX(MTOTV), LNODS(MELEM, 9), INPT 10
. MATNO(MELEM), NDFRO(MELEM), 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1
```
```csv
6 READ(5,905) IPOIN,(COORD(IPOIN,IDIME),IDIME=1,2) INPT 65
905 FORMAT(I5,6F10.5) INPT 66
IF(IPOIN.NE.NPOIN) GO TO 6 INPT 67
C INPT 68
C*** INTERPOLATE COORDINATES OF MID-SIDE NODES INPT 69
C CALL NODEXY(COORD,LNODS,MELEM,MPOIN,NELEM,NNODE) INPT 71
DO 10 IPOIN=1,NPOIN INPT 72
10 WRITE(6,906) IPOIN,(COORD(IPOIN,IDIME),IDIME=1,2) INPT 73
906 FORMAT(1X,I5,3F10.3) INPT 74
C INPT 75
C*** READ THE FIXED VALUES. INPT 76
C INPT 77
WRITE(6,907) INPT 78
907 FORMAT(//5H NODE,6X,4HCODE,6X,12HFIXED VALUES) INPT 79
DO 8 IVFIX=1,NVFIX INPT 80
READ(5,908) NOFIX(IVFIX),IFPRE,(PRESC(IVFIX,IDOFN),IDOFN=1,NDOFN) INPT 81
WRITE(6,908) NOFIX(IVFIX),IFPRE,(PRESC(IVFIX,IDOFN),IDOFN=1,NDOFN) INPT 82
NLOCA=(NOFIX(IVFIX)-1)*NDOFN INPT 83
IFDOF=10**(NDOFN-1) INPT 84
DO 8 IDOFN=1,NDOFN INPT 85
NGASH=NLOCA+IDOFN INPT 86
IF(IFPRE.LT.IFDOF) GO TO 8 INPT 87
IFFIX(NGASH)=1 INPT 88
IFPRE=IFPRE-IFDOF INPT 89
8 IFDOF=IFDOF/10 INPT 90
908 FORMAT(1X,I4,5X,I5,5X,5F10.6) INPT 91
C INPT 92
C*** READ THE AVAILABLE SELECTION OF ELEMENT PROPERTIES. INPT 93
C INPT 94
16 WRITE(6,910) INPT 95
910 FORMAT(//7H NUMBER,6X,18HELEMENT PROPERTIES) INPT 96
DO 18 IMATS=1,NMATS INPT 97
READ(5,900) NUMAT INPT 98
READ(5,930) (PROPS(NUMAT,IPROP),IPROP=1,NPROP) INPT 99
930 FORMAT(8F10.5) INPT 100
18 WRITE(6,911) NUMAT,(PROPS(NUMAT,IPROP),IPROP=1,NPROP) INPT 101
911 FORMAT(1X,I4,3X,8E14.6) INPT 102
C INPT 103
C*** SET UP GAUSSIAN INTEGRATION CONSTANTS INPT 104
C INPT 105
CALL GAUSSQ(NGAUS,POSGP,WEIGP) INPT 106
CALL CHECK2(COORD,IFFIX,LNODS,MATNO,MELEM,MFRON,MPOIN,MTOTV,INPT 107
. MVFIX,NDFRO,NDOFN,NELEM,NMATS,NNODE,NOFIX,NPOIN,INPT 108
. NVFIX) INPT 109
RETURN INPT 110
END INPT 111
```
# 6.5.2 Subroutine ALGOR
The function of this subroutine is to control the solution process according to the value of the solution algorithm parameter, NALGO, input in subroutine INPUT. This subroutine is similar in form to subroutine NONAL presented in Section 3.3 for one-dimensional applications. The subroutine sets the value of indicator KRESL to either 1 or 2 according to NALGO and the current values of the iteration number IITER and increment number IINCS. A value of KRESL = 1 indicates reformulation of the element stiffnesses accompanied by a full equation solution and KRESL = 2 indicates that the element stiffnesses are not to be modified and consequently only equation resolution takes place.
With the definitions of the permissible values of NALGO given in Section 6.5.1, subroutine ALGOR is self-explanatory and is listed below.\*
SUBROUTINE ALGOR(FIXED,IINCS,IITER,KRESL, MTOTV,NALGO,NTOTV) ALGR 1
C***** THIS SUBROUTINE SETS EQUATION RESOLUTION INDEX,KRESL ALGR 3
C ALGR 4
C***** THIS SUBROUTINE SETS EQUATION RESOLUTION INDEX,KRESL ALGR 5
C ALGR 6
C***** DIMENSION FIXED(MTOTV) ALGR 7
KRESL=2 ALGR 8
IF(NALGO.EQ.1.AND.IINCS.EQ.1.AND.IITER.EQ.1) KRESL=1 ALGR 10
IF(NALGO.EQ.2) KRESL=1 ALGR 11
IF(NALGO.EQ.3.AND.IITER.EQ.1) KRESL=1 ALGR 12
IF(NALGO.EQ.4.AND.IINCS.EQ.1.AND.IITER.EQ.1) KRESL=1 ALGR 13
IF(NALGO.EQ.4.AND.IITER.EQ.2) KRESL=1 ALGR 14
IF(IITER.EQ.1) RETURN ALGR 15
DO 100 ITOTV = 1,NTOTV ALGR 16
FIXED(ITOTV)=0.0 ALGR 17
100 CONTINUE ALGR 18
RETURN ALGR 19
END ALGR 20
# 6.5.3 Subroutine INCREM
The role of subroutine INCREM is to increment the applied loading or any prescribed displacements according to the load factors specified as input. This subroutine is accessed on the first iteration of each load increment. For each increment of load the following items of information are input as data and are similar to those described in Section 3.7.
FACTO This controls the magnitude of the load increment. The applied loading for each element is evaluated in Subroutine LOADPS for plane and axisymmetric situations, or Subroutine LOADPB for plate problems, and is stored in the array RLOAD (IELEM, IEVAB) as described in Section 6.4.5. The additional element load applied during the increment is RLOAD (IELEM, IEVAB)\*FACTO. The applied loading is accumulative so that if FACTO is input as 0·8, 0·2 and 0·1 for the first three increments, the total load acting on the structure during the third load increment is 1·1 times the loads calculated in Subroutine LOADPS. This method of load factoring permits unequal load increments to be taken. If loading is by prescribed displacements the same factoring process holds.
TOLER This controls the tolerance permitted on the convergence process and its use has been described in Section 3.9.3.
MITER Maximum permissible number of iterations. This is a safety measure to cover situations where the solution process does
\* For elasto-viscoplastic applications described in Chapter 8, iteration number IITER is replaced by timestep number, ISTEP.