You are on page 1of 215

IR-02-03

DESIGN LOADING FOR


DEEPLY BURIED Box CULVERTS

Prepared by

Kyungsik Kim
ChaiH. Yoo

Prepared for

Highway Research Center


Auburn University, AL

MAV2002
Design Loading for Deeply Buried Box Culverts

Kyungsik Kim

and
Chai H. Yoo

Highway Research Center


Auburn University
Auburn University, Alabama

May 2002
Acknowledgments

The investigation which led to the results presented herein was


supported jointly by the Huff Eminent Scholar fund and the
Highway Research Center at Auburn University. The authors
gratefully acknowledge the assistance provided by D. L. Allen of
Kentucky Transportation Research Center including the source
code of PC version ISBILD.

Disclaimer

The opinions and conclusions expressed or implied in the report


are those of the authors. They are not necessarily those of the
funding agencies.

ii

....
EXECUTIVE SUMMARY

An investigation was conducted to characterize and quantify the load intensity on deeply

buried concrete box culverts. For deeply buried structures, the dead weight of soil itself is the

main design load and the effect of live loads is not considered significant. The current AASHTO

Standard Specifications for Highway Bridges and AASHTO LRFD Bridge Design Specifications

stipulate the computation of the design load on the top flange of the box culvert based primarily

on research work by Marston and Spangler. Depending on the installation method, trench

installation or embankment installation, the effective density (or the design soil-structure

interaction factor) on the concrete box culverts can be substantially different, as the settlement of

the backfill is affected by the vertical shear between the adjacent soil columns. Although the

AASHTO procedure may be applied conservatively for most ordinary culverts, an opportunity

exists to evaluate a more rational soil-structure interaction behavior based on modem methods of

finite element analyses.

The primary objectives are: 1) to evaluate factors directly influencing load intensities on

concrete box culverts under high backfill, including the effect of different installation methods;

2) to examine the performance of the traditional method of predicting loads on concrete box

culverts under high backfill; and 3) to develop a method that includes new design equations or

figures to predict the effective densities or soil-structure interaction factors for deeply buried

concrete box culverts.

To meet the objectives of this research project, three main tasks were carried out: 1) a

literature survey, 2) numerical analysis and evaluation of analytical data, and 3) the development

of design equations and graphical charts. In the first task, a thorough literature search was

III
conducted to reveal existing information regarding innovative design guidelines pertinent to

calculating more rational loads on concrete box culverts. This task has uncovered a substantial

number of research documents published on the subject, including the original Marston-Spangler

theory, soil modeling techniques, and applications of finite element analysis programs. For the

second task, a number of selected hypothetical culvert-soil systems with different installation

methods and foundation conditions as well as various backfill heights, were modeled and

analyzed using finite element codes such as ABAQUS, a general purpose commercial finite

element code, CANDE-89 (Culvert ANalysis and DEsign Program), and ISBILD (a computer

program for the analysis of static stresses and movements in embankments). The data collected

were quantified and synthesized to formulate equations for predicting effective densities or soil-

structure interaction factors in the final task. A selected portion of the data was then

characterized using a regression analysis. Design equations were formulated and example

problems were presented to illustrate the validity and reliability of the derived equations.

All three finite element programs, ABAQUS, CANDE-89, and ISBILD predicted the

effective densities or soil-structure interaction factors that were reasonably close to one another.

The results showed that the effective densities for embankment installations are most sensitive to

the foundation characteristics, i.e., whether on a yielding or unyielding foundation was used.

Concrete box culverts are most likely to be installed on a yielding foundation unless an obvious

solid bedrock layer is encountered. Contrary to the current AASHTO provisions, the

compactness of fill along the sides of the box section does not appear to affect the effective

density significantly. The finite element analysis indicates that the effect of possible slips of the

backfill materials along the exterior culvert wall is negligibly small. The results also show that

imperfect trench installations reduce the effective density on the box culverts significantly.

IV
However, the size of the soft zone that is needed in the imperfect trench installations need not be

unnecessarily large. It has also been reported that the selection of the lightweight compression

material to be used in the soft zone and subsequent field installations demands considerable ..
planning and care. The current AASHTO equations, along with most other references, stipulate

the effective densities for the trench installations under the assumption that the trench walls are

excavated vertically. This study showed that the effect of sloping trench walls on the soil-

structure interaction factors is quite high. As it is practically impossible and/or too expensive to

excavate deep trench walls vertically, the validity and usefulness of the current AASHTO

equations for trench installations is therefore questionable.

v
TABLE OF CONTENTS

ACKNOWLEDGMENTS ...................................................................................... ........ ...... ........ ii

EXECUTIVE SUMMARY ........................ ........................ ....... ........ ........ ..... ............................. iii

TABLE OF CONTENTS ........ .................. ..... .................. ..................... ........ ............................... vi

LIST OF TABLES ..................................................................................................................... viii

LIST OF FIGURES .. .............. ..... .... ......... .... ...... ............. .......... ............ ..... .................. ............... ix

CHAPTER 1
INTRODUCTION .............................................................. ................................. ............ .............. 1
1.1 Statement of the Problem .............................................................................................. 1
1.2 Objectives of Research ........... ...... .................................... ................................... ........ 2
1.3 Research Approach ........................ ............ .......... ........... ........................ ..................... 2

CHAPTER 2
LITERATURE REVIEW ............................ ................... .......... ...... ......... .... ......... .......... ...... ......... 4
2.1 General ......... ... ........................ .... ._................................................................................ 4
2.2 Soil Models ........................................................................................ .......................... 5
2.3 Interface Behavior ......................................................... .... .................. ......................... 9
2.4 Imperfect Trench Installation .......... .................... .... ........ ................. .................. ........ 10
2.5 Finite Element Codes ................................................................................................. 11

CHAPTER 3
BACKGROUND AND THEORY ................ .............................................................................. 14
3.1 Marston-Spangler Theory ......................................................... ..... ......... .. ................. 14
3.2 Current Design Loads ................................................................................................ 19
3.3 Duncan Soil Model .................................................................. ...... .... ............. ........... 26
3.4 Tangent Stiffness for Interface Shear Behavior ................. ........................................ 35

CHAPTER 4
SOIL-STRUCTURE MODELING .............................. ................... .................. ...... ..................... 42
4.1 Finite Element Model ............................. ........................ ............ .... ........................... 42
4.2 Soil-Structure Interface Modeling ............................................................. ................ 44
4.3 Model Verification .................................... ................... ............ ................ .................. 50

CHAPTER 5
NUMERICAL ANALYSIS ...................... .......... ............ ...... .............. .... ... .. ... ........ .... ................. 52
5.1 General ....................................... ...... ... .... .......... .. ......... ................................. ............. 52
5.2 Embankment Installations ........ ..... .............. ..................... .............. ............................ 53
5.3 Imperfect Trench Installations ............................................ ............... ........................ 57

VI
5.4 Trench Installations ....................... .................. .......... .. ............................................... 65
5.5 Effect of Sloping Trench Walls ......... ........ .......... ...... ..... ......... ... ....................... ........ 69
5.6 Examples ............ ................. ............................................................................... ....... . 69

CHAPTER 6
CONCLUSIONS AND RECOMMENDATIONS FOR FUTURE STUDy ........ ........ .. ....... .. ... 77
6.1 Conclusions ................................... ... .. .. ........ ........ ...................................................... 77
6.2 Recommendations for Future Study ..... .... ................................................................. 78

REFERENCES .............. ................................... ................. ............ ..... ......... ........ .... .. ...... ........... . 80

APPENDICES

APPENDIX A
Typical Input for ABAQUS ............................................................................................. 84

APPENDIXB
Typical Input for ISBILD ......................... .................................... ...... ..... ........................ 95

APPENDIXC
Typical Input for CANDE-89 ....... .................. ..... ...... .................. ......................... ......... 110

APPENDIXD
ISBILD Source Code ............................. ...................... ..................................... ............. 111

APPENDIXE
CANDE-89 Source Code ....................... .............. .......................................................... 124

Vll
LIST OF TABLES

Table 2.1: Young's Modulus vs. Vertical Stress for the Overburden Dependent Model ......... ..... 8

Table 3.1: Design Values of Settlement Ratio ........................................... .. ....................... ...... ... 20

Table 3.2: Values ofCe in Terms of lUBe ......................................... .. .................... .. ................... 20

Table 3.3: Summary of the Hyperbolic Parameters .......... ...... .... ... ............ .... .............................. 33

Table 3.4: Stress-Strain and Strength Parameters for Soils under Drained Conditions ............... 36

Table 3.5: Stress-Strain and Strength Parameters for Soils


under Unconsolidated-Undrained Conditions ............................................................. 38

Table 4.1: Soil-Structure Interface Factor Comparison .............................................................. 47

Table 4.2: Values of Parameters of K st .................... .. ...... . .. . .. ..... .... .. .... ... .. ........ .. ................. . ....... 48

Table 5.1: Hyperbolic Parameters Used in the Analysis ........................................ ................... .. 53

Table 5.2: Pressure Reduction Rates (%) Due to Imperfect Trench Installation ....... ............. ... .. 60

Table 5.3: Vertical Displacements at Soft Zone (ft) .................................................................... 64

Table 5.4: Summary of Results for Example 1 ......... ............ .. .. ............ ........ ...... ... .. .. .. ........ .. ...... 73

viii
LISTS OF FIGURES

Figure 3.1: Pressure Transfer within a Soil-Structure System ...................... ............. .... .... .... ..... 15

Figure 3.2: Construction Conditions of Underground Conduits ..................... .. ... .... ... ... .. .. .... ...... 16

Figure 3.3 : Various Classes of Conduit Installations ........... .... .. ... .... ... ... ... ....... .. .... ................ .. ... 17

Figure 3.4: Diagram for Coefficient Cd for Ditch Conduits ............ ... .......... ........ .......... ....... ...... 21

Figure 3.5: Diagram for Coefficient Ce for Positive Projecting Conduits .... ..... ... .. .... ........ ......... 22

Figure 3.6: Diagrams for Coefficient en


for Negative Projection Conduits
and Imperfect Ditch Conditions ................................. ;........................ .. ....... .. .......... .. 23

Figure 3.7: Hyperbolic Stress-Strain Curve ....... ............ ................................. .......... .... .... ... .... .... 27

Figure 3.8: Transformed Hyperbolic Stress-Strain Curve ................................ .. .... ................. .. .. 27

Figure 3.9: Hyperbolic Axial Strain-Radial Strain Curve ............ .............. .. ...... ..... ... ... .... .... ... ... 31

Figure 3.10: Transformed Hyperbolic Axial Strain-Radial Strain Curve .... ... .. .. ...... ...... ...... .... .. . 31

Figure 4.1 : Typical Soil-Structure Finite Element Model .. ... .. ......... ........ ... .. ....... .. ... ........ ....... ... 45

Figure 4.2: Soil-Structure Interaction Factor vs. W,/Be ................... .......................... .. ........... ..... 46

Figure 4.3 : Incremental Sequences for Embankment and Trench Installation ... .. ... ..... ............ .. 46

Figure 4.4: Spring Interface Modeling ..... .. .... .. ......... .... .... ....... ....... ....... ....... .... ....... .. ...... .. ....... ... 49

Figure 4.5: Schematics of Test Setup and Data Comparison ....................... .. .. ... ......... ... .... ...... ... 50

Figure 5.1: Effective Density for Embankment Installations ....... ................... ..... ..... .... .... ....... ... 55

Figure 5.2: Effective Density Curves from Proposed Equations


for Embankment Installations ..... .......... .... ... .. ..... .. ......... ........... ... ... ...... ...... ........ ....... 55

Figure 5.3: Deformed shape of Soil-Structure System ... .. ..... .... ......... ...... .... ..... ....... .. ............ ... .. 56

Figure 5.3 : Imperfect Trench Installation .................... ..... ... ................ ... .... ........ .... .. .. .... ... .. .... .. .. 60

Figure 5.4: Load Reduction Rate vs. hlHe (Different wiBe) ............. .. .......... .. .. ...... ... ........ ......... .. 61

ix
Figure 5.5: Load Reduction Rate versus hlHc (Different Young's Modulus) ..... ...................... .. 61

Figure 5.6: Effective Density Distribution on the Box (Different wlBc) ..................................... 62

Figure 5.7: Effective Density Distribution on the Box (Different Young's Modulus) ................ 62

Figure 5.8: Load Reduction Rate vs. h'lHc ................................................................................... 63

Figure 5.9: Effective Density Distribution (wIBc=l, hlHc=1.25) ................................................. 63

Figure 5.10: Close-up View of Deformed Shape near the Soft Zone ..................... ... ....... ... .... ... 64

Figure 5.11: Effective Density vs. BdlBc .................................................................................... 66

Figure 5.12: Effective Density vs. HIBdon Yielding Foundation ............................................... 68

Figure 5.13: Effective Density vs. HIBdon Unyielding Foundation .................. ............... .......... 68

Figure 5.14: Trench Installation with Sloping Sidewalls ...................................................... ....... 70

Figure 5.15: Effect of Sloping Sidewall in Trench Installations (H=50 feet) ............................. 70

Figure 5.16: Effect of Sloping Sidewall in Trench Installations (H= 100 feet) ...... ..................... 71

Figure 5.17: Effect of Sloping Sidewall in Trench Installations (H=150 feet) ............... ............ 71

x
CHAPTERl

INTRODUCTION

1.1 Statement of the Problem

Cast-in-place or precast reinforced concrete box culverts are widely used throughout the

world to provide safe and relatively economical structures for the conveyance of water, vehicles,

utilities or pedestrians. Although the single cell or multi-cell box culverts are rather simple

structures, the loadings applied to these structures during their construction and subsequent

service life can be complex. These structures are subjected to substantial vertical and lateral

earth pressures, and are often SUbjected to significant temporary loadings during the construction

of the embankment. In spite of the complex nature of the loading around these structures, simple

routine design procedures would be highly desirable if they could be made possible.

When the relative settlement of the soil prism directly above the structure is greater than

that of the adjacent soil prisms, as in trench installations, the layers of soil in the central prism

are subjected to a reverse arch shape defonnation and consequently the earth pressure on the

structure is reduced by the amount of the shearing forces exerted to the central soil prism.

Likewise, when the relative settlement of the soil prism directly above the structure is less than

that of the adjacent soil prisms, as is usually found in embankment installations, the layers of soil

on the central prism are subjected to an arch shape defonnation and the earth pressure on the

structure is increased. Although Marston[I,2] and Spangler[3,31,32] successfully quantified these

phenomena by solving differential equations based on the equilibrium conditions of a simplified

free body of prisms, an opportunity exists to revisit the problem using the modern-day numerical

techniques made possible by the development of finite element methods.

1
1.2 Objectives of Research

Both AASHTO Standard Specifications for Highway Bridges[6] and AASHTO LRFD

Bridge Design Specifications[5] stipulate procedures for calculating the design loads on box

culverts based on the Marston-Spangler theory. It is desirable, however, to evaluate a more

realistic soil-structure interaction behavior based on modern finite element analysis. The main

objective of this research project is, therefore, to develop new design equations and/or graphical

charts for the prediction of a more realistic value for the backfill load that is expected to exert on

concrete box culverts, especially under high backfills. The primary objectives are as follows:

1) To evaluate the factors directly influencing load intensities on concrete box

culverts under high backfill, including installation methods,

2) To examine the performance of the traditional method of predicting loads on

concrete box culverts under high backfill, and

3) To develop a method that includes new design equations or figures to predict the

effective densities for deeply buried concrete box culverts.

1.3 Research Approach

To meet the stated objectives in this research project, three main tasks were carried out as

follows:

1) A literature survey,

2) Numerical analysis and evaluation, and

3) The development of design equations or figures.

In the first task, a thorough literature search was conducted to collect existing information

regarding innovative design guidelines that can be applied to a more realistic design load

evaluation for concrete box culverts. This task has resulted in a collection of a substantial

2
amount of material published on the subject, including the original Marston-Spangler theory, soil

modeling techniques, and applications of finite element analysis programs.

In the second task, a number of selected hypothetical culvert-soil systems were modeled

with different installation methods and foundation conditions, as well as a range of backfill

heights. The models were analyzed using finite element codes such as ABAQUS, a general-

purpose commercial finite element code, CANDE-89 (Culvert ANalysis and DEsign program),

and ISBILD (a computer program for the analysis of static stresses and movements in

embankments). This study presents results that are based on two-dimensional finite element

analyses, linear elastic analysis by ABAQUS, CANDE-89, and nonlinear analysis by ISBILD.

The construction layers were considered in these three programs. The backfill heights were

vaied from 50 to 200 feet for the embankment condition and 50 to 150 feet for the trench

condition. In the case of the trench condition, the distance between the concrete box culvert

wall and the adjacent existing trench soil column was also varied.

In the final task, the data collected in the second task were quantified and used to

formulate a set of equations for predicting effective densities.

3
CHAPTER 2

LITERATURE REVIEW

2.1 General

A culvert, in the fonn of an underground structure, in a unifonn soil field causes a

redistribution of the free field stresses and deflections. The nature of this redistribution

influences the load that reaches the structure, and the proportion of the load that reaches the

structure is governed by the characteristics of the soil, and the geometry and stiffness of the

structure itself. Marston pioneered an investigation of underground conduits both analytically

and experimentally in the early years of the 20th century. Most codes of practice for the design

and construction of underground structures have made use of the extensive experimental and

analytical studies carried out originally by Marston. Marston and Anderson[\] published an

authoritative paper on the theory of external loads on pipes in ditches and tests of cement and

clay drain tiles and sewer pipes in 1913. Marston issued a series of bulletins from then on; one

of the most useful works was a review of theories of external loads on closed conduits in 1930.[2]

The work was carried forward by Spangler, who published a bulletin concerning field

measurements of the settlement ratio of various highway culverts in 1950. [3] Marston discussed

the loads on rigid conduits in tenns of the shearing forces developed in the prism of soil above

the structure, making use of the following soil properties: density, the ratio between active

lateral and vertical pressure, cohesion, the angle of internal friction, and the stress-strain

characteristics of the soil. Marston also took into account the relative settlement of the soil

above and below the structure and the soil adjacent to the structure, the vertical deflection of the

top surface of the structure with respect to the base, and the compression in the soil prisms above

4
and adjacent to the structure. More details concerning the Marston-Spangler theory are

presented in Chapter 3.

Up until the twelfth edition of the AASHTO Standard Specifications for Highway

Bridges, [4] the stipulated vertical loading was essentially 70 percent of the weight of the earth

prism (120 Ib/ft3) above the top slab. Article 1.2.2(A) permits the application of Marston

formulas for definite conditions of bedding and backfill. The current AASHTO LRFD Bridge

Design Specifications[5] and Standard Specifications for Highway Bridges[6] requirements on the

design loadings on cast-in-place or precast concrete box culverts are based on the Marston-

Spangler theory of the soil-structure interaction. These criteria were adopted by AASHTO in the

thirteenth edition of the Standard Specifications[7] in 1983. At the same time, the 0.7, vertical

soil pressure reduction factor, was eliminated. The current AASHTO Standard Specifications for

highway bridges[6] provide dead and wheel loads on the culvert transferred through the filling

soil in Section 6, "Culverts," and design guidelines of culverts including soil-structure interaction

factors, taking into account the type and conditions of installation, in Section 17, "Soil-

Reinforced Concrete Structure Interaction Systems." The current AASHTO LRFD Bridge

Design Specifications[5] also provide methods of calculating total unfactored loading on concrete

box culverts, either cast-in-place or precast, in Section 12, "Buried Structures and Tunnel

Liners."

2.2 Soil model

Linear elastic isotropic material properties were used in earlier finite element analyses of

soil behavior. Two independent elastic constants are required to characterize the soil; Poisson's

ratio and Young's modulus, or shear modulus. It was readily recognized that successful

modeling required a judicious choice of the elastic moluli of various soil types. More common

5
representations of soil behavior, incorporated in the finite element codes, are the nonlinear

models represented by piece-wise elastic or stress-dependent moduli that are capable of handling

the laboratory stress-strain conditions. There are two general categories of stiffness and/or

compressibility models: (1) models based on constant confining pressure triaxial tests, and (2)

models based on uniaxial strain (confined) compression tests. The soil models in the first

category usually incorporate a failure condition, whereas those found in the second category do

not, because the failure condition is not defined in the uniaxial tests. Examples of the first

category are the Hardin model, [8] the Duncan model,l9,1O] and the bilinear modelY I] while the

overburden-dependent model[12] falls into the second category. Since the Duncan model is

capable of obtaining its compressibility parameters from the uniaxial compression test, it is the

most general of the models in the first category and one of the most frequently used models in

recent studies.

In the linear elastic model, where the soil is represented as a linear elastic material, it is

required that two independent elastic constants be defined, for example, Young's modulus, E,

and Poisson's ratio, v. Based on a synthesis of the results of the plate load field tests, one-

dimensional compression tests, and triaxial compression laboratory tests, Sanderson and his

coworkers[l3] showed the best estimate of a representative Young's modulus for all of the

backfill to be in the range from 3,000 to 7,000 psi. The value of Poisson's ratio was determined

from the coefficient of lateral earth pressure at rest, Ko, which is required to define the initial

stress states of all of the newly placed soil elements for the finite element analysis. This

coefficient of lateral earth pressure relates the lateral stress, OH, to the vertical stress, OV, using

the relationship:

(2.1)

6
The vertical stress, av, is calculated as the product of the total unit soil weight, Yr, and half the

vertical element height, H. The value of Ko was determined from the Mohr-Coulomb strength

parameter, ¢, and the empirical correlation as:

Ko = 1-sin¢ (2.2)

The Poisson's ratio, v, for the plane strain case may be calculated from Ko as follows:[24]

Ko
v =--"-- (2.3)
l + Ko

For example, for a ¢ of 44 degrees, typical values of Ko and v are calculated to be 0.35 and 0.25

from Equations 2.2 and 2.3, respectively.

The Duncan model is the most frequently used soil model based on a nonlinear

constitutive relationship. Duncan and Chang[9] expanded the basic hyperbolic stress-strain

relationship of soil suggested by Kondner[14] to include failure ratios of soil, modulus numbers,

modulus exponent, and Poisson ratio parameters. In the Duncan model, triaxial and one-

dimensional compression tests are employed to determine the stress-strain, strength and

compressibility parameters. Details of the Duncan model are given in Chapter 3.

In a bilinear model, the stress-strain behavior of an individual triaxial test is represented

as a bilinear function consisting of a constant slope from zero to the peak deviator stress,

followed by a small positive slope after the peak. The constant slope represents the average

slope from zero to the peak stress. The reduction in stress following the peak is not modeled;

instead, a reduction of Young's modulus, i.e., the slope in deviator stress-axial strain plot to a

value of 111,000 of its original value is incorporated to handle failure. The relationship between

the constant average slope and the confining pressure was described by Janbu[15] in terms of

7
confining stress, atmospheric pressure, and an exponent determining the rate of variation of

constant modulus with confining stress.

One inconvenience of the overburden model is that the overburden-dependent,

incrementally elastic parameters, Young's modulus, E, and Poisson's ratio, v, cannot be

determined directly from a one-dimensional compression test. Sanderson and his coworkers[13]

used a bilinear model for back-calculation in order to reproduce one-dimensional compression

test results. McVay[16] proposed some vertical stress-dependent Young's moduli for the

overburden dependent model using one-dimensional compression test with a single finite

element. McVay's model incorporates a constant Poisson's ratio of 0.25. Table 2.1 lists the

moduli with their respective vertical stresses.

Table 2.1: Young's Modulus vs. Vertical Stress for the Overburden Dependent Model

Vertical Stress (psi) Young's Modulus (psi)

0.0 44
0.5 623
1.0 840
3.0 1,100
5.0 1,170
10.0 1,720
15.0 2,200
20.0 2,700
25.0 3,200
30.0 3,600
40.0 4,600

8
2.3 Interface behavior

An interface phenomenon that is frequently discussed is slip between the soil and culvert,

which is characterized by the relative movement along the surface of contact when the shear

stress tangent to the interface exceeds the corresponding interface frictional resistance. The

modeling of the interface behavior for finite element applications is classified into two distinct

methods, i.e., the method of stiffness and the method of constraintsY2]

Goodman, Taylor and Brekke[17] were the first to develop the stiffness interface element

to account for the relative movements between rock joints. The element consists of two lines,

each with two nodal points. The two lines initially occupy the same position before deformation

and each node has two degrees of freedom, horizontal and vertical displacement, which can

simulate both tangential slippage across the interface and debonding of the soil and culvert.

However, the element suffers from certain difficulties. In order to prevent penetration of the two

contacting bodies when subject to compressive forces, a very large interface normal stiffness

must be supplied. On the other hand, some penetration is required in order to recover the normal

force at the interface. Leonards and WU[18] have indicated that due to the large normal stiffness,

the significant digits of penetration become truncated, hence the resulting interface normal force

would be in error. It has been shown by studies employing the method of stiffness that in most

cases the effects of slip between the soil and conduits are small. [16]

The concept of using constraint equations to represent interface behavior was first

introduced by Chan and Tuba.[I9] It is believed that Katona and his coworkers[J2] were the first

to develop a general theory for treating constraint equations in the formulation of interface

elements, and devised an iterative procedure for characterizing the interface behavior. The

interface element is defined by a set of paired nodes, one node belonging to the conduits and the

9
other the soil, each of which allows both horizontal and vertical displacements. A third node is

assigned to the interior of the paired nodes with the distinct purpose of providing equation

numbers for the normal and tangential interface forces. The resulting element stiffness matrix is

of the order of 6 by 6. Four kinematic states were defined to represent the interface behavior

based on permutations of either "fixed or "free" to describe the relative movements in both the

normal and tangential directions. However, the free state in the normal direction and the fixed

state in the tangential direction were disallowed from a physical point of view. For a given load

increment, the choice of correct interface states (kinematically) is determined by a trial and error

process. The trial responses are then used to determine if the assumed state is correct and, if not,

what the new trial state should be. [12] The interface behavior by constraint equation has been

programmed in the CANDE program[36] but has met with only limited success because of

difficulties of convergence. The linear and overburden-dependent soil models appear to be the

only two soil models free of the convergence problems with the interface elements in the

CANDE program. [18,20]

2.4 Imperfect Trench Installation

During the late 1800s and the early 1900s, the significant effect of the relative settlements

of the prisms directly above and adjacent to the buried conduits on the soil pressure was noted.

Consequently, it became a common practice to place the fill to a height of about 12 ft above the

structure, excavate a trench, and back fill this with an organic material such as hay, also known

as imperfect trench installation. It was intuitively expected that the result of this organic back fill

was to introduce a reverse arching effect with a radical alteration of the culvert pressure

distribution due to the fill subsequently placed above the hay level. With the completion of the

fill and the passage of time, the organic material would rot away and provide little effective

10
stiffness. It is believed that Brown[21] quantified for the first time in 1967 the pressure reduction

effect of the hay layers based on the finite element method of plane elasticity. An analytical

method incorporating the finite element analysis of plane elasticity was developed to account for

the practical features concerning how to describe the pressure distribution on a rigid culvert that

is buried with the light material zone. To verify the accuracy ofthe theoretical treatment and the

computer programs, the method developed was applied to a 200-ft-high fill embankment with

organic inclusions over a 10-ft high, barrel-shaped rigid culvert. Various properties offill and

organic hay zones with rigid and flexible rock-boundaries were tried for a series of practical

examples. The success of the method is largely dependent on the knowledge of the properties of

fill, rock, and hay inclusions. Lately, Vaslestad and his coworkers[22] revisited this imperfect

trench installation method to examine the long-term behavior of the load reduction

characteristics on rigid culverts beneath high fills. Super light expanded polystyrene blocks were

used as the compressible material. The full-scale measurements showed a considerable

reduction, 30%-50%, in the vertical earth pressure. The long-term observations showed that

there was no increase in earth pressure and deformation of the pipes beneath the rock fill and

only a slight increase in the deformation of the expanded polystyrene in the clay.

2.5 Finite Element Codes

The finite element method was originally introduced in the late 1950s as a tool for the

solution of stress problems related primarily to the aircraft industry. Since that time, the finite

element method has become a useful and accepted tool in many areas of civil engineering.

Linear and nonlinear stress analysis applications in geotechnical engineering for static and

dynamic loading was introduced in the late 1960s and early 1970s.

11
Kulhawy and his coworkers[23] developed LSBUILD, a finite element program for

stresses and movements in embankments during construction, in 1969. Ozawa and Duncan[24]

followed the work and developed ISBILD, which is an updated version of the older computer

program LSBUILD taking into account additional characteristics such as incompatible

displacement modes, a more accurate procedure for assigning initial stresses to elements, and

more efficient computational techniques. The computer program ISBILD was developed

originally in order to incorporate improvements in finite element analysis techniques into a

computer program for analysis of stress and movements in dams. This program incorporates a

nonlinear incremental finite element method employing a hyperbolic stress-strain relationship

and incremental analysis procedures. Allen and Meade[25] used the program ISBILD to predict

loads on and settlements of concrete culverts that had been actually installed in the Kentucky

area. Soil parameters for the original ground were obtained from triaxial tests of materials from

the actual construction site. Their results indicated that the finite element method predicted the

pressure on box culverts more accurately than other analytical methods available at the time.

Katona and his coworkers[12] pioneered the application of the finite element method for

the solution of buried pipe problems. Their FHWA-sponsored project produced CANDE, which

is a special-purpose finite element program primarily intended for the design and analysis of

buried culverts. Some useful features of the program include incremental construction to model

the physical process of constructing soil layers in a progressive manner, linear and nonlinear soil

models, nonlinear beam-rod elements to model yielding and cracking of structural components,

and frictional interfaces between soil and structure to simulate frictional sliding during the

loading. The CANDE program has been widely used for soil-structure analysis and evaluation

of buried box culvert designs by a number of researchers, including Chang and his coworkers, [20]

12
Katona and Vittes,[26] and Tadros and his coworkers. [27] CANDE has been upgraded several

times, with the latest version being CANDE-89[28] (available from McTrans, University of

Florida).

ABAQUS,[30] developed by Hibbit, Karsson & Sorensen, Inc., is one of the most broadly

used general-purpose commercial finite element codes. Yang and his coworkers[29] made use of

ABAQUS to model and predict loads on a double-cell concrete box culvert under a backfill of 36

feet. A non-associative Drucker-Prager elasto-plastic model with linear yield criteria was chosen

for the gravel surrounding the culvert, the backfill material, and the existing excavated slope.

The interface between the structure and the surrounding fill was represented by contact pair

surfaces, which allow sliding and loss of contact during the loading.

In order to investigate the soil-structure interaction effect on load intensity on concrete

box culverts, the following three finite element programs will be used in this study, i.e.,

ABAQUS Version 5.8,[30] ISBILD (Computer Program for Analysis of Static Stresses and

Movements in Embankment),[24] and CANDE-89 (Culvert ANalysis and DEsign Program).[28]

Analyses made in this study using these three finite element programs are based on the plane

strain geometry and the small displacement theory.

13
CHAPTER 3

BACKGROUND AND THEORY

3.1 Marston-Spangler Theory

One of the outstanding contributions of the Marston theory of loads on buried conduits is

its demonstration, by the principles of mechanics, that the load on a structure is affected by

certain environmental conditions of installation in addition to the height of fill over the structure.

The factors influencing the load are, for the most part, associated with the installation conditions

which control the magnitude and direction of settlements of the soil prism over the structure

relative to the settlements of the exterior soil prisms immediately adjacent to this central soil

prism. These relative settlements generate friction forces or shearing stresses that are added to or

subtracted from the dead weight of the central prism to produce the resultant load on the

structure, as shown in Figure 3.1. When the relative settlement of the soil prism directly above

the structure is greater than that of the adjacent soil prisms, as depicted in the trench installations

in Figure 3.1, the layers of soil in the central prism are SUbjected to a reverse arch shape

deformation and consequently the earth pressure on the structure is reduced by the amount of the

shearing forces exerted to the central soil prism. Likewise, when the relative settlement of the

soil prism directly above the structure is less than that of the adjacent soil prisms, as usually

found in embankment installations, the layers of soil in the central prism are subjected to an arch

shape deformation and the earth pressure on the structure is increased. The transfer of pressure

due to these relative movements within the soil-structure system is illustrated in Figure 3.1.

Because of the influence of these installation conditions and the importance of

recognizing them when determining loads, installations of buried structures are classified into

14
\ ,
I I
~ ----------- -I
I I
--------- 1I r- --------
I
I I
I I Direction of
I I
Relative Settlement

H-------Jl
}- - - ----- -:
I
I
I
I
I
I
I
I
I
I Direction of
Relative Settlement
i , i
Structure Structure

Embankment Installation Trench Installation

Figure 3.1: Pressure Transfer within a Soil-Structure System

two broad categories, trench installations and embankment installations. Spangler and Handy[31]

categorized buried conduits into several groups and sub-groups based on the various construction

conditions that influence loads on underground conduits. Figure 3.2 shows their classification

for underground conduits.

A ditch conduit is defined as one that is installed in a relatively narrow ditch dug in

passive or undisturbed soil and which is then covered with earth backfill. A positive projecting

conduit is one which is installed in shallow bedding with its top projecting above the surface of

the natural ground and which is then covered with an embankment. Railway and highway

culverts are frequently installed in this manner. A negative projecting conduit is installed in a

relatively narrow and shallow ditch, with its top at an elevation below the natural ground surface,

15
which is then covered with an embankment. This is a very favorable method of installing a

railway or highway culvert, since the load produced by a given height of fill is generally less

than it would be in the case of a positive projecting conduit. This negative projecting method of

construction is most effective in minimizing the load if the ditch between the top of the conduits

and the natural ground surface is backfilled with loose uncompacted soil or organic material,

such as baled hay. The imperfect ditch conduit, sometimes called the induced trench conduit, is

I UNDERGROUND CONDUITS
I
Ditch Conduits I Projecting Conduits I

Positive Projecting Negative Projecting


Conduits Conduits

I I I I I
Complete Incomplete Complete Incomplete Complete Incomplete
Ditch Ditch Projection Projection Ditch Ditch
Condition Condition Condition Condition Condition Condition

I Special Cases
I
I
Imperfect Wide Conduits on
Ditch Ditch Compressible
Conduits Conduits Beddings

Figure 3.2: Construction Conditions of Underground Conduits[31]

16
an important special case that is somewhat similar to the negative projecting conduit, but is even

more favorable from the standpoint of reduction of load on the structure. Obviously, this method

of construction should not be employed in embankments that serve as a water barrier, since the

loosely placed backfill may encourage channeling of seepage water through the embankment.

The essential elements of these four main classes of conduit are shown in Figure 3.3.

Top of embankment ;;;;,


;:mJMfJJ;m)J(liRl/J/lfh7uki/llf1fhllP1iI»IJffll!'l44;i/fUN

Natural
ground \

(a) (b)

Top of embankment· .
' ,HI)Ql)fJJ.¢IP..JfI!f/ffll!i/lll!llllhu;m(,.1;nin!f//1!i IU/J»I»mJjl),':r!lIJJUJlllhlf»»J.JII1f1?%,,;;;;;;.7»»i»>fI1lIl

Excavate and refill


with loose soil

/ I -1 j /
Natural\
grOund\\
0 \
Compacted L _ _ __ J Compacte'd

(c) (d)

Figure 3.3: Various Classes of Conduit Installations


(a) Ditch Conduit (b) Positive Projecting Conduit
(c) Negative Projecting Conduit (d) Imperfect Ditch Conduit

17
Marston[2] and Spangler[32] quantified the load on conduits installed by different

construction conditions by solving differential equations based on the equilibrium condition of a

simplified free body of prisms, and proposed equations for predicted loads on conduits due to

earth fill as follows:

W = CdY B~ for ditch conduits (3.1)

W = CcY B; for positive projecting conduits (3.2)

W = ClIy B; for imperfect ditch or negative projecting conduits (3.3)

where Cd, Ce, and Cn = load coefficients; Bd = horizontal width of ditch; and Be = width of ditch.

Although graphical diagrams are provided for the computation of coefficients, there still exist

many practical difficulties because the load coefficients proposed contain certain parameters that

cannot be determined readily, such as settlement ratio and height of plane of equal settlement.

Graphical diagrams for Cd, Ce , and Cn are presented in Figures 3.4, 3.5, and 3.6. For load

coefficients, Ce in Figure 3.5, the rays are straight lines that can be represented by equations for

use when the value of H1Be exceeds the limit of the diagram. These equations are given in Table

3.2. Symbols used in the figures are defined as follows:

H = height of fill above top of conduit,

Bd = horizontal width of ditch at top of conduit,

Be = horizontal breadth (outside) of conduit,

K = ratio of active lateral unit pressure to vertical and sides of ditch,

J.1 tan¢ = coefficient of internal friction of fill material,

J.1' = tan¢' = coefficient of friction between fill material and sides of ditch,
18
p - projection ratio, the vertical distance from natural ground surface to the top of

the structure divided by the structure height,

p' - projection ratio in negative projection or imperfect ditch installation, the depth of

the ditch divided by its width,

r sd = settlement ratio defined by

Sill

where

Sm = compression strain ofthe side columns of soil of height pBe,

Sg settlement of the natural ground surface adjacent to the conduit,

sf = settlement of the conduit into its foundation,

de = shortening of the vertical height of the conduit.

In order to use Marston-Spangler's equations, it is essential to predetermine the value of

the settlement ratio. Although the settlement ratio, rsd, is a rational quantity in the development

of the load formula, it is very difficult to predetermine the actual value that will be developed in

a specific case. Spangler and Handy[31) recommended design values of the settlement ratio based

on observations of the performance of actual culverts under embankments, as shown in Table

3.1.

3.2 Current Design Specifications

The current AASHTO Standard Specifications for Highway Bridges[6 j stipulate dead

loads and wheel loads on the culverts through earth fills in Section 6, "Culverts," and culvert

design guidelines are provided in Section 17, "Soil-Reinforced Concrete Structure Interaction

Systems." Vertical and horizontal earth pressures on culverts may be computed by recognized or

19
Table 3.1: Design Values of Settlement Ratio

Conditions Settlement Ratio

Rigid culvert on foundation of rock or unyielding soil +1.0

Rigid culvert on foundation of ordinary soil +0.5 -+0.8

Rigid culvert on foundation of material that yields with


respect to adjacent natural ground 0.0 - +0.5

Flexible culvert with poorly compacted side fills -0.4 - 0.0

Flexible culvert with well-compacted side fills -0.2 -+0.2

Table 3.2: Values of Ce in Terms of H1Be

Incomplete Projection Condition Incomplete Ditch Condition


K.u = 0.19 K.u = 0.13

rsdP Equation rsdP Equation

+0.1 Ce = 1.23 H1Be - 0.02 -0.1 Ce = 0.82 HIBe + 0.05


+0.3 Ce = 1.39 H1Be - 0.05 -0.3 Ce = 0.69 H1Be + 0.11
+0.5 Ce = 1.50 H1Be - 0.07 -0.5 Ce = 0.61 HIBe + 0.20
+0.7 Ce = 1.59 H1Be - 0.09 -0.7 Ce = 0.55 HIBe + 0.25
+1.0 Ce = 1.69 HIRe - 0.12 -1.0 Ce = 0.47 H1Be + 0.40
+2.0 Ce = 1.93 HIB e - 0.17

20


3

V.lues or cocrnci~nl Cd

Figure 3.4: Diagram for Coefficient Cd for Ditch Conduits

21
10

6
:t: i oe"
....0 Kil =0.13
OIl

~ 5
:;
>
4

2
Kil '" 0 .19

2 3 4 5 6 7 8 9 10
Values of coefficient Cc

Figure 3.5: Diagram for Coefficient Cc for Positive Projecting Conduits

22
a. I-.....:,...+-~+--H'-fl-+-I-i-

::: "," 6 1---1-- 1 - -


~
:::::l

o o
V.lues or I!ocfficicnl en

(a) (b)

10 10

~'r7Vyo~:;
,."
I
~.
I

It~I/1 ]I V
T;;:i
I J , ,.;

"¥.AVi
-: r::i
I ,
t:::::J'
.,'

;Iri'f.1Ij <Mdltl:~'-
o'
" , ..
.
..

-
i "'17'. . r

I
I

:!!'1V/ 1;<
.J 11t h

V~<ii' IOn

:!
c
'f!;V,; l/
;7
f
,t'". 0.1l jW/;V/ V i
K~ = 0. 13
l
8
WV 1/
//
I ';
"'Iol'

ttl~V ~/ /7
o
/ V-
~/ 1/ / ~I //
71 1// If //

J~ / //
j/ ~
?/
o
V 8
o V
o
Values (lr c~mdenl en Valun 01 cl)C'(fkienl en
(c) (d)

Figure 3.6: Diagrams for Coefficient en for Negative Projection Conduits and Imperfect Ditch
Conditions (a)p'= 0.5 (b)p'= 1.0 (c)p' = l.5 (d)p' = 2.0

23
approximately documented analytical techniques based on the principles of soil mechanics and

soil structure interaction, or design pressure can be calculated as being the results of an

equivalent fluid weight as follows:

Culvert in trench, or culvert untrenched on yielding foundation

A. Rigid culverts, except reinforced concrete boxes:

(1) For vertical earth pressure 120 pcf

For lateral earth pressure 30 pcf

(2) For vertical earth pressure 120 pcf

For lateral earth pressure 120 pcf

B. Reinforced concrete boxes:

(1) For vertical earth pressure 120 pcf

For lateral earth pressure 30 pcf

(2) For vertical earth pressure 120 pcf

For lateral earth pressure 60 pcf

C. Flexible Culverts

For vertical earth pressure 120 pcf

For lateral earth pressure 120 pcf

Culvert untrenched on unyieldingfoundation

A special analysis is required.

The effects of soil-structure interactions can be taken into account based on the design

earth cover, sidefill compaction, and bedding characteristics. These parameters may be

24
determined by a soil-structure interaction analysis of the system. The loads given above may be

used if they are multiplied by a soil-structure interaction factor, Fe, that accounts for the type and

conditions of installation, so that the total earth load, We, on the reinforced concrete box section,

either cast-in-place or precast, is:

(3.4)

Fe may be determined by the Marston-Spangler theory of earth loads, as follows:

Embankment Installation

(3.5)

Trench Installation

F = CdB~ (3.6)
02 HB
c

where H = backfill height;

Be = width of the structure;

Bd = horizontal width of trench installation; and

Cd = load coefficient for trench installation.

Fe/ need not be greater than 1.15 for installations with compacted fill at the sides of the

box section, and need not be greater than 1.4 for installations with uncompacted fill at the sides

of the box section. The load coefficient for trench installation, Cd, is included in Equation 3.2 as

a variable. Although the current AASHTO Equation is based on the Marston-Spangler theory,

the load coefficient, Cd, based on the Marston theory, remains the same. Load coefficients for

trench installation, Cd, provided in the graphical diagram for several soil types in AASHTO, are

identical to those of the Marston-Spangler theory as described in the previous section, Figure 3.4.

25
The maximum value of Fe2 need not exceed Fe!.

3.3 Duncan Soil Model

Kondner[14] has shown that the nonlinear stress-strain curves of both clay and sand may

be approximated by a hyperbola with a high degree of accuracy. This hyperbola can be

represented by an equation of the form:

(3.7)

where CYj, 0'3 = the maximum and minimum principal stresses, respectively; 8 = the axial strain;

and a, b = constants whose values may be determined experimentally. Both of these constants a

and b have readily discernible physical meanings. As shown in Figures 3.7 and 3.8, a is the

reciprocal of the initial tangent modulus, E;" and b is the reciprocal ofthe asymptotic value of the

stress difference which the stress-strain curve approaches at infinite strain (a/-a3)u/t. The values

of the coefficients, a and b, may be determined readily if the stress-strain data are plotted on

transformed axes, as shown Figure 3.8. When Equation 3.7 is rewritten in the following form:

&
----=a+b& (3.8)
(a, - 0'3)

it may be noted that a and b are the intercept and the slope of the reSUlting straight line,

respectively. By plotting stress-strain data in the form shown in Figure 3.8, it is straightforward

to determine the values of the parameters, a and b, corresponding to the best fit between a

hyperbola and the test data. It is commonly found that the asymptotic value of (0'/-0'3) is larger

than the compressive strength of the soil by a small amount, because the hyperbola remains

below the asymptotic at all finite values of strain. The asymptotic value may be related to the

compressive strength, however, by means of a factor Rf

(3.9)

26
Axial Strain - E

Figure 3.7: Hyperbolic Stress-Strain Curve

~
?
6
~
I
4)
g
4)
....
~
i:S
'"'"
4)
l:I
CI)
I:
'g
CI)
C;

~ a

Axial Strain - E

Figure 3.8: Transformed Hyperbolic Stress-Strain Curve

27
where (0)-0'3)/= the compressive strength, or stress difference at failure; (O'j-0'3)ult= the

asymptotic value of stress difference; and Rf= the failure ratio, which always has a value less

than unity. For a number of different soils, the value of Rf has been found to be between 0.75

and 1.00, and is essentially independent of confining pressure. By expressing the parameters a

and b in terms of the initial tangent modulus value and the compressive strength, Equation 3.7

may be rewritten as

(3.10)

This hyperbolic representation of stress-strain curves has been found to be fairly useful in

representing the nonlinearity of soil stress-strain behavior. Except in the case of unconsolidated-

undrained tests on saturated soils, both the tangent modulus value and the compressive strength

of soils have been found to vary with the confining pressure employed in the tests. Experimental

studies by Janbu[15] have shown that the relationship between tangent modulus and confining

pressure may be expressed as

(3.11 )

where E; = the initial tangent modulus; 0'3 = the minimum principal stress; pa = atmospheric

pressure expressed in the same pressure units as E; and 0'3; K = a modulus number; and n = the

exponent determining the rate of variation of E; with 0'3.

If it is assumed that failure will occur with no change in the value of 0'3, the relationship

between compressive strength and confining pressure may be expressed conveniently in terms of

the Mohr-Coulomb failure criterion as

28
2ccos¢ + 2aJ sin¢
(a l -a3 ) f
.
= l-sin¢
(3.12)

where c, ¢ = the Mohr-Coulomb strength parameters. Equations 3.11 and 3.12, in combination

with Equation 3.4, provide a means of relating stress to strain and confining pressure using the

five parameters K, n, c, ¢, and Rj. Nonlinear, stress-dependent stress-strain behavior may be

approximated in finite element analyses by assigning different modulus values to each of the

elements into which the soil is subdivided for purposes of analysis. The modulus value assigned

to each element is selected on the basis of the stresses or strains in each element. Because the

modulus values depend on the stresses, and the stresses in tum depend on the modulus values, it

is necessary to make repeated analyses to ensure that the modulus values and stress conditions

correspond for each element in the system.

The stress-strain relationship expressed by Equation 3.10 may be employed in

incremental stress analyses because it is possible to determine the value of the tangent modulus

corresponding to any point on the stress-strain curve. If the value of the minimum principal

stress is constant, the tangent modulus, E(, may be expressed as:

(3.13)

If Equation 3.13 is then differentiated, and the strain, 8, derived from Equation 3.10, the

initial tangent modulus, E;, in Equation 3.10 and the compressive strength, (a1-a3)!, in Equation

3.12 are substituted into the result of the differentiation, the following expression is obtained for

the tangent modulus:

(3.14)

29
For the hyperbolic stress-strain relationships, the same value for the unloading-reloading

modulus, Eur, is used for both unloading and reloading. The value of Eur is related to the

confining pressure by an equation of the same form as Equation 3.11 :

(3.15)

where Kur is the unloading-reloading modulus number. The value of Kur is always larger than the

value of K (for primary loading). Kur may be 20% greater than K for stiff soils such as dense

sands. For soft soils such as loose sands, K ltr may be three times as large as K. The value of the

exponent n is always very similar for primary loading and unloading, and in the hyperbolic

relationships it is assumed to be the same.

The value of the tangent Poisson's ratio may be determined by analyzing the volume

changes that occur during a triaxial test. For this purpose it is convenient to calculate the radial

strains during the test using the equation

(3.16)

where 6v and 8a are the volumetric and axial strains. Taking compressive strains as positive, the

value of 8a is positive and the value of 8r is negative. The value of 8 v may be either positive or

negative. If the variation of 8 a versus 8r is plotted, as shown in Figure 3.9, the resulting curve

can usually be reasonably accurately represented by a hyperbolic equation of the form:

-8
8 = r (3.17)
a VI - d8,

As shown in Figures 3.9 and 3.10, this equation may be transformed as follows:

(3.18)

30

",
Figure 3.9: Hyperbolic Axial Strain-Radial Strain Curve

Vi

- Er

Figure 3.10: Transformed Hyperbolic Axial Strain-Radial Strain Curve

31
In Equation 3.18, Vi is the initial Poisson's ratio at zero strain and d is a parameter representing

the change in the value of Poisson's ratio with radial strain. For saturated soils under undrained

conditions, there is no volume change and Vi is equal to one half for any value of confining

pressure. This variation of Vi with respect to 0"3 may be expressed by the equation

(3.19)

where G is the value of Vi at a confining pressure of one atmosphere, and F is the reduction in Vi

for a ten-fold increase in 0"3. After differentiating Equation 3.17 with respect to 6" substituting

Equation 3.19, and eliminating the strain using Equations 3.8 to 3.11, the tangent value of

Poisson's ratio may be expressed in terms of the stresses as follows:

(3.20)

where O"j, (J'3 = maximum and minimum principal stresses, respectively; K = modulus number; n

= modulus exponent; c = cohesion intercept; ¢ = friction angle; G, F, d = Poisson's ratio

parameters; Pa = atmospheric pressure. There are nine parameters involved in the hyperbolic

stress-strain and volume change relationships, and the roles of these parameters are summarized

in Table 3.3.

Nonlinear volume change can also be accounted for by employing the constant bulk

modulus instead of Poisson's ratio parameters. The assumption that the bulk modulus of the soil

is independent of stress level (0"1-0)) and that it varies with confining pressure provides

reasonable approximation to the shape of the volume change curves. According to the theory of

32
Table 3.3: Summary of the Hyperbolic Parameters

Parameter Name Function

K, Kur Modulus number


Relate Ei and Eur to a3
n Modulus exponent

c Cohesion intercept
Relate (a/-a3) to a3
¢ Friction angle

Rj Failure ratio Relate (a/-a3)ult to (a/-a3}j

G Poisson's ratio parameter Value of Vi at (j3=Pa

F Poisson's ratio parameter Decrease in Vi for ten-fold increase in (j3

d Poisson's ratio parameter Rate of increase of lit with strain

elasticity, the value of the bulk modulus is defined by

B = L1al + L1a2 + L1aJ (3 .21)


3E"

where B is the bulk modulus, L1a/ . .10'2, and L1a3 are the changes in the values ofthe principal

stress, and L1Ey is the corresponding change in volumetric strain. For a conventional triaxial test,

in which the deviator stress (0'/;'0'3) increases while the confining pressure is held constant,

Equation 3.21 may be expressed as;

(3.22)

The value of bulk modulus for a conventional triaxial compression test may be calculated using

the value of (a/-0'3) corresponding to any point on the stress-strain curve. When values of Bare

33
calculated from tests on the same soil specimen at various confining pressures, the bulk modulus

will usually be found to increase with increasing confining pressure. The variation of B with

confining pressure can be approximated by an equation of the form:

(3.23)

where Kb is the bulk modulus number and m is the bulk modulus exponent, both of which are

dimensionless. Pa is atmospheric pressure. Experimental study of this soil model, sometimes

called the modified Duncan model, has resulted in, for most soils, values of m varying between

0.0 and 1.0. Ifa bulk modulus is known, the tangent Poisson's ratio can be determined from the

basic theory of elasticity by the following equation:

1 E,
v
,
=---
2 6B
(3.24)

Some parameters for this Duncan model are listed in Tables 3.4 and 3.5 from drained and

undrained conditions, respectively. These tables have been reproduced from Duncan and his

coworkers[33] and Wong and DuncanYO]

Although the hyperbolic relationship outlined previously has proven to be quite useful for

a wide variety of practical problems, it has some significant limitations:[33] 1) Being based .on

the generalized Hooke's law, the relationships are most suitable for analysis of stresses and

movements prior to failure. The relationships are capable of predicting accurately nonlinear

relationships between loads and movements, and it is possible to continue the analyses up to the

stage where there is local failure in some elements. However, when a stage is reached where the

behavior of the soil mass is controlled to a large extent by properties assigned to elements which

have already failed, the results will no longer be reliable, and they may be unrealistic in terms of

the behavior of real soils at and after failure. 2) The hyperbolic relationships do not include

34
volume changes due to changes in shear stress, or shear dilatancy. They may, therefore, be

limited in the accuracy with which they can be used to predict deformations in dilatant soils,

such as dense sands under low confining pressures. The values of tangent Poisson's ratio

calculated using Equation 3.13 may exceed 0.5 for some combinations of parameter values and

stress values, so it needs to be specified to be less than 0.5 in the computer program. 3) The

parameters are not fundamental soil properties, but only values of empirical coefficients that

represent the behavior of the soil under a limited range of conditions. The values of the

parameters depend on the density of the soil, its water content, the range of pressures used in

testing, and the drain conditions. In order that the parameters will be representative of the

behavior of the soil under field conditions, the laboratory test conditions must correspond to the

field conditions with regard to these factors.

3.4 Tangent Stiffness for Interface Shear Behavior[34]

The nonlinear stress dependent interface behavior may be represented by means of

equations similar to those for Duncan's hyperbolic stress-strain relationships of soils. The

nonlinear stress-displacement curves may be approximated by a hyperbola having an equation of

the form:

r=
Lt,.
(3.25)
a+ b4

where r= interface shear stress; Lis = interface displacement; and a and b :: empirical coefficients

whose values are determined experimentally. The values of these coefficients may be

determined most readily if the stress-displacement data are transformed to another set of axes, on

which the hyperbola plot as straight lines. By transposing Equation 3.25, the following

relationship may be obtained:

35
Table 3.4: Stress-Strain and Strength Parameters for Soils under Drained Conditions
Compaction
Max. DIY DI)' C
Soil Group Soil Description Opt. +0(1'.+) K n Rr G F d K" m
Type UnitWt U.WI. W/C (TSF)
W/C
(PCF) (PCF)

GW GW-l Conglomerate Roc kfill (Netzahu. Dam) • DO 50 (10) 540 .43 . 64 135 .34
GW 118.9
GW-2 Granitic Gneiss Roc kfill (Mica Dam) .00 44 ( 9) 210 . 51 .64 . 25 . 09 4. 5 100 . 34
123 . 1
GW GW-3 Quartzite Rockfill (furnas Dam Shell) . 00 49 ( 6) 560 .48 . 65 . 33 . 10 6.4 330 .33
GW GW-4 Quartzite Rock!ill (Furnas Dam Transit.) . 00 53 ( 7) 950 .52 . 59 .21 - . 01 13.7 470 .52
GW GW-5 Furnas Dam Transition . 00 SO l 1) 690 .51 . 51 .38 . 11 11.2 360 .51
GW GW- 6 Pinzandapan Gravel 132.1 . 00 51 l 9) 690 .45 . 59 .14 . 10 27 . 3 170 .2 2
GW GW-l Diorite Rockfill (E1 Infiernillo Dam) 105.1 .00 46 ( 9) 340 . 28 .11 . 18 . 04 7. 4 52 .18
GP GP-2 Sandy Gravel (Mica Dam Shell) .00 41 ( 3) 420 . 50 .18 . 22 . 06 4. 7 125 .4 6
GP GP-3 Basalt Rockfill 133.8 . 00 52 (10) 450 . 37 . 61 .34 . 16 1. 8 255 . 18
GP GP-6 Silty Sandy Gravel (Oroville Dam) 148. 0 .00 53 ( 8) 1300 . ~O .72 . 33 . 07 7.1 900 .22
GP GP-7 Amphibolite Gravel (Oroville Dam Shell) 152 .0 .00 51 ( 6) 1780 . 39 .67 . 40 .lS 15.5 1300 .16
GP GP- ll Crushed Basaltic Rock (Round Butte Dam) 91. 6 99 .0 3.2 . 00 51 (14) 410 .2 1 .71 . 59 . 46 2.7 195 0
GP GP-13 Sandy Gravel (Rowa11an Dam) 135 . 0 . 00 58 (10) 2500 .21 .75 . 35 . 17 14 .6 1400 0
GC GC-1 Clayey Gravel (New Hogan Dam Core) 101 . 0 .28 19 ( -) 99 . 70 .86 . 29 .2 5 4.2 45 0
113 . 0 10.8 10.8
SW SW- 1 Argillite Rockfill (Pyramid Dam Shell) 111.6 . 00 53 ( 9) 1600 . OB .72 . 33 . 14 5.5 600 0
SW 51'1 - 2 Crushed Olivine Bas alt 125 . 4 . 00 55 (10) 1000 . 22 . 70 .31 . 13 5. 6 390 . 14'
W SW Silty Sand, Some Gra vel (Round Butte Dam) 16,450 120.0 13.2 108 . 7 13 . 5 .00 38 ( 3) 260 . 50 .76
SW-3 . 35 .11 3.0 100 .5
0'1
SW SW-5 Vanato Sandstone (0 . 5 in. max. size) 118.3 117 .5 . 00 43( 4) 330 . 46 . 51 . 20 .07 6.9 110 .46
SP SP-3 Glacial Cutwash Sand 112. 3 .00 44 ( ~) 190 .70 . 51 .37 . 16 4.8 190 .35
SP SP-4A Sacramento River Sand 89.5 .0 0 35 ( 2) 430 . 27 . 84 . 42 . 21 2.9 230 .02
SP SP-4B Sacramento River Sand 94 .0 .0 0 37 ( 2 ) 410 .69 . 90 .35 . 17 5.9 260 .15
SP SP-4C Sacramento River Sand 97 . B .0 0 41 ( 5 ) 1100 .36 . 85 . 46 . 22 8.9 900 a
SP SP- 4D Sacramento River Sand 103 .9 .00 45 ( 7 ) 1200 .48 .85 .50 .23 11.7 1500 0

SP SP-5A Ham River Sand .00 31 ( 1. ) 890 .26 . 78


. 35 .10 2.4 360 .11
SP SP-5B Ham River Sand
13.0 .00 47 ( 9 ) 1100 .57 . 8&
95.5 .69 .29 7.1 2250 0
SP SP-1A Poorly Graded Sand (Port Allen Lock) 100.0 . 00 39( 0 ) 41 0 .65 . 84

SP SP-7B Poorly Graded Sand (Port Allen Lock) 100 . 0 .00 40 ( 1) 400 .49 . 71
100. 0 13.0
SP SP-7C Poorly Graded Sand (Port Allen Lock) 105 . 1 .00 44 ( 3) 750 .71 . 83
100. 0 13.0
SP SP- 12 Coarse to Fine Sand (Round Butte Dam) 74. B . 00 39( 6) 280 .37 . 11 . 20 .12 7.1 95 . 21

SP SP-13 Pumicecus Sand (Round Butte Dam) . 00 48 (10) 340 .45 .70 .33 .21 6.1 230 . 06
87 . 4 84.2 18 . 0
SP SP-14 Pumicecus Sand (Round Butte Dam) . 00 49 (12) 650 . 36 . 71 . 28 . 01 6. 9 380 .05
80.7 76.9 25 . 0
SP SP-16A Fine Silica Sand (Loose) . 00 30 ( 0) 280 .65 .93 .35 .07 3.5 110 .65

,SP SP-16B Fine Silica Sand (Dense) . 00 31 ( 0) 1400 .74 .90 .32 - . 05 28.2 1080 .15
ISp SP-l7A Monterey No. 0 Sand (Cylind. Specimen) . 00 35 ( 0) 920 .79 .96 .37 .12 10.5 465 .32
'SP SP-l7B Monterey No. 0 Sand (Cubical. Specimen) . 00 39 1 0) 510 .51 .91 .40 .09 8 . 0 370 . 22
SP SP-17C Monterey No. 0 Sand (Cylind. Specimen) . 00 45( 3 ) 3200 .78 . 92 .34 . 12 75.9 1400 .4 S
SP SP-l7D Monterey No. 0 Sand (Cubical. Specimen) .00 47 ( 5) 1500 .76 . 91 .48 .30 13.5 1100 .52
SP ~P-18 Basaltic Sand (Round Butte Dam) 120.1 9.5 120.0 9.5 .00 39(13) 1600 . 08 .63 .34 . 16 12 . 3 150 0
- -- -
Table 3.4 (continued)
Compaction
Max. Dry Dry C
Soil Group Soil Descriprion Opt. (TSf)
,.(A.) K n Rr G F d K" m
Type VnitWt. V.Wt. W/C
W/C
(PCf) (PCf)

SM SM-4 Silty Sand (Chatfield Dam) Std.AASHO 123.0 9.5 116 . 7 9.4 .00 37 ( 0 ) 100 1.07 .62
SM SM-S Silty Gravelly Sand (Chatfield Dam) Std.AASHO 132 .0 8.1 124. 5 1 .53 .00 41( 0) 530 .51 . 62
16,450 640 0
SM SM-6 Silty Sand w/Pebbles (Round Butte Dam) 110.6 17 .5 108 . 1 11.5 .00 46 ( 81 100 .35 .15 . 41 .18 6.0

SM SM-9 Silty Sand w/Pumice (Round Butte Dam) 16,450 91.1 19 . 5 88 .4 19.0 .00 O( 8) 610 .25 .12 . 39 .17 6.1 500 0
SM SM-13 Silty Sand (Round Butte Dam) 105.6 16.4 104. 5 15 . .00 36( 5) 530 .28 .14 .38 .11 3.9 410 0
SM SM-16 Silty Sand • Gravel (Round Butte Dam) 109 .3 12.9 109. 12. . 00 36(11) 800 .20 .61 .39 . 10 4.1 600 0
SM-SC SM-SC-1A Silty Clayey Sand (Mica Dam Core) Std.AASHTO 136.0 9.8 131.1 1.1 . 31 33 ( - ) 700 . 31 . 80 .25 .02 5.5 280 .19
SM-SC SM-SC-1B Silty Clayey Sand (Mica Dam Core) Std.AASHTO 136.0 9 .8 134.0 9.7 . 85 34 ( - ) 425 .58 .10 .21 . 05 1.9 205 .44
SM-SC SM-SC-1C Silty Clayey Sand (Mica Dam Core) Std . AASHTO 136.0 9.8 128.2 11.9 . 40 45 [ - ) 160 .81 .63 . 26 .04 6.2 65 . 81
ML ML-1 Cannonsville Silt (Undisturbed) 108 . 0 . 00 45 ( 6) 200 1.01 . 51 .33 . 02 1.3 200 .8 9
ML ML-4 Sandy Silty w/Pumice (Round Butte Dam) 16,450 97.0 19.0 92 . 8 11.7 .00 42 ( 7) 500 .45 . 82 .41 . 39 6.9 400 0
i'lL ML-5 Sandy Silty w/Pumice (Round Butte Dam) 16,450 102 .5 16 . 5 99 . 2 17 . 0 . 00 36( 1) 530 .35 .11 .39 . 03 3.2 520 . 23
L CL-29C silty Clay (Canyon Dam) Harvard 116 .2 15.2 111.2 13 . 1 . 17 30 ( -) 550 -.05 .82
L CL-29D silty Clay (Canyon Dam) Harvard 116 .2 15.2 116 . 2 13. 3 .5!:! 29 ( -) 690 .10 . 11

CL CL-30E Silty Clay (Canyon Dam) Harvard 112.8 16.7 115 . 1 15 . 2 .51 33( -J 150 .62 . 61 . 58 . 33 2.3 360 0
CL CL-30F Silty Clay (Canyon Dam) Harvard 112 .8 16.7 110 . 0 17 . 4 .39 30 ( - ) 160 .50 .63 . 41 .14 2.5 210 0
w CL CL-34E Silty Clay (Canyon Dam) Harvard 105. 6 19.8 106 . 3 19 .0 .26 31 ( - ) 130 .59 . 12 45 . 59
-.) - -- - - -
Table 3.5: Stress-Strain and Strength Parameters for Soils under Unconsolidated-Undrained Conditions
Compaction
Soil Group Soil Description C
Max. Dry Dry (TSF) ~.(6+> K n Rr G F d K. m
Type UnitWt.
Opt U.Wt W/C
W/C
(PCF) (PCF)

GC GC-2A Sandy Gravel (Oroville Dam Core) Std.AASHO 138.6 8.1 139 . 0 8.1 1. 50 24 540 .51 .84
GC GC-2B Sandy Gravel (Oroville Dam Core) Std.AASHO 138.6 8.1 139.0 B. l 10.01 3 190 .95 .97
SP SP-8D Poorly Graded Sand (Rodman Dam) Mod.AASHO 109.5 11.8 104.0 11.8 .00 37( 4) 590 1.10 .89
SP SP-8E Poorly Graded Sand (Rodman Dam) Mod.AASHO 109.5 11.8 98.6 11 . 8 . 00 37 ( 8) 770 - .14 .87
SP SP-8F Poorly Graded Sand (Rodman Dam) Mod.AASHO 109 ·5 l1.B 110 .0 11. 2 . 00 O( 9) 940 .00 .B2
SP SP-9D Poorly Graded Silly Sand (Rodman Dam) Mod.AASHO 101. 1 13.6 101.3 13 . 6 .00 44 ( 6) 420 .61 .16
SP SP-9E Poorly Graded Silly Sand (Rodman Dam) Mod . AASHO 101. 1 13.6 96.2 13.3 .00 44 (11) 850 .19 .92
SP SP-9F Poorly Graded Silly Sand (Rodman Dam) Mod.AASHO 101. 1 13.6 92.0 12.4 .00 40 ( B) 410 .51 .86
SM 5M-1 Gravelly Silty Sand(Ball Mountain Dam) Std.AASHO 122 . 9 10.0 124.0 9.4 . 00 42( 5) 00 .3B .51
SM SM-3A Silty Sand (Somerville Dam) Std.AASHO 109.1 13.4 109 .3 13 . 4 . 00 40( 2) 350 .91 .69
51'1 SM-3B Silty Sand (Somerville Dam) Std.AASHO 109.1 13.4 104.1 13.2 .00 40 ( 6) 420 .84 . 75
SM SM-3C Silty Sand (Somerville Dam) Std.AASHO 109.1 13.4 103 . 6 16 . 7 . 00 39( 4) 340 .64 . 12

SM-SC SM-SC-2 Silty Clayey Sand (Hopkinton Dam) Std.AASHO 129.2 9 .2 131.0 8. 8 . 98 31 320 .35 . B6
SC SC-2 Clayey Sand (Thomaston Dam) Std.AASHO 123.3 12 .0 122.0 12.0 .92 18 39 . 61 . 55
SC SC-3 Clayey Sand (New Don Pedro Dam Core) 20,000 125.8 9 .B 123.2 9. 6 2.60 26 3900 - .OB . 93 . 71 .39 2.5 12000 - . 99
w SC SC-S Clayey Gravelly Sand (Proctor Dam) Std.AASHO 120.1 U .2 126.0 B.3 1. 80 ~ 510 .37 .63 . 78 .03 13.3 250 .00
00 SC-6A Clayey Sand (Chatfield Dam) Std.AASHO 122.0 U.7 116.2 14.7 1. 30 0 52 .00 . 76
SC
SC SC-7B Clayey Sand (Chatfield Dam) Std.AASHO 115.0 15 .0 110.0 17.0 1.10 0 250 .00 . 97

i'lL ML-2A Sandy Silt (Chatfield Dam) Std.AASHO 115 . 0 12.8 10B.7 15.6 1 .80 19 200 . 59 .86
/'IL ML-2B Sandy Silt (Chatfield Dam) Std.AASHO 115.0 12 . 8 109.3 12.7 . 39 30 27 1.43 .72
ML ML-3A Sandy Silt (Birch Dam Shell) Std.AASHO 10B.8 13.6 104.0 11.6 . 42 31 240 . 31 . 83

ML ML-38 Sandy Silt (Birch Dam Shell) Std.AASHO 108 .8 13 .6 104.0 13 . 6 .19 31 270 .3B .B2
ML ML-3C Sandy Silt (Birch Dam Shell) Std.AASHO 10B. 8 n .6 104.0 16.6 .54 27 100 • B4 . 77
CL CL-IA Silty Clay (Arkabutla Dam) Std.AASHO 110. 0 18.0 108.7 16. 7 . 53 29 260 .60 . 87

CL CL-IB Silty Clay (Arkabutla Dam) Std.AASHO 110.0 16 . 0 107. 0 19.5 1.20 14 39 .48 . 58
CL CL-2A Lean Clay (Monroe Dam) Std.AASHO 110.5 l6 . 4 107 . 1 19 . 1 .95 0 66 .00 . 75
CL CL-2B Lean Clay (Monroe Dam) Std.AASHO 110.5 16 .4 104 . 0 21.2 .42 0 10 .03 . 52

CL CL-3 Lean Clay (Monroe Dam) Std.AASHO 106.B 18 .0 102.0 21. 7 1. 00 0 36 . 00 .57
CL CL-SA Pittsburg Silty Clay Mod.AASHO 118.9 13 . 5 105.4 11 . 5 . 92 31 650 - .68 . 90 . 29 .20 2.B 190 - . B1
CL CL-5B Pittsburg Silty Clay Mod.AASHO 11B.9 13.5 109.1 14 . 3 1. 50 17 760 - . 14 .93 . 31 .09 3.1 240 - .21

CL CL-SC Pittsburg Silty Clay Mod.AASHO 11B.9 13 . 5 109.0 16.8 1.30 6 00 .10 .93 . 2B .06 5 . 8 115 . 10
CL CL-SE Pittsburg Silty Clay Mod.AASHO 118.9 U .S 112.7 11.5 1.80 24 2400 - . 74 .92 .30 .14 6 . 2 740 - . 96
CL CL-5F Pittsburg Silty Clay Mod.AASHO 118.9 13. 5 114.7 14 .5 1.90 13 2000 - .30 . 97 .25 .16 10.1 460 - . 64

CL CL-5H Pittsburg Silty Clay Mod.AASHO 11 8. 9 13 .5 10B.8 8.7 1.50 32 8900 -1.10 .97 . 22 .07 19.7 1900 -1.10
CL CL-SI Pittsburg Silty Clay Mod.AASHO 118.9 13 .5 119.3 11.7 3.30 18 5000 - .28 .95 . 28 .02 12.4 1400 - .33
CL CL-6A Sandy Clay (Birch Dam Core) Std.AASHO 11 0 . 3 14 .5 105.0 12.5 . 64 29 320 - .21 .80

CL CL-6B Sandy Clay (Birch Dam Core) Std.AASHO 110.3 14 .5 105.0 14 . 5 . 50 29 190 . 02 .81
CL CL-7A Sandy Clay (Somerville Dam) Std . AASHO 107.5 17.2 107.9 17 .2 1. 00 2 14 . 23 . 87 I
CL CL-7B Sandy Clay (Somerville Dam) Std.AASHO 107.5 17.2 107 . 2 17 .0 1.00 1 6B - . 05 . B4
I
Table 3.5 (continued)
Compaction
e
Soil Group Soil Descriprion Max. Dry Dry .o(t.+> K D IV G F d K" In
Opt. (TSF)
Type VnitWt.
W/C
V.Wt. w/e I

(peF) (peF) I

CL CL- I0B Sandy Clay [Somerville Darn) Std . AASHO 110.7 15.0 106.5 15.0 . 55 22 290 .27 . 91 I
CL CL-11A Sandy Clay (Somervill e Dam) Std . AASHO 107 . 5 16 . 8 100 . 3 13 . .5 . 78 28 680 - .36 . 84
CL CL- 11B Sandy Clay (Somerville Darn) Std.AASHO 107 . 5 16 . 8 106 . 5 13.3 1. 50 25 600 .18 . 68 I

CL CL-11C Sandy Clay (Somerville Dam) Std . AASHO 107.5 16 . 8 102.6 19 . 3 .74 II 23 .32 . 61 I
CL CL-llD Sandy Clay (Somerville Darn) Std.AASHO 107.5 16 . 8 106.7 16.1 . 91 18 280 .60 . 93
CL CL-11E Sandy Clay [Somerville Dam) Std.AASHO 107.5 16 . 8 101. 5 16 . 3 . 66 20 220 .23 .90

CL CL-12A Sandy Clay (Somerville Darn) Std.AASHO 106.1 17 . 2 105 .0 18 . 6 1. 30 8 140 .20 . 84
CL CL-12C Sandy Clay (Somerville Dam) Std.AASHO 106.1 17.2 101. 9 17 . 1 1.00 13 120 .09 . 83
CL CL-12D Sandy Clay (Somerville Darn) Std.AASHO 106 . 1 17 . 2 103 . 0 19 .7 .80 2 47 .33 . 82
CL CL-12E Sandy Clay (Somerville Dam) Std.AASHO 106.1 17.2 106.5 13 . 9 1. 50 24 950 - .15 . 90
CL CL-12F Sandy Clay (Somerville Darn) Std.AASHO 106.1 17 .2 108.3 16.9 1.50 8 470 .00 .95
CL CL-13A Sandy Clay (Somerville Dam) Std.AASHO 104.9 17 . 6 98 . 7 20 . 8 .67 4 75 .44 . B8

CL CL-13B Sandy Clay [Somerville Dam) Std.AASHO 104 . 9 17.6 104. 9 14 .B 1. BD 23 840 - .19 . B4
CL CL-13C Sandy Clay (Somerville Dam) Std.AASHO 104.9 17.6 101. 2 17 .4 1 . 20 12 270 .06 . B7
CL CL-13D Sandy Clay [Somerville Darn) Std.AASHO 104 . 9 17.6 100 . 5 14. 2 1. 40 29 1100 - .36 . B3
w
\0 CL CL-13E Sandy Clay (Somerville Dam) Std.AASHO 104 . 9 17.6 104 . 4 17 . 5 1. 40 13 410 .15 . 87
CL CL- 14 Lean Clay (Clinton Darn) Std.AASHO 103.0 21.2 98.0 24 . 0 .77 2 57 .43 . 86
CL CL-16C Lean Clay (Clinton Dam] Std.AASHO 105 . 0 20.2 99.7 22.9 . 97 1 110 .43 .90
CL {;L-174 Lean Clay [Clinton Dam) Std.AASHO 101 . 0 20 . 1 99 . 1 22 .7 1.10 2 100 .27 . 89
CL CL-17B Lean Clay [Clinton Dam) Std.AASHO 101. 0 20.1 98 . 1 23 . 9 . 99 1 160 .54 . 97
CL CL-17C Lean Clay [Clinton Dam) Std.AASHO 101.0 20.1 98.9 22.7 1.10 3 130 .46 . 91
CL CL-19A Lean Clay [Clinton Dam) Std.AASHO 102 . 0 19.9 96 . 8 22 .1 .18 2 53 . 41 . 85
CL CL-24A Sandy Clay [Chatfield Darn) Std.AASHO 104 . 0 19.3 97.6 23.4 1. 2.0 0 240 .00 . 95
CL CL-25A Sandy Clay [Chatfield Dam) Std.AASHO 113.0 15 . 1 107 . 4 18 . 1 . 95 0 160 . 00 .93

CL CL-28 Sandy Clay [Proctor Darn) Std.AASHO 115 . 0 14 . 6 114 . 8 12 .2 1. 60 12 150 .16 . 79
CL CL-29A Silty Clay [Canyon Dam) Harvard 116.2 15.2 110 . 9 13. 0 2 . 00 20 440 .17 . 85
CL CL- 29B Silty Clay [Canyon Dam) Harvard 116.2 15.2 115.8 13 . 1 2. 50 20 440 .34 .86

CL CL-30A Silty Clay (Canyon Dam) Harvard 112 . 8 16.7 111. 0 16 .'2 1.00 16 110 .94 . 91
CL CL-30B Silty Clay (Canyon Dam) Harvard 112 .8 16.7 112 .2 16 . 6 1. 40 11 67 .71 . 77
CL CL-30D Silty Clay (Canyon Dam) Harvard 112 .8 16.7 110.3 11 .3 1.00 9 37 . 37 . 65

CL CL- 338 Silty Clay (canyon Dam) Harvard 106 . 8 18 . 0 106 . 3 16 .2 2.20 3 71 1.06 . 98
CH CH-l Fat Clay (Clinton Darn) Std . AASHO 94.0 26 . 5 90 . 0 28 . 8 .61 4 92 . 21 . 89
CH CH- 3A Fat Clay (Montoe Dam) Std.AASHO 95 . 5 26.5 89.3 31.1 .37 0 21 . 00 . 65

CH CH-3B Fat Clay (Montoe Dam) Std.AASHO 95.5 26.5 92.6 28 .6 .51 1 67 .02 . 79
CH CH- 4 Fat Clay [Montoe Dam) Std.AASHO 100 . 0 22 . 7 96.4 26 . 5 . 63 1 65 . 14 .77
CH CH-5A Fat Clay [Chatfield Dam) Std.AASHO 95.0 24 . ~ 90.3 27 . ~ 1. 20 0 36 . 72 . 91
CH CH-5B Fat Clay [Chatfield Dam) Std.AASHO -
95.0 24.4 90.7 24.4
-
1.~ 2 52 . 66 . 89 -
~,' = a+bLi ,I'
(3.26)
T

If values of LilT are plotted against values of Lis, the resulting variation will be a straight line

while the shear stress varies hyperbolically with respect to displacement. It may be readily seen

that coefficient a is the intercept, and coefficient b is the slope of the straight line on the

transformed plot. The reciprocal of coefficient a is the initial slope of the shear stress-

displacement curve, and is analogous to the initial tangent modulus of a stress-strain curve. This

quantity, called the initial shear stiffness, K si , has units of force per cubic length, or pounds per

cubic inch. The reciprocal of coefficient b is the asymptote approached by the shear stress-

displacement curve at very large values of displacement. This asymptotic shear stress, Tull> is

larger than the peak value of shear stress or strength of the interface, 'rj. It has been found to be

convenient to express Tull in terms of 'rj by means of a failure ratio, Rj, as follows:

(3.27)

The values of Rjare found to range from 0.82 to 0.95. The initial shear stiffness, K si , and the

shear strength of the interface depend on the value of normal stress on the interface. The

variation of initial shear stiffness with normal stress may be expressed using an equation of the

general form suggested by Janbu:[l5]

(3.28)

where KJ = dimensionless stiffness number; n = stiffness exponent; }'1v = unit weight of water

expressed in the same units as Ks;; and pa = atmospheric pressure expressed in the same units as

the normal stress ern. Clough and Duncan[34] showed in their experimental research that the

stiffness number has a value of 75,000 and the stiffness exponent has a value of 1.0. The shear

40

, ,~
strength of the interface is proportional to normal stress, and the strength characteristics of the

interface may be expressed in terms of the angle of wall friction, 8, as follows:

(3.29)

Substituting Equations 3.28, and 29 into Equation 3.26, the variation of shear stress with respect

to displacement may be expressed in terms of the parameters K/, n, Rj, and 8 as follows:

r Ll"
= ------"----- (3.30)
1 RILl."
- -- -- + --"---
al/)" a'l tan 0
KJyw -
Po
(
Using Equation 3.30, variations of shear stress with displacement may be calculated for any

value of normal stress in the range of values employed in the tests. Thus, the nonlinear, stress-

dependent behavior of the interface may be expressed in terms of the four parameters K/, n, Rj,

and 8, whose values may be readily determined from a series of interface shear tests.

A way of performing approximate nonlinear analyses of soil behavior is to perform

incremental analyses, changing the soil property values as appropriate for each stage of the

analysis. Tangent stiffness values, representing the slope of a tangent to the shear stress-

displacement curve, may be readily employed in such analysis. Differentiating Equation 3.30

with respect to Lls, and eliminating Lls from the resulting equation, the tangent stiffness value may

be expressed as:

K = or = K a" " ( 1 _ R/f )2 (3.31)


,,' aLl" IY W ( Pa ) all tan 0

The tangent stiffness values are calculated using Equation 3.31 and used for the spring constants

in interface modeling in the next chapter.

41
CHAPTER 4

SOIL-STRUCTURE MODELING

4.1 Finite Element Model

ABAQUS Version 5.8,[30] a general-purpose commercial finite element code, and

ISBILD,[24] a computer program for analysis of static stresses and movements in embankments,

were used to investigate the pressure intensity for the concrete box culverts under high backfill

based on the soil-structure interaction. CANDE-89[28] (Culvert ANalysis and DEsign Program,

available from McTrans, Univ. ofFL) was also run for verification/comparison. In both

ABAQUS and ISBILD codes, the small displacement theory is assumed, and the incremental

layered construction scheme is incorporated. The ISBILD code incorporates nonlinear

incremental finite element method employing the hyperbolic stress-strain relationship and

incremental analysis procedures based on plane strain elements. Plane strain linear elastic

elements are used in ABAQUS. For constant material properties of ABAQUS input, tangent

Young's modulus and tangential Poisson's ratio are evaluated for each construction layer using

Equations 3.14 and 3.20 given in Chapter 3 by assuming that soil layers are in principal states

without any live loads, i.e., for constant material property values of the lh incremental soil
layer's element group, the following principal stresses are assumed:

O'ii) = ri(Hi 12) + L" rjH j and O'~I) = KO'ii) (4.1)


,i=i+J

where Hi, Yi = depth and density of ith soil layer (numbering from the bottom to the top of the

backfill or original ground). These values are substituted for the principal stresses in Equations

3.14 and 3.20 for the evaluation of tangent Young's modulus and tangential Poisson's ratio. The

coefficient of lateral pressure, K, is 0.5. Adding each element group to previously existing

42
element groups for incremental procedures can be performed by using the "element remove and

reactivation" option of ABAQUS.

Taking advantage of the symmetry of the concrete culvert and soil, only one half of the

structure and the surrounding soil were modeled. Exactly the same geometry mesh, boundary

conditions, and number of construction layers were considered in both ABAQUS and ISBILD

programs. It is known that the width of half the soil-structure finite element model affects the

analysis resultsY6] To examine the effect of the width of soil layers in the finite element model,

a number of finite element models with constant height but different widths were run using

ABAQUS. Figure 4.2 shows that soil-structure interaction factors as the ratio of half soil layer

width to box culvert width, W,/B e, varies. It also shows that the value of the soil-structure

interaction factor increases until W,/Be reaches approximately six or seven, after which no

significant increase is shown. In the one half model, the width of soil layer was taken to be

seven times the culvert width because it has been shown in a series of exploratory models that

any wider widths are not likely to affect the soil pressure distribution in the embankment

installations. The width of in-situ soil was taken to be six times the culvert width. The depth of

the yielding foundation was taken to be four times the culvert height and an unyielding

foundation was modeled by placing pin-ended boundaries immediately under the structure base.

A typical soil-structure finite element model is shown in Figure 4.1, and incremental sequences

considered for the embankment and trench installations are illustrated in Figure 4.3. Heights of

backfill varied from 50 feet to 200 feet for the embankment installations, and from 50 feet to 150

feet for the trench installations on both yielding and unyielding foundations. The constant

exterior dimensions of the culvert were 8 feet by 8 feet, with 12-inch thick walls and slabs. In

the case where the height of the backfill exceeds 150 feet, the thickness of walls and slabs may

43
have to be increased to resist the induced shearing force near the wall face. It was found from a

series of numerical analyses that the thickness of the culvert did not significantly alter the

pressure distribution at the top of the culvert, having an effect in the order of 1%. This

phenomenon may be explained that the relative displacement at the mid-span of the top slab is

not greatly affected as the thickness of the wall is varied. It should be noted that the

displacement at the top of the walls remains practically the same regardless of the different

values of the wall thickness used. As the pressure distribution at the top slab of a culvert is a

function of the relative vertical displacement of the slab, only small differences in the soil

pressure distribution would be expected. The modulus of elasticity of concrete box culverts was

computed to be 3,605 ksi, assuming the 28-day strength of concrete, Ic', is 4,000 psi and
Poisson's ratio, v, is 0.25 for soil layers that follow Duncan's model.

4.2 Soil-Structure Interface Modeling

To investigate the effect of the soil-structure interface between the exterior box culvert

wall and the filling soil, two different methods were considered; one was a shear interface model

and the other a spring interface model.

For the first modeling technique for the soil-culvert interface, the shear resistant capacity

of the soil elements adjac(!nt to the sidewalls of the concrete box culvert was modified to look for

a possible slippage between the culvert web and soil elements. One of the extreme cases

provided a very low value for the modulus. A linear elastic analysis was run on ABAQUS and

CANDE-89 to examine the effects of interface behaviors. In the ABAQUS analysis, very

narrow elements (1/20th ofthe width of the wall element) were placed between the culvert

outside wall and the backfills. The value of Young's modulus of the interface element was

varied from 1I1,000th to 1/10th of the filling material. The unit weight was set to be 1I1,000th of

44
~

c>

p
_h

I 1,

I
I

I I

( -

~"
J I
B--'

.---ls.

Figure 4.1: Typical Soil-Structure Finite Element Model

45
1.30 .-----------------------~

....
~C'\l 1.28 - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - -
I..L..
c
o
t5!!! 1.26
$
c
~ 1.24 - - - - - - - - - - - - - - - - - - - - . - - - - - . . .. - - - - - - - - - - - . . - - - - - - -
:l
t)
:l
,;;
~ 1.22
'0
en
1.20 -+----,---- -....,-----,--- - - - - - - - , -- - - - - . -- - , -- --1
o 1 2 3 4 5 6 7 8

Figure 4.2: Soil-Structure Interaction Factor vs. Wi/Be

.J~J.... ............. _. .... J~L ... ....


Filling Soil
Filling Soil Layers Layers

_...._........ __ ...... J!::~L ......... _... .


. ................. ___ .J.i.1. . .. , ....._. _

f----.. ..... ..... . J.~]. .... _..... ..


..... __ ... J~L _ .. __ ..... .. _..
.. PL .... .._ ..
[2]

Embankment Installation Trench Installation

Figure 4.3: Incremental Sequences for Embankment and Trench Installation

46
soil. The interior dimensions of the concrete box culvert were taken to be 4 ft wide and 4 ft high.

The thickness of the flange and web were lOin. The height of backfill was 7.25 ft measured

from the top of the top slab. In the CANDE-89 program, the interface behavior was taken into

account by treating constraint equations in the finite formulation based on a generalized principle

of virtual work. Table 1 shows the results of analyses of different shear interface models from

ABAQUS and CANDE-89, and the differences are calculated on the basis of the value from

CANDE-89.

For the other interface model, spring elements were placed at the nodes between the

exterior wall and the adjacent soil elements, as shown in Figure 4.4. On the vertical interface

line, two nodes for every geometric point were defined when constructing the finite element

mesh, one for the culvert wall element and the other for the soil element. A very small spring

constant was assigned for the vertical degree of freedom. To prevent extension and compression

modes of interface behavior, a very large spring constant was assigned for the horizontal degree

Table 4.1: Soil-Structure Interface Factor Comparison

ABAQUS Einterface element !Esoil


Shear Interface 1 1110 1120 1150 11100 111,000
Model
1.1125 1.1288 1.1364 1.1488 1.1577 1.1740
(Difference)
(-1.00 %) (0.45 %) (1.13 %) (2.23 %) (3.03 %) (4.48 %)

ABAQUS
Spring Interface 1.1253
Model (0.14 %)
(Difference)

CANDE-89 1.1237

47
of freedom.

Applying tangent stiffness for shear interface movement (vertical), presented in the form

of K st in Section 3.4, each spring constant for a two elements system (at the top and bottom of the

culvert element and the soil element as shown in Figure 4.4 (b)) may be written as:

d
k="2Ksl (4.1)

where d = depth of finite element, and rewriting this equation by substituting Equation 3.31

gives:

(4.2)

Note that K st is a function of normal stress, O'n and shear stress, -r, and these values should

be replaced by normal and shear stresses of the soil element. [34] Each model was run twice using

ABAQUS. The normal and shear stresses of soil elements immediately adjacent to culvert

elements were obtained from the first run, and the spring constants were calculated for the spring

elements that were used. The second analysis obtained actual pressure values on the culvert.

The values of other parameters of Kst are shown in Table 4.2. The result from this spring

interface modeling is also shown in Table 4.1. As can be seen from Table 4.1, the effect of a

Table 4.2 Values of Parameters of Kst

Parameters Values

a 24°
K/ 40,000
N 1.0
Rf 0.9

48
2 Nodes, i and i'

2 Nodes, j and j'

(A) Constructing Elements and Nodes

(B) After Interface Shear Displacement

Figure 4.4: Spring Interface Modeling

49
potential slip of the backfill soil along the exterior culvert wall is insignificant. Therefore, this

possibility was not considered in the subsequent analyses.

4.3 Model Verification

In order to assess the validity of the soil modeling technique adopted in this study, an

example considered by Katona and Vittes[26j for their verification study to validate the CANDE

prediction versus the test data for soil pressure round a box culvert was reanalyzed using

ABAQUS and ISBILD. As Katona and Vittes presented their comparison in a graphical form,

the same graphical comparisons are given in Figure 4.5. As can be seen from Figure 4.5, the

analytically predicted values from ABAQUS are fairly close to those from CANDE. Therefore,

it was concluded that the finite element analysis results obtained using ABAQUS and the soil

Final Cover Height = 77 feet


- - - CANOE (H =-21.6 It)
• • • • • ·CANOE (H ~ 77.0 tt)
Fill Soil - - ABACUS (H = 21 .611)
Young's Modulus = 2.0 ksi - -ABACUS (H • 77.0 It)
Poisson's Ratio = 0.25 )( TESTS (H=21 .6 It)
=
Density 13 8 pef
so o TESTS (H=77 fI)
~X- _ _ _ _)(..
Pressure Gage Locations
Soil Pressure (psi)
-.- .- .-.-.- . ~.-. -.-. -.- . - . -.-.-.-.

i :~ ox fr.'
so 0 50

o
. '

100

- -....
~., .

Figure 4.5: Schematics of Test Setup and Data Comparison

50
modeling technique adopted are valid. The soil pressure directly above the sidewall is

substantially higher than the soil pressure at the center of the top slab, where the largest relative

vertical deflection is expected to occur. It appears that the inclusion of reinforcing steel in the

calculation of the slab stiffness has a negligible effect on the soil pressure distribution, as

expected from ACI[35] Article 8.6, "Stiffness."

51
CHAPTERS

NUMERICAL ANALYSIS

5.1 General

The soil pressure or the effective density distribution at the top slab (flange) of deeply

buried concrete box culverts is affected very sensitively by the installation method used, either

embankment installation or trench installation. Therefore, the numerical analysis of a series of

hypothetical concrete box culvert models and subsequent data reduction were carried out

separately for the cases of trench installation and embankment installation. This independent

treatment permits the development of an optimum finite element model for each group. A

typical soil-structure model and incremental sequence of embankment and trench installation for

finite element analysis are shown in Figure 4.1. The properties of soil layers were computed

following the Duncan model, as discussed in Chapter 3. The following apply to the analyses of

both the trench and embankment installations:

1) Two-dimensional plane strain elements,

2) Retain symmetry of the model,

3) Plain concrete properties,

4) Neglect any slip between the soil and the culvert and between the placed backfill

and pre-existing ground,

5) Box culverts on both yielding and unyielding foundations,

6) Hyperbolic soil model and its parameters,

7) Incremental placement of the soil in layers to simulate construction sequence, and

8) Analysis by both ABAQUS and ISBILD (Computer Program for Analysis of

52
Static Stresses and Movements in Embankments).

5.2 Embankment Installations

A number of hypothetical deeply buried concrete box culverts were analyzed to

investigate the soil pressure intensity. The dimensions of the model box culvert were fixed at

eight feet high and eight feet wide (external dimensions), with a thickness for the walls and slabs

of 12 inches. The backfill height varied from 50 ft to 200 ft. Each model had a total of20

construction-layers, regardless of backfill height.

The pressure values on the top flange of the box culverts were conservatively averaged

and converted to effective densities, which are numerical values representing an equivalent

hydro-static pressure. The value of the effective density is identical in nature to FeJ given by

Equation 3.5. As shown in Figure 5.1, the value of the effective density increased as backfill

Table 5.1 Hyperbolic Parameters Used in the Analysis[25]

Parameters Filling Soil Original Ground

K, Kur 160.00 78.00

N 0.81 1.24

c (pet) 800.00 0.00

¢ (degree) 34.00 26.00

Rj 0.63 0.92

G 0.26 0.5

F 0.04 0.0014

d 6.20 0.0077

w (pet) 120.00 126.00

53
heights increased. The values determined from the ABAQUS analysis were higher than those

obtained from ISBILD. ASSHTO[6] provides soil-structure interaction factors of uncompacted

and compacted side-fill, as given in Equation 3.5. The predicted values on yielding foundations

from both ABAQUS and ISBILD analyses were between the values given for the compacted and

the uncompacted side-fill by AASHTO. It appears from the analysis that the value ofthe

effective density is most sensitive to the foundation characteristics. In the case of an unyielding

foundation, the value of the effective density from ABAQUS analysis showed somewhat higher

value than that obtained from ISBILD. Analysis results also indicate that the value of the

effective density for an unyielding foundation is much higher than that for a yielding foundation.

Two proposed predictor equations, Equations 5.1 and 5.2, are derived based on the data

from ABAQUS and ISBILD analyses by means of a linear regression method.

DE = 1.009Ho.o48 on Yielding Foundation (5.1)

DE = 1.016Ho.o68 on Unyielding Foundation (5.2)

where DE and H stand for effective density value and filling height, respectively.

Figure 5.2 shows the curves of predicted values of the effective density computed from a

linear regression method, along with the raw values of the predicted effective densities from

ABAQUS and ISBILD. Figure 5.3 shows deformed shapes of soil-culvert systems on yielding

and unyielding foundations. It can be seen from Figure 5.3 that the height of equal settlement on

a yielding foundation is less than that on an unyielding foundation. This is an important

characteristic that can explain why the effective density or the soil-structure interaction factor is

higher for an unyielding foundation than that for a yielding foundation. There are no relative

movements between the soil column on the top of culvert and adjacent soil columns above the

horizontal line of equal settlement. It is evident that the foundation condition of the construction

54

....
1.7
~ABAQ (nYlelding) -+-AB Ie mg
o ISBILD(Uyielding) -+-ISBILD(Yielding)
1.6 _ _ AASHTO(Uncompacted) ____ AASHTO(Compacted)

1.5
~
'00
c: 1.4
Q)
Cl
Q)
>
U 1.3
~
UJ
1.2

1.1

1.0 +-________.-________,-________.-________.-______ ~

o 50 100 150 200 250


Backfill Height (ft)

Figure 5.1: Effective Density for Embankment Installations

1.7
• Pre lete a ues nyle m9)
.. . .. .. Proposed Equation (Unyielding)
1.6 • Predicted Values (Yielding)
_ _ Proposed Equation (Yielding)
____ AASHTO(Uncompacted Sidefill)
1.5 . _. _. _AASHTO(Compacted Sidefill)
~
'00
c:
Q)
Cl
1.4
.. - ...
- - . - - - - -- - - --- :-.:-T-"---::"::':- - - - -
-'
--_ .... - .. --.
- - - - - ..
Q)
>
:p
u
1.3 - --- --~ --- --- - - ---- -- -- ---
~
UJ
1.2

1.1

1.0
0 50 100 150 200 250
Backfill Height (ft)

Figure 5.2: Effective Density Curves from Proposed Equations for Embankment Installations

55
I-

- f--

. t-
r
I--

- -

I
(a) Yielding Foundation (b) Unyielding Foundation

Figure 5.3: Deformed shape of Soil-Structure System

56
site is a prominent factor affecting the soil pressure on the structure, especially under high

backfill conditions. However, concrete box culverts are most likely to be installed on yielding

foundations unless a solid rock layer is encountered immediately under the concrete box culverts.

Unlike the current AASHTO[6] provisions, the compactness offill along the sides of the box

section does not affect the effective density significantly. It should be noted that ASSHTO

Standard Specifications for Highway Bridges[6] stipulates that a special analysis is required for

culverts untrenched on unyielding foundation.

5.3 Imperfect Trench Installations

The loads on concrete box culverts in embankment installations are greater than the

weight of the soil directly above the structure, as stated previously. The pressure intensity on

buried concrete culverts is very sensitive to the relative vertical displacement of the soil prism

above the culvert. An attempt to avoid increasing the load on the structure led to the

development of the imperfect trench method (sometimes called the induced trench method) of

construction, where larger relative vertical displacements of the soil prism above the structure are

induced by replacing some part of the fill with lightweight material. The most common type of

light or compression material used in the imperfect trench method is organic, such as baled

straw, leaves, hay, or compressive soil. The traditional imperfect trench method involves

installing a compression layer above the culvert within the backfill, as shown in Figure 5.3. As

the embankment is constructed, the soft zone compresses more than the surrounding fill and thus

induces an arching action above the culvert.

In order to demonstrate the versatility of the finite element modeling, concrete box

culverts with light back fill materials were analyzed for several different geometric

configurations and back fill material properties. As exact values of the modulus of elasticity and

57
the specific weight of the baled straw were not known, the value of the modulus of elasticity

were varied from 100 ksf to 10 ksf and the weigh of the baled straw taken to be 10 pounds per

cubic foot. A typical average value of the modulus of elasticity of soil, E, is about 30 to 40 ksf at

ground level and 500 ksf at a depth of 100 feet. The width of the light back fill or loose material

zone, w, was varied from 1 to 2.5 times the width of the culvert, Be, and the height of the

lightweight back fill was set at 10 feet. Examination of the literature reveals that the loose

material zone is traditionally placed above a 2 feet-deep filling cover above the top flange of the

box culvert. The depth of the filling cover, h', in Figure 5.3 was thus 2 feet. The exterior

dimensions of box culvert were 8 feet high and 8 feet wide, and the thickness of each wall was

12 inches. Table 5.2 shows the load reduction rate of the imperfect trench method in terms of

percentage. It can be seen from Table 5.2 that the width of the lightweight backfill need not be

greater than 1.5 times the width of the culvert.

The effect of the height of the soft zone and the depth of filling cover was examined. h

and h' were varied from 2.5 feet to 15 feet, and from 0 to 8 feet, respectively. wlB e was varied

from 1.0 to 2.0. h was set at 10 feet when h' was varied, and h' was set at two feet when h was

varied. The load reduction rates as functions of the ratio of the height of the soft zone to that of

the culvert, hlHe, are plotted with different values of wiBe in Figure 5.4. The effect of Young's

modulus is given in Figure 5.5. As Figures 5.4 and 5.5 shows that variations ofload reduction

have a diminishing return characteristic with regard to increasing hlHe• Typical effective density

distributions on the box culverts with hlHe = 1.25 are shown in Figures 5.6 and 5.7, with

different values of wiBe and different values of Young's modulus, respectively. The variations

ofload reduction rates are shown in Figure 5.8 as a function of the ratio of filling cover depth to

the height ofthe culvert, h' IHe. Typical effective density distributions with wlBe=l and hlHe

58
=1.25 are plotted in Figure 5.9. Figures 5.8 and 5.9 show that the highest load reduction occurs

when the lightweight backfill or the soft zone is placed immediately on the box culvert, i.e., there

is no intermediate filling between the culvert and the soft zone. It is also clear from Figures 5.4

and 5.5 that the height of the soft zone does not need to be greater than 1.5 times that of the

culverts after that point, no significant load reduction is realized.

Although the artificially induced reverse arching action is desirable, Vaslestad and his

coworkers[22] recommended a judicious selection of the lightweight back fill material and its

careful installations. A number of serious stress concentration problems have been reported due

to ill-advised arrangements of compression layers and improper material selection.

It may require a considerable effort to develop a reasonable force-displacement

relationship and a volume change rate for the material used in the soft zone, as there are

practically no experimental data available that can be used to establish a constitutive relationship

for the material in the soft zone. It is highly likely that the constitutive relationship of the soft

zone material would be nonlinear, as for relationship describing backfill soil. A close up view of

the deformed shape ofa typical model around the soft zone is shown in Figure 5.10. The

displacement values are magnified with an amplification factor of 4. Young's modulus and

Poisson's ratio of the soft zone were taken to be 10 ksi and 0.1, respectively, for this case. Table

5.3 presents the vertical displacement at the top, mid-height, and bottom of the soft zone along

the vertical centerline of symmetry of a soil-structure model. Three different Young's moduli

and two different Poisson's ratios were used to generate Table 5.3. The vertical displacements at

the top and mid-height increase for the softer material, as expected. However, it is of interest to

note that the vertical displacement at the bottom of the soft material zone decreases, resulting in

a volume squeeze. As presented in Table 5.3, the value of Poisson's ratio does not appear to

59
Table 5.2: Pressure Reduction Rates (%) Due to Imperfect Trench Installation

Modulus E Width of Back Fill Layer, wlBe

(ksf) 1 l.5 2 2.5

100 32.8 4l.1 39.1 36.7

50 43.6 58.6 57.0 54.3

10 56.9 83.7 85.3 84.8

J Top of Embankment

/7/(\'\

H
Loose Material Zone h

Be
h'
IE >1

D He

Figure 5.3: Imperfect Trench Installation

60
80 ~------------------------------------------,

60

40 ,1

~ -+-w/Bc=1 .0
20
---- --- ------ ---- ---- ---- -, -- 1_ _ --
_·_:_~_:_~:_;_:_50_ _'

o +-------.-------.-------~------_r------~------~
0.0 0.5 1,0 1.5 2.0 2.5 3.0
hlHc

Figure 5.4: Load Reduction Rate vs. hlHc (Different wlBc)

.......
~
60 ----- ---- ------- ...
..
--- - .. - -- - . -- -- - ~---- ------

.. ---- ... -

~r:: 40
• •
o . <>--------------<>
U
::I
"C
Q)

a::: 20 -<>- E=100


"C
ro
o
__ E= 50
....J
-.tr- E= 10 I
o +-------,--------.-------r------~--------------_4
0.0 0.5 1.0 1.5 2.0 2.5 3.0
hlHc

Figure 5.5: Load Reduction Rate vs. hlHc (Different Young's Modulus)

61
2.0
~w/o Soft Zone -+-w/Bc=1 .0
__ w/Bc=1.5 -.-w/Bc=2.0

15 1
~
.(jj
I: -- 0 - - - - - - 0 - - - - - - -
Q)
0
1.0

-
Q)
.~

---~ - ----- --- - -~-- v --


t.>
~
w
0.5
~+---------+----

0.0
Left Wall Center of Flange Right Wall

Figure 5.6: Effective Density Distribution on the Box (Different wlBc)

2 . 0 1----------r====~~~====~~~====,_------__r
- 0 - w/o Soft Zone -+- E=100
__ E= 50 - . - E= 10

1.5

~
·iii
I:
Q)
o
Q) 1.0
>
u
ffi

Left Wall Center of Flange Right Wall

Figure 5.7: Effective Density Distribution on the Box (Different Young's Modulus)

62
80 ~----------------------------------------------~
-+-w/Bc=1
__ w/Bc=1.5
-+- w/Bc=2.0

- - - - .... .... - - - ""<::.....:::-.....

-~ -----------~:'-::-..... .~ -------
.. -.......... ---=-~ -----.
-----.....
-.. .. ,
------.
o +--------r------~--------,_------~------_.------~
0.0 0.2 0.4 0.6 0.8 1.0 1.2
h'lHc

Figure 5.8: Load Reduction Rate vs. h'lHc

2.0

I
1

1.5 t ----
-
>.
·iii
c
j
I
0
Q.l

Q.l
>
U
1.0 t
~
UJ

0.5

O . O ~--------------------------------____--------__~
Left Wall Center of Flange Right Wall

Figure 5.9: Effective Density Distribution (wIB c=l, hlHc=1.2S)

63
Table 5.3 Vertical Displacements at Soft Zone (ft)

E=100 (ks±) E=50 (ks±) E=10 (ks±)

Diff. Diff. Diff.


v=O.4 v=O.l v=O.4 v=O.1 v=O.4 v=O.l
(%) (%) (%)

Top 0.656 0.705 7.4 0.712 0.753 5.7 0.799 0.824 3.1

Middle 0.466 0.485 4.1 0.482 0.498 3.2 0.514 0.526 2.3

Bottom 0.289 0.274 5.3 0.270 0.258 4.3 0.247 0.243 1.5

--
Ilf')'
Soft Zone "

i'
"
" l~~'
""/I" ,./
-=
Box CuI vert
" -"
_/
~

~
/
- i"
i"
...w:K

Figure 5.10: Close-up View of Deformed Shape near the Soft Zone

64

....
affect the vertical displacements significantly. It should also be noted that the soil layers

between the soft zone and the concrete culvert appear to be swollen. This phenomenon is likely

to be caused by the effect of Poisson's ratio of these soil layers, as they are subjected to very

high lateral pressures exerted by the adjacent backfill elements.

5.4 Trench Installations

The effective density of soil pressure or the value of the soil-structure interaction factor

for concrete box culverts in trench installations was also examined. The ratio of the horizontal

width of the trench to the box width, BriBe, was varied from two to twelve. The height of the

backfill varied from 50 ft to 150 ft. Exactly the same parameters in the Duncan soil model of the

original ground and filling soil were used for analyses of both embankment installations and

trench installations. In this trench installation model, the sides of the trench were assumed to be

vertical, and no slip was permitted between the backfill soil and the sides of the trench. The

pressure values on the top flange of the box culverts were again conservatively averaged and

converted to effective densities. Figure 5.11 shows the value of the effective density at the top of

box culverts installed on a yielding foundation as a function of the ratio of the trench width to the

box culvert width, BriBe. Similar information on unyielding foundation models is not shown.

The value of effective density approaches asymptotically that for embankment installations as

BriBe increases, as expected.

The transition width can be readily determined from Figure 5.11, where the effective

density for trench installations becomes close to that for embankment installations. As in the

case of embankment installations, the values of effective density determined from ABAQUS

(represented by solid lines in Figure 5.11), are higher than those determined from ISBILD

(represented by dotted lines in Figure 5.11).

65
1.4 'I - - - -- - - -- - -- - -- - - -- - - - - ------,

1.2 - - _ _ • .. - - - - •

~
'w
5; 0.8
o
~
~ 0.6
:l!:l
- -~: ;-.~ . . ,: ------------------------I
....- -.'
w
0.4 -- . .- - - - . 'if: ':~::' w'- - - - - - - _. - - - - - _. _. - - - - - •.- -

, .'
.' .... [ --+-ABAQUS (H=50ft) ____ ABACUS (H=1 0D tt)
0.2 +.. . -- . 8". • ~ - - - - .. ---..-ABAQUS (H=150 ft) . __ Q • •• ISBllD (H:50 ttl
6" __ -G! • •• ISBllD (H=100 tt) _• . A •• • ISBllD (H-1 50 tt)

O+-_ __~---~----~--~---~----~--~
o 2 4 6 6 10 12 14

Figure 5.11: Effective Density vs. BdlBc.

The value of effective density is plotted as a function of the ratio of backfill height to

horizontal width, HIBd, on yielding and unyielding foundations in Figures 5.12 and 5.13,

respectively. It should be noted in Figures 5.12 and 5.13 that the effective density varies only

slightly for different values of the backfill height if HIBd remains the same. The load coefficient

for trench installation, Cd, is given in Equation 3.6 as a variable. Although Equation 3.6

(adopted in the current AASHTO Specifications[5.61) is based on Marston-Spangler theory, the

load coefficient, Cd, based on the Marston theory remains unchanged. Most values of the soil-

structure interaction factor from AASHTO Specifications are 1.4, the limit value, except for a

few cases. It is clear from Figures 5.12 and 5.13 that the values of effective density (or structure-

soil interaction factors) given by the current AASHTO Specifications appear to be conservative

compared to the analytically predicted values from this study. In Figures 5.12 and 5.13, values

computed from AASHTO provisions are given for the case yielding minimum values, obtained

66
by selecting granular materials without cohesion. The curves shown are obtained from a

regression analysis on the data from ABAQUS and ISBILD as functions of HIBd. The following

regression equations are found to best fit the data relating the effective density and HIBd.

Yielding Foundation

(5.1)

(5.2)

Unyielding Foundation

(5.3)

log(DE) = 0.018(!i.J2 - 0.412( H J + 0.476 ; ISBILD (5.4)


B,j Btl

It appears possible that representative effective density values for yielding and unyielding

foundations may be expressed by taking mean values of those two predicted values from

ABAQUS and ISBILD. Equations 5.1 and 5.2 can be combined into Equation 5.5. Likewise,

Equations 5.3 and 5.4 can be combined into Equation 5.6.

DE =exp [ 0.QJ5(:' J
-0.352(:' J+0.402] ; Yielding Foundation (5.5)

DE = exp [ 0.QJ5(:' J' - 0.342(:' J + 0.471] ; Unyielding Foundation (5.6)

67
1.6 -,-_ _ _ _ _ __ _ _ _ __ __ _ _ _ _ _ __ _ _ _ _ ~

• ABAQUS
1.4 . 11111 . . . . . . . . . . . .- -+- - -. -. - -+- - - - - .- - - .. - - - -
• ISBILD

1.2 - -- - - - - -- - ~ -.-- - - - - - - - - - - - - - -.- - - - - - - -


• - -
AASHTO
-- -- -- --
~ 1.0
U)
c:
CII ~ !
Cl 0.8 - - - - ~ -..~ ..

.
. - - - - - - - - - - ' •• - - - - - - . - - - - - - - - . - - - - - - -I

~ .~ .

~
w
0.6 - - - - - - - - . : ,,~~ - - ...f ·· .... '-

0.4 . - - - - - - - - - - - - - - - - - -.. ..;;.l -:A. --- -- ~

0.2 - --- -- ---- --- -------- ---~ =: :: =...~ --- -.- ~~. ~- -:.:-- -:.~. ~- -:. ~.• ~ .-
0.0 + - - -- - - . - - - - - - - .- - ---...-- - - - - . - - -- -- ---1
a 2 4 6 8 10
HlBd

Figure 5.12: Effective Density vs. HIBdon Yielding Foundation.

1.6

1.4 ••
.
ISBILD

1.2 .. ,
~\.- ~ ~ -
~ ~
- - - - -- -
.
...... - .... ~-- - - - - - ..... - - - -.- -

- - - -- - -- -
AASHTO
_.

.~
U)
c:
1.0 -- - .......
.l
-- - - ---- ------ - --- ---- - --- - - - - - - - - --- - - -
CII
"4l •
~ - - -- - -~~,: - - -
Cl
-- - -- - -- - --- - -. - - - - - --- --- -- - -- - - -I
~
0.8
....-
~
w
0.6

0.4
---- --- ---
. ", ....
~~- - - - - - -
. - -

0.2 ~~~~~~ ~~ ~~~~~ ~ ~~~ ~ ~~~~~==~~;~~~~~~ --~~~~~~~~~~ ~ ~J •. - .- _ .. -. - ··AI. I


0.0 _
0 2 4 6 8 10
H1Bd

Figure 5.13: Effective Density vs. HIBdon Unyielding Foundation

68
5.5 Effect of Sloping Trench Walls

In theoretical treatments, the trench walls are generally taken to be vertical. However, for

deep trenches, it is almost impossible to maintain the trench walls to be vertical in practice.

Sloping trench sidewalls are expected to have a significant impact on the soil pressure on

culverts. In the case where the trench is constructed with sloping sides, as shown in Figure 5.14,

experiments have shown that the width of the trench at or slightly below the top of the conduit is

the proper width to use for Bd in calculating the load.

To investigate how sensitive those effects are to the load intensity, boxes installed in a

trench with sloping sidewalls were modeled. The resulting effective densities for BeiBe =2, 3,

and 4 with fill heights of 50, 100, and 150 ft are shown in Figures 5.15, 5.16, and 5.17,

respectively. () stands for the angle between the vertical line and the sloping sidewall of the

trench as shown in Figure 5.14. Values of the effective density increase to approximately 90%

of that for embankment installation when () approaches 45 degrees. The current AASHTO

Equation 3.6, along with most other references, stipulates the effective densities for the trench

installations under the assumption that the trench walls are excavated vertically but the effect of

the sloping trench walls on the soil-structure interface factors is quite high. Although Figures

5.12 and 5.13 show large discrepancies between the value of the effective density computed from

AASHTO provisions and finite element analyses where the trench walls are assumed to be

vertical, the actual differences are likely to be much smaller as the sloping trench walls are taken

into account.

5.6 Examples

Examples for predicting approximate values for design loads on the box culvert are given

in this section. Predicted values are compared to those obtained using the current AASHTO and

69
~1
I' StruCture I
D
Figure 5.14: Trench Installation with Sloping Sidewalls

· - -------- - --.. ----------,---,1


:: .,--1-- --- --------------- --- ------ ---, -- -------
--
'#.
Z.
'in 80
c:
<I)
0
<I)
.~
60
u
~ 40 - - ______ ____ __ __ _____ ___ ___ _ '-+- Bd/Bc=2. H= 50 ft
w
__ Bd/Bc=3, H= 50 ft
~
:;::
tU -+- Bd/Bc=4, H= 50 ft
Qj 20 - - -- - --- ---- ---- ----- --- - - - -~------------~
0::

0 ~------_+--------4_------_4--------~------_4
0.00 0.25 0.50 0.75 1.00 1.25
tanS

Figure 5.15: Effect of Sloping Sidewall in Trench Installations (H=50 feet)

70
120 ,--------------------------------------------,

100

~ 80
c:
Q)
o
Q) 60
>
~ --+- Bd/ Bc=2, H=100 ft
~ 40 - - - - - - .. - - - - - - - - - - - - - - - - - - - __ Bd/Bc=3, H= 100 ft
.~
-
co
Q)
0::
_ _ _ • __ _ __ _ _ _ _ _ _ _ _ _ _ _ _ • - - _ __
--t- Bd/Bc=4, H= 100 ft
_ _ _ _ _ _ _ _ _ _ _ _.....J

0 +--------+--------1-------~~-----_r------~
0.00 0.25 0.50 0.75 1.00 1.25
tanS

Figure 5.16: Effect of Sloping Sidewall in Trench Installations (H=100 feet)

______ ________ _________ __ .______ .__________.1


t 1

~. - . -· :: :::·~-~~· 1
.~
VI
c:
Q)
o
.~
o
~
LU 40 i.. . ~ ~ .... ... ~ .. -.~ ...... .. ::::::~:~: ~:;:~ ~ _I
~
+:.
co
Q) 2: .. m u • • ~ ~ :~ . -~ ~ • • , _ _ BdIBC=~.H=150ft I
0::

0.00 0.25 0.50 0.75 1.00 1.25


tanS

Figure 5.17: Effect of Sloping Sidewall in Trench Installations (H=150 feet)

71
Marston-Spangler recommendations. The hypothetical construction conditions for embankment

and trench installations were taken to be as follows:

Example 1. (Embankment Installation)

Given:

Concrete box exterior dimension, BcxHc: 8 ft x 8 ft

Fill height, H: 160 ft

Weight of filling soil, y: 120 pcf

Foundation condition: Yielding foundation

Solution:

From Equation 5.1, the effective density value, DE can be determined as follows:

Total earth load on the culvert, We is calculated as

We = DEyBcH = (1.287)(0.12)(8)(160) =197.68 (kl ft)

From AASHTO provisions, Equations 3.4 and 3.5,

H 160
Fe/ =1+0.20-=1+0.20-=5.00 >1.40
Be 8

WAASHTO = F.lyBeH = (1.40)(0.12)(8)(160) =215.04 (kl ft)

Equation 3.2 from the Marston-Spangler theory can be applied if the settlement ratio, rsd. is

known. Based on Spangler's recommendation, Table 3.1 gives a settlement ratio of between

+0.5 and +0.8. If the settlement ratio, rsd, is assumed to be +0.7, then the load coefficient for

72
positive projection, Ce, can be detennined from Figure 3.5, to be in the region ofCe =31.7. From

Equation 3.2,

2
W5'patlgler = CcY B; = (31.7)(0.12)(8 ) = 243.45 (k 1ft)

The results from this study, AASHTO, and Marston-Spangler theory are compared in Table 5.4.

Table 5.4: Summary of Results for Example 1

Total Load on the Culvert (Difference)

This study 197.68 klft

AASHTO 215.04 kl jt (8%)

Marston-Spangler Theory 243.45 kljt (19%)

Example 2. (Embankment Installation)

Given:

Concrete box exterior dimension, BexHe: 8 ft x 8 ft

Fill height, H: 175 ft

Weight of filling soil, r. 120 pef

Foundation condition: Unyielding foundation

Solution:

From Equation 5.2, the effective density DE can be detennined as follows:

DE =(1.016)(175°.068 ) =1.444

73
The total earth load on the culvert, We is calculated as:

n: = DEY Bc H =(1.444)(0.12)(8)(175) =242.59 (k I ft)


There are no specific equations for unyielding foundations in the current AASHTO

specifications, so it is suggested that a rational method is to be used. Spangler's

recommendations for settlement ratio can be applied from Table 3.1. The settlement ration, rsd

can be taken to be +1.0, and the load coefficient, Ce , can be determined from Figure 3.5 to be

C e=36.8. Using Equation 3.2, the total load is computed according to Spangler's

recommendation as:

W~'pallgler
2
= CeyB; = (36.8)(0.12)(8 ) = 282.62 (kl ft)

This value is greater than the predicted value from this study by 16%. However, it should be

noted that concrete box culverts are most likely to be installed on yielding foundation unless an

obvious solid rock layer is encountered.

Example 3. (Trench Installation)

Given:

Concrete box exterior dimension, BexHe: 8ftx8ft

Fill height, H: 120 ft

Weight of filling soil, y: 120 pcf

Width of trench, Bd: 24 ft

Slope of trench wall, tan&. 1/2

Foundation condition: Yielding foundation

74
Solution:

From the given data,

H I Btl = 120116 = 7.5


From Equation 5.1, the effective density , DE, of embankment installation can be detennined as

DE = (1.009)(120°.048 ) = 1.270

From Figures 5.16 and 5.17, one can detennine the relative effective density, say a,

corresponding to H = 120 ft and Be/Be = 2. Using a linear interpolation, the relative effective

density, a , is computed to be 78%. Therefore, the total earth load is calculated as follows:

w. = aDEy Bc H = (0.78)(1.270)(0.12)(8)(120) = 114.12 (k I ft)


The total earth load can also be detennined from current AASHTO specification using Equations

3.4,3.6 and Figure 3.4. From Figure 3.4, Cd= 2.75 is taken for Kjl = 0.165 (maximum for sand

and gravel), and from Equations 3.4 and 3.6, the soil-structure interaction factor and total earth

load for trench installation are computed as follows:

= CtlB~ = (2.75)(16 ) = 0.733


2
F
e2 HBc (120)(8)

WAASHTO = F"wBcH = (0.733)(0.12)(8)(120) = 84.44 (kl ft)


It appears that there is some difference between the values of total load from this study and

AASHTO. However, it should be also noted that the load values obtained by this study include

the effect of sloping walls by incorporating tanB= ~, while the value from AASHTO is

detennined under the assumption that the trench walls are excavated to be completely vertical.

In the case where the trench wall is assumed to be vertical, Equations 5.S and 5.6 can be used to

obtain the effective density for yielding foundations and unyielding foundations, respectively.
75
For a vertical trench wall, i.e., tanB= 0, on the yielding foundation, the total earth load is

calculated using Equation 5.5 as follows:

DE = exp [ 0.015 ( :.)' - 0.352 ( :. ) + 0.402]

= exp[ 0.015(7.5)2 - 0.352(7.5) + 0.402]

= 0.248

w;, = DEY BcH = (0.248)(0.12)(8)(120) =28.57 (k / ft)

However, it should be noted that the assumption of a deep vertical trench wall is not very

realistic one.

76
CHAPTER 6

CONCLUSIONS AND RECOMMENDED FUTURE STUDY

6.1 Conclusions

The findings and concluding remarks are summarized below for the finite element

numerical investigation on the effective density or soil-structure interaction factor of deeply

buried concrete box culverts. All three finite element programs, ABAQUS, CANDE-89, and

ISBILD predict effective densities or soil-structure interaction factors that are reasonably close to

each other.

1) The values of the effective density for embankment installations are more

sensitively affected by the foundation characteristics, i.e., whether a yielding or

unyielding foundation is used. The values of effective density on unyielding

foundations are much higher than those on yielding foundations. AASHTO

stipulates that a special analysis is required for embankment installations on

unyielding foundations.

2) Finite element analysis results show that the greatest effect of load reduction can

be obtained in imperfect trench installations when the soft zone is placed

immediately above the box culvert, i.e., there is no soil cover between the top of

the box culvert and the bottom of the soft zone.

3) The variation of the load reduction rate due to imperfect trench installations

shows a diminishing return characteristic. The ratio of the height of the soft zone

to that of the box culvert, hiRe, does not need not to be greater than 1.5; after that

point no significant load reduction is realized.

77
4) Although imperfect trench installations reduce the effective density significantly,

it has been reported that the selection of the lightweight compression materials

and field installations demands considerable planning and care.

5) To simulate the soil-structure interface between the exterior box culvert wall and

the filling soil, two different methods of interface modeling have been applied.

The effect of possible slips of the backfill materials along the exterior culvert wall

appears to be negligibly small.

6) Finite element analysis indicates that the effective density is only marginally

affected by the properties of the sidefill materials, i.e., compacted or uncompacted

fill at the sides of the box section.

7) The current AASHTO provision reproduced in Equation 3.4 and most other

references stipulate the effective densities for the trench installations under the

assumption that the trench walls are excavated vertically. However, it has been

shown in this study that the effect of the sloping trench walls on the soil-structure

interface factors is actually quite high.

8) Although Figures 5.5 and 5.6 show large discrepancies between the values of the

effective density computed from AASHTO provisions and finite element

analyses, the actual differences are likely to be much smaller if the effect of the

sloping trench wall is reflected in the finite element analyses.

6.2 Recommendations for Future Study

It is hoped that the knowledge gained and the data presented herein will lead to a better

understanding of the complex soil-structure interaction behavior of concrete box culverts.

In view of the remarkable decrease in computational expenses in recent years, the finite element

78
method approach can be applied to everyday design practice in deeply or shallow buried concrete

box culvert designs. However, a considerable effort is still required to properly determine the

subsoil conditions and assign the appropriate parameters for the constitutive model. The

following recommendations are offered for future research.

1) Experimental field studies would be desirable for a verification of the present

study.

2) It is expected that the constitutive relationship, as well as the volume change rate

of the compression or soft zone material, is likely to be nonlinear as for those of

other soil materials considered in the present study. Material nonlinearity of the

soft zone should be examined and considered in future more detailed models.

3) Laboratory performed soil property tests for constitutive models may be necessary

to augment the results obtained from finite element analyses.

79
REFERENCES

[1] Marston, A., and Anderson, A 0., "The Theory of Loads on Pipes in Ditches and Tests
of Cement and Clay Drain Tile and Sewer Pipes." Bulletin 31, Iowa Engineering
Experiment Station, Ames, Iowa, 1913.

[2] Marston, A, "The Theory of External Loads on Closed Conduits in the Light of the
Latest Experiments," Bulletin 96, Iowa Engineering Experiment Station, February 19,
1930.

[3] Spangler, M. G., "Field Measurements of the Settlement Ratios of Various Highway
Culverts," Bulletin 171, Iowa Engineering Experiment Station, Ames, Iowa, 1950.

[4] AASHTO Standard Specifications for Highway Bridges, 12th ed., American Association
of State Highway and Transportation Officials, Inc., Washington, D.C., 1977.

[5] AASHTO LRFD Bridge Design Specifications, 2nd Ed., American Association of State
Highway and Transportation Officials, Inc., Washington, D.C., 1998.

[6] AASHTO Standard Specifications for Highway Bridges, 16th ed., American Association
of State Highway and Transportation Officials, Inc., Washington, D.C., 1996.

[7] AASHTO Standard Specifications for Highway Bridges, 13th ed., American Association
of State Highway and Transportation Officials, Inc., Washington, D.C., 1983.

[8] Hardin, B. 0., "Characterization and Use of Shear Stress-Strain Relations for Airfield
Subgrade and Base Course Material," Technical Report No. AFN-TR-71-60, Air Force
Weapons Laboratory, Kirkland AFB, New Mexico, July 1971.

[9] Duncan, J.M., and Chang, C.Y., "Nonlinear Analysis of Stress and Strain on Soils,"
Journal of Soil Mechanics and Foundation Div., ASCE, Vol. 96, No. SM5, September
1970,pp.1629-1653.

[10] Wong, K.S., and Duncan, lM., "Hyperbolic Stress-Strain Parameters for Nonlinear
Finite Element Analysis of Stresses and Movements in Soil Masses," Report No. TE-74-3,
University of California, Berkeley, California, 1974.

[11] McVay, M.C., and Selig, E.T., "Soil Model and Finite Element Boundary Studies,"
Report No. ACP81-283I, Dept. of Civil Engineering, University of Massachusetts,
Amherst, Mass., July 1981.

[12] Katona, M.G., Smith, J.M., Odello, R.S., and Allgood, J.R., "CANDE - A Modern
Approach for the Structural Design and Analysis of Buried Culverts," Report No.
FHWA-RD-77-5, FHWA, October 1976.

80
[13] Sanderson, M. C., McVay, M. c., Dorwart, B. C., and Selig, E. T., "Soil Properties for
Bucks County Culvert Project," Report No. RSC80-242R, Prepared for Republic Steel
Corporation, Dept. of Civil Engineering, University of Massachusetts, Amherst,
Massachusetts, June, 1981.

[14] Konder, R.L., "Hyperbolic Stress-Strain Response: Cohesive Soils," Journal of the Soil
Mechanics and Foundations Div., ASCE, Vol. 98, No. SM1, 1963, pp. 115-143.

[15] Janbu, N., "Soil Compressibility as Determined by Oedometer and Triaxial Tests,"
European Conference on Soil Mechanics & Foundations Engineering, Wiesbaden,
Germany Vol. 1, 1963, pp. 19-25.

[16] McVay, M. c., "Evaluation of Numerical Modeling of Buried Conduits," Ph.D.


Dissertation, Dept of Civil Engineering, University of Massachusetts, Amherst,
Massachusetts, Feb. 1982.

[17] Goodman, R. E., Taylor, R. L., and Brekke, T., "A Model for the Mechanics of Jointed
Rock," Journal of the Soil Mechanics and Foundations Divi., ASCE, Vol. 94, No. SM3,
Proc.Paper5937,May, 1968,pp.473-496

[18] Leonards, G. A., and Wu, T. H., "Predicting performance of Buried Conduits", Report
No. 6-36-62F, Final Report to Indiana State Highway Commission and FHWA,
Engineering Experiment Station, Purdue University, W. Lafayette, Indiana, March, 1981.

[19] Chan, S. H, and Tuba, 1. S., "A Finite Element Method for Contact Problems of Solid
Bodies," International Journal of Mechanical Science, Vol. 13, No.7, July, 1971, pp 615-
639.

[20] Chang, C. S., Espinoza, J. M., and Selig, E. T., "Computer Analysis of Newtown Creek
Culvert," J. of the Geotechnical Engineering Div., ASCE, May 1980, pp531-556

[21] Brown, C.B., "Forces on Rigid Culverts under High Fills," J. Structural Div., ASCE,
93(ST5), October 1967, pp. 195-215.

[22] Vaslestad, J., Johansen, T.H., and Holm, W., "Load Reduction on Rigid Culverts Beneath
High Fills: Long-term Behavior," Transportation Research Record 1415, Washington,
D.C., 1993.

[23] Kulhawy, F. H., and Duncan, J. M., and Seed, H. B., "Finite Element Analysis of Stresses
and Movements in Embankments During Construction," Geotechnical Engineering
Research Report No. TE-69-4, Department of Civil Engineering, University of
California, Berkeley , November, 1969.

[24] Ozawa, Y., and Duncan, J.M., "ISBILD: A Computer Program for Analysis of Static
Stresses and Movements in Embankment," Report No. TE-73-4, University of California,
Berkeley, California, 1973.

81
[25] Allen, D.L., and Meade, B.W., "Analysis of Loads and Settlements for Reinforced
Concrete Culverts," Research Report UKTRP-84-22, Kentucky Transportation Research
Program, University of Kentucky, Kentucky, 1984.

[26] Katona, M.G., and Vittes, P.D., "Soil-Structure Analysis and Evaluation of Buried Box-
Culvert Designs," Transportation Research Record 878, Washington, D.C., 1982.

[27] Tadros, M. K., Benak, J. V., and Gilliland, M. K., "Soil Pressure on Box Culverts", ACI
Structural Jour., Vol. 86, No.4, July-August 1989. pp439-450.

[28] Musser, S.C., "CANDE-89 User Manual," Report No. FHWA-RD-89-169, FHWA, June
1989.

[29] Yang, M. Z., Drumm, E. C., Bennett, R. M. and Mauldon, M. "Influence ofCompactive
Effort on Earth Pressure around a Box Culvert" Proceedings, 9th International
Conference of the Association for Computer Methods and Advances in Geomechanics
(lACMAG 97), Wuhan, China, 1997, pp2021-2026.9

[30] Hibbit, Karlsson & Sorensen, Inc. ABAQUS/Standard User's Manual, Ver. 5.8, 1998.

[31] Spangler, M.G., and Handy, R.L., Soil Engineering, 4th Ed., Harper and Row, New York,
1982.

[32] Spangler, M.G., "A Theory on Loads on Negative Projecting Conduits," Proceedings,
Highway Research Board, 30, 1950, pp. 153-161.

[33] Duncan, J. M., Byrne, P., Wong, K. S., and Mabry, P., "Strength, Stress-Strain and Bulk
Modulus Parameters for Finite Element Analysis of Stresses and Movements in Soil
Masses," Report No. UCB/Gtl80-01, University of California, Berkeley California,
August 1980.

[34] Clough, G. W., and Duncan, J. M., "Finite Element Analysis of Retaining Wall
Behavior," J. of Soil Mechanics and Foundations Div., ASCE, December 1971, pp.1657-
1673.

[35] ACI Building Code Requirements for Structural Concrete (318-99) and Commentary
(318R-99), American Concrete Institute, Farmington Hills, Mich., 1999.

[36] Katona, M. G., Meinhert, D. F., Orillac, R. and Lee, C. H., "Structural Evaluation of New
Concepts for Long-Span Culverts and Culvert Installation," Report No. FHWA-RD-79-
115, Intrim Report to Federal Highway Administration, December 1979.

[37] Watkins, R. K., and Anderson, L. R., "Structural Mechanics of Buried Pipes," CRC Press
LLC, Boca Raton, Florida, 2000.

82
APPENDICES

APPENDIX A
Typical Input for ABAQUS

APPENDIX B
Typical Input for ISBILD

APPENDIX C
Typical Input for CANDE-89

APPENDIX D
ISBILD Source Code

APPENDIX E
CANDE-89 Source Code
APPENDIX A

TYPICAL INPUT for ABAQUS

*HEADING
LOAD ON THE CONCRETE BOX CULVERVERT
*RESTART,WRITE,FREQUENCY=5
*NODE
1, 0.,-40.
4, 6.,-40.
13,74.,-40.
*NODE,NSET=THREENO
5, 10.,-40.
6, 16.,-40.
7, 24.,-40.
*NGEN
1,4,1
7,13,1
*NSET, NSET=BOT, GENERATE
1,13,1
*NCOPY,CHANGE NUMBER=52,SHIFT,OLD SET=BOT,NEW SET=HLINE1
0.,28., O.
0.,0.,0.,0.,0.,0.,0.
*NFILL
BOT,HLINE1,4,13
*NCOPY,CHANGE NUMBER=68,SHIFT,OLD SET=THREENO
0.,30., O.
0.,0.,0.,0.,0.,0.,0.
*NCOPY,CHANGE NUMBER=84,SHIFT,OLD SET=THREENO
0.,32.,0.
0.,0.,0.,0.,0.,0.,0.
*NCOPY,CHANGE NUMBER=111,SHIFT,OLD SET=THREENO
0.,34.,0.
0.,0.,0.,0.,0.,0.,0.
*NCOPY,CHANGE NUMBER=176,SHIFT,OLD SET=THREENO
0.,42.,0.
0.,0.,0.,0.,0.,0.,0.
*NODE
66, 0.,-10.
72, 6.,-10.
81,74.,-10.
82, 0.,-8.
88,6.,-8.
97,74.,-8.
98, 0.,-7.
101,3.,-7.
107,3.,-I.
110,0.,-I.
167,0.,0.
170,3.,0.
171,0.,I.
176,5.,I.
177,0.,2.
180,6.,2.
189,74.,2.
I l l , 4.,-7.
112, 5.,-7.
113, 4.,-6.
114, 5.,-6.
115, 6.,-6.
124,74.,-6.

84
*NGEN
66,72
75,81
82,88
91,97
98,101
101,107
107,110
167,170
171,176
177,180
183,189
118,124
*NSET, NSET=LANO, GENERATE
111,124
*NCOPY,CHANGE NUMBER=14,SHlFT,OLD SET=LANO
0.,2.,0.
0.,0.,0.,0.,0.,0.,0.
*NCOPY,CHANGE NUMBER=28,SHlFT,OLD SET=LANO
0.,4.,0.
0.,0.,0.,0.,0.,0.,0.
*NCOPY,CHANGE NUMBER=42,SHlFT,OLD SET=LANO
0.,6., o.
0.,0.,0.,0.,0.,0.,0.
*NSET,NSET=FlLLBOT,GENERATE
177,189
*NCOPY,CHANGE NUMBER=247,SHlFT,OLD SET=FlLLBOT, NEW SET=FlLLTOP
0.,98.,0.
0.,0.,0.,0.,0.,0.,0.
*NFlLL
FlLLBOT, FlLLTOP, 19,13
*NSET,NSET=Sl
1,14,27,40,53,66,82,98,110,167,171,
26,39,52,65,81,97,124,138,152,166
*NSET,NSET=DES,GENERATE
177,424,13
189,436,13
*NSET,NSET=SlDESBC
Sl,DES
*NSET,NSET=BOTTOMBC
BOT
*NSET,NSET=CHECKNO,GENERATE
98,110,1
*ELEMENT, TYPE=CPE4, ELSET=CULV
82,82,83,99,98
83,83,84,100,99
84,84,85,101,100
85,85,86,111,101
86,101, 111,113,102
87,102,113,125,103
88,103,125,127,104
89,104,127,139,105
90,105,139,141,106
91,106,141,153,107
92,107,153,155,170
93,108,107,170,169
94,109,108,169,168
95,110,109,168,167
*ELEMENT,TYPE=CPE4
1,1,2,15,14
58,56,57,73,72
67,66,67,83,82
101,88,89,116,115

85
115,115,116,130,129
167,157,158,181,180
96,86,87,112,111
97,111,112,114,113
110,113,114,126,125
111,125,126,128,127
124,127,128,140,139
125,139,140,142,141
138,141,142,154,153
139,153,154,156,155
152,167,168,172,171
153,168,169,173,172
154,169,170,174,173
155,170,155,175,174
156,155,156,176,175
*ELGEN
1,12,1,1,4,13,12
58,9,1,1
67,15,1,1
101,9,1,1
115,9, I, I, 3, 14,14
167,9,1,1
*ELEMENT,TYPE=CPE3
98,112,115,114
99,112,88,115
100,87,88,112
112,126,129,128
113,126,115,129
114,114,115,126
157,171,172,177
158,172,178,177
159,172,173,178
160,173,174,178
161,174,179,178
162,174,175,179
163,175,176,179
164,176,180,179
165,176,157,180
166,156,157,176
49,53,67,66
50,53,54,67
51,54,68,67
52,54,69,68
53,54,55,69
54,69,55,70
55,55,71,70
56,55,56,71
57,71,56,72
*ELGEN
112,3,14,14
113,3,14,14
114,3,14,14
*ELEMENT,TYPE=CPE4
176,177,178,191,190
*ELGEN
176,12,1,1,19,13,12
*ELSET,ELSET=Fl,GENERATE
1,12
*ELSET, ELSET=F2, GENERATE
l3,24
*ELSET, ELSET=F3, GENERATE
25,36
*ELSET,ELSET=F4,GENERATE

86
37,48
*ELSET,ELSET=F5,GENERATE
49,66
*ELSET, ELSET=F6, GENERATE
67,81
*ELSET, ELSET=LACOM, GENERATE
96,102
*ELSET, ELSET=LBCOM, GENERATE
110,116
*ELSET, ELSET=LCCOM, GENERATE
124,130
*ELSET,ELSET=LDCOM,GENERATE
138,144
*ELSET, ELSET=LA, GENERATE
103,109
*ELSET,ELSET=LB,GENERATE
117,123
*ELSET, ELSET=LC, GENERATE
131,137
*ELSET,ELSET=LD,GENERATE
145,151
*ELSET, ELSET=L1, GENERATE
152,175
*ELSET,ELSET=L2,GENERATE
176,187
*ELSET, ELSET=L3, GENERATE
188,199
*ELSET,ELSET=L4,GENERATE
200,211
*ELSET,ELSET=L5,GENERATE
212,223
*ELSET, ELSET=L6, GENERATE
224,235
*ELSET, ELSET=L7, GENERATE
236,247
*ELSET,ELSET=L8,GENERATE
248,259
*ELSET,ELSET=L9,GENERATE
260,271
*ELSET, ELSET=LI0, GENERATE
272,283
*ELSET,ELSET=Ll1,GENERATE
284,295
*ELSET, ELSET=LI2, GENERATE
296,307
*ELSET,ELSET=L13,GENERATE
308,319
*ELSET,ELSET=L14,GENERATE
320,331
*ELSET,ELSET=L15,GENERATE
332,343
*ELSET,ELSET=LI6,GENERATE
344,355
*ELSET,ELSET=LI7,GENERATE
356,367
*ELSET, ELSET=L18, GENERATE
368,379
*ELSET,ELSET=L19,GENERATE
380,391
*ELSET, ELSET=L20, GENERATE
392,403
*ELSET,ELSET=CHECKEL
152,153,154,155,156,

87
92,93,94,95,
96,97,110,111,124,125,138,139
*SOL10 SECT10N,ELSET=L1,MATER1AL=L1
*SOL10 SECT10N,ELSET=L2,MATER1AL=L2
*SOL1D SECT10N,ELSET=L3,MATER1AL=L3
*SOL10 SECT10N,ELSET=L4,MATER1AL=L4
*SOL10 SECT10N,ELSET=L5,MATER1AL=L5
*SOL10 SECT10N,ELSET=L6,MATER1AL=L6
*SOL10 SECT10N,ELSET=L7,MATER1AL=L7
*SOL10 SECT10N,ELSET=L8,MATER1AL=L8
*SOL10 SECT10N,ELSET=L9,MATER1AL=L9
*SOL10 SECT10N,ELSET=L10,MATER1AL=L10
*SOL10 SECT10N,ELSET=L11,MATER1AL=L11
*SOL1D SECT10N,ELSET=L12,MATER1AL=L12
*SOL1D SECT10N,ELSET=L13,MATER1AL=L13
*SOL1D SECT10N,ELSET=L14,MATER1AL=L14
*SOL1D SECT10N,ELSET=L15,MATER1AL=L15
*SOL10 SECT10N,ELSET=L16,MATER1AL=L16
*SOL1D SECT10N,ELSET=L17,MATER1AL=L17
*SOL1D SECT10N,ELSET=L18,MATER1AL=L18
*SOL1D SECT10N,ELSET=L19,MATER1AL=L19
*SOL1D SECT10N,ELSET=L20,MATER1AL=L20
*SOL1D SECT10N,ELSET=LA,MATER1AL=LA
*SOL10 SECT10N,ELSET=LB,MATER1AL=LB
*SOL10 SECT10N,ELSET=LC,MATER1AL=LC
*SOL10 SECT10N,ELSET=LO,MATER1AL=LO
*SOL1D SECT10N,ELSET=LACOM,MATER1AL=LACOM
*SOL10 SECT10N,ELSET=LBCOM,MATER1AL=LBCOM
*SOL10 SECT10N,ELSET=LCCOM,MATER1AL=LCCOM
*SOL1D SECT10N,ELSET=LDCOM,MATER1AL=LDCOM
*SOL10 SECT10N,ELSET=F1,MATER1AL=F1
*SOL1D SECT10N,ELSET=F2,MATER1AL=F2
*SOL1D SECT10N,ELSET=F3,MATER1AL=F3
*SOL10 SECT10N,ELSET=F4,MATER1AL=F4
*SOL1D SECT10N,ELSET=F5,MATER1AL=F5
*SOL10 SECT10N,ELSET=F6,MATER1AL=F6
*MATER1AL,NAME=L20
*ELAST1C
238.,0.425
*DENS1TY
0.125
*MATER1AL,NAME=L19
*ELAST1C
313.,0.401
*DENS1TY
0.125
*MATER1AL,NAME=L18
*ELAST1C
356.,0.388
*OENS1TY
0.125
*MATERIAL,NAME=L17
*ELASTIC
387.,0.378
*OENS1TY
0.125
*MATERIAL,NAME=L16
*ELASTIC
412.,0.370
*DENSITY
0.125
*MATERIAL,NAME=L15
*ELAST1C

88
433.,0.364
*DENSITY
0.125
*MATERIAL,NAME=L14
*ELASTIC
452.,0.358
*DENSITY
0.125
*MATERIAL,NAME=L13
*ELASTIC
468.,0.353
*DENSITY
0.125
*MATERIAL,NAME=L12
*ELASTIC
483.,0.348
*DENSITY
0.125
*MATERIAL,NAME=L11
*ELASTIC
497.,0.344
*DENSITY
0.125
*MATERIAL,NAME=L10
*ELASTI.C
509.,0.340
*DENSITY
0.125
*MATERIAL,NAME=L9
*ELASTIC
521.,0.336
*DENSITY
0.125
*MATERIAL,NAME=L8
*ELASTIC
532.,0.332
*DENSITY
0.125
*MATERIAL,NAME=L7
*ELASTIC
542.,0.329
*DENSITY
0.125
*MATERIAL,NAME=L6
*ELASTIC
552.,0.326
*DENSITY
0.125
*MATERIAL,NAME=L5
*ELASTIC
561.,0.323
*DENSITY
0.125
*MATERIAL,NAME~L4
*ELASTIC
570.,0.320
*DENSITY
0.125
*MATERIAL,NAME=L3
*ELASTIC
578.,0.318
*DENSITY
0.125

89
*MATERIAL,NAME=L2
*ELASTIC
587.,0.315
*DENSITY
0.125
*MATERIAL,NAME=L1
*ELASTIC
592.,0.313
*DENSITY
0.125
*MATERIAL,NAME=LD
*ELASTIC
595.,0.313
*DENSITY
0.125
*MATERIAL,NAME=LC
*ELASTIC
598.,0.312
*DENSITY
0.125
*MATERIAL,NAME=LB
*ELASTIC
601.,0.311
*DENSITY
0.125
*MATERIAL,NAME=LA
*ELASTIC
604.,0.310
*DENSITY
0.125
*MATERIAL,NAME=LDCOM
*ELASTIC
595.,0.313
*DENSITY
0.125
*MATERIAL,NAME=LCCOM
*ELASTIC
598.,0.312
*DENSITY
0.125
*MATERIAL,NAME=LBCOM
*ELASTIC
601.,0.311
*DENSITY
0.125
*MATERIAL,NAME=LACOM
"ELASTIC
604.,0.310
"DENSITY
0.125
*MATERIAL,NAME=F6
*ELASTIC
353.,0.450
*DENSITY
0.126
*MATERIAL,NAME=F5
*ELASTIC
362.,0.450
*DENSITY
0.126
*MATERIAL,NAME=F4
"ELASTIC
376.,0.450

90

I ,
*DENSITY
0.126
*MATERIAL,NAME=F3
*ELASTIC
400.,0.450
*DENSITY
0.126
*MATERIAL,NAME=F2
*ELASTIC
431.,0.450
*DENSITY
0.126
*MATERIAL,NAME=F1
*ELASTIC
465.,0.450
*DENSITY
0.126
*SOLID SECTION,ELSET=CULV,MATERIAL=CULV
*MATERIAL,NAME=CULV
*ELASTIC
519120,0.250
*DENSITY
0.15
*STEP
1ST ANALYSIS
*STATIC
*BOUNDARY
BOTTOMBC,1,2
SIDESBC,l
*DLOAD
F1, GRAV,1.0,0.,-1.,0.
F2, GRAV,1.0,0.,-1.,0.
F3, GRAV,1.0,0.,-1.,0.
F4, GRAV,1.0,0.,-1.,0.
F5, GRAV,l.0,O.,-1.,0.
F6, GRAV,l.0,0.,-1.,0.
CULV, GRAV,l.0,0.,-1.,0.
*MODEL CHANGE, REMOVE
LA,LB,LC,LD,LACOM,LBCOM,LCCOM,LDCOM,
L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,
L11,L12,L13,L14,L15,L16,L17,L18,L19,L20
*NODE PRINT,NSET=CHECKNO
U, RF
*EL PRINT,ELSET=CHECKEL,POSITION=CENTROIDAL
S,E
*NODE FILE, NSET=CHECKNO
U
*EL FILE, ELSET=CHECKEL
S,E
*END STEP
*STEP
add construction layer LB
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
LA,LACOM,
*DLOAD,OP=MOD
LA, GRAV, 1.0, 0., -1., O.
LACOM, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer LB
*STATIC
*MODEL CHANGE,ADD=STRAINFREE

91
LB,LBCOM,
*DLOAD,OP=MOD
LB, GRAV, 1. 0, 0., -1., O.
LBCOM, GRAV, 1.0, D., -1., D.
*END STEP
*STEP
add construction layer LC
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
LC,LCCOM,
*DLOAD,OP=MOD
LC, GRAV, 1. 0, 0., -1., O.
LCCOM, GRAV, 1.0, D., -1., O.
*END STEP
*STEP
add construction layer LD
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
LD,LDCOM
*DLOAD,OP=MOD
LD, GRAV, 1.0,0., -1., O.
LDCOM, GRAV, 1.0, D., -1., O.
*END STEP
*STEP
add 1st construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L1,
*DLOAD,OP=MOD
L1, GRAV, 1.0, 0., -1., O.
*END STEP
"'STEP
add 2nd construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L2,
*DLOAD,OP=MOD
L2, GRAV, 1. 0, 0., -1., O.
"'END STEP
*STEP
add 3rd construction layer
"'STATIC
*MODEL CHANGE,ADD=STRAINFREE
L3,
*DLOAD,OP=MOD
L3, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add 4th construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L4,
*DLOAD,OP=MOD
L4, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add 5th construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L5,
*DLOAD,OP=MOD
L5, GRAV, 1.0, 0., -1., O.
*END STEP

92
*STEP
add 6th construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L6,
*DLOAD,OP=MOD
L6, GRAV, 1.0, 0., -1., D.
*END STEP
*STEP
add 7th construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L7,
"DLOAD,OP=MOD
L7, GRAV, 1.0, D., -1., O.
*END STEP
*STEP
add 8th construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
La,
*DLOAD,OP=MOD
L8, GRAV, 1.0, 0., -1., o.
"END STEP
*STEP
add 9th construction layer
"STATIC
*MODEL CHANGE,ADD=STRAINFREE
L9,
*DLOAD,OP=MOD
L9, GRAV, 1. 0, D., -1., O.
*END STEP
"STEP
add 11th construction layer
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
LID,
*DLOAD,OP=MOD
LI0, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer Lll
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
Lll,
*DLOAD,OP=MOD
LlI, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer Ll2
"STATIC
*MODEL CHANGE,ADD=STRAINFREE
L12,
*DLOAD,OP=MOD
L12, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer Ll3
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L13,
"DLOAD,OP=MOD
L13, GRAV, 1.0, 0., -1., O.

93
*END STEP
*STEP
add construction layer L14
*STATIC
*MODEL CHANGE,ADD~STRAINFREE
114,
*D10AD,OP=MOD
114, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer 115
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
115,
*DLOAD,OP=MOD
L15, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer L16
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L16,
*DLOAD,OP=MOD
L16, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer L17
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L17,
*DLOAD,OP=MOD
L17, GRAV, 1. 0, 0., -1., O.
*END STEP
*STEP
add construction layer L18
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L18,
*DLOAD,OP=MOD
L18, GRAV, 1.0, 0., -1., o.
*END STEP
*STEP
add construction layer L19
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L19,
*DLOAD,OP=MOD
L19, GRAV, 1.0, 0., -1., O.
*END STEP
*STEP
add construction layer L20
*STATIC
*MODEL CHANGE,ADD=STRAINFREE
L20,
*DLOAD,OP=MOD
L20, GRAV, 1.0, 0., -1., O.
*END STEP

94
APPENDIXB

TYPICAL INPUT for ISBILD

CULVERT ANALYSIS
403,436,81,97,14,30,4,24,0,0,1,872,
2.116,
1,0.126, 78., 78.,1.24,0.0077,0.50,0.0014,0.0,26 . ,0.92,0.5,
2,0.125,300.,300.,0.25,6.2000,0.26,0.0400,0.0,32.,0.70,0.0,
3,0.125,300.,300.,0.25,6.2000,0.26,0.0400,0.0,32.,0.70,0.0,
4,0.150,245330.,245330.,0.01,6.2,0.26,0.04,0.8,89.,0.63,0.,
1, 0., -40.000, 1, 1,
2, 2.0000, -40.000, 1, 1,
3, 4.0000, -40.000, 1,1,
4, 6.0000, -40.000, 1, 1,
5, 10.000, -40.000, 1,1,
6, 16.000, -40 . 000, 1,1,
7, 24.000, -40.000, I, 1,
8, 32.333, -40.000, 1, 1,
9, 40.667, -40.000, 1,1,
10, 49.000, -40.000, 1, 1,
11, 57.333, -40.000, 1,1,
12, 65.667, -40.000, 1, 1,
13, 74.000, -40.000, 1, 1,
14, 0., -33.000, 1,
15, 2.0000, -33.000,
16, 4.0000, -33.000,
17, 6.0000, -33.000,
18, 10.000, -33.000,
19, 16.000, -33.000,
20, 24.000, -33.000,
21, 32.333, -33.000,
22, 40.667, -33.000,
23, 49.000, -33.000,
24, 57.333, -33.000,
25, 65.667, -33.000,
26, 74.000, -33.000, 1,
27, 0., -26.000, 1,
28, 2.0000, -26.000,
29, 4.0000, -26.000,
30, 6.0000, -26.000,
31, 10.000, -26 . 000,
32, 16.000, -26.000,
33, 24.000, -26.000,
34, 32.333, -26.000,
35, 40.667, -26 . 000,
36, 49.000, -26.000,
37, 57.333, -26.000,
38, 65.667, -26.000,
39, 74.000, -26.000, 1,
40, 0., -19.000, 1,
41, 2.0000, -19.000,
42, 4.0000, -19.000,
43, 6.0000, -19.000,
44, 10.000, -19.000,
45, 16.000, -19.000,
46, 24.000, -19.000,
47, 32.333, -19.000,
48, 40.667, -19.000,
49, 49.000, -19.000,
50, 57.333, -19.000,

95
51, 65.667, -19.000,
52, 74.000, -19.000, 1,
53, O. , -12.000, 1,
54, 2.0000, -12.000,
55, 4.0000, -12.000,
56, 6.0000, -12.000,
57, 10.000, -12.000,
58, 16.000, -12.000,
59, 24.000, -12.000,
60, 32.333, -12.000,
61, 40.667, -12.000,
62, 49.000, -12.000,
63, 57.333, -12.000,
64, 65.667, -12.000,
65, 74.000, -12.000, 1,
66, O. , -10.000, 1,
67, 1. 0000, -10.000,
68, 2.0000, -10.000,
69, 3.0000, -10.000,
70, 4.0000, -10.000,
71, 5.0000, -10.000,
72, 6.0000, -10.000,
73, 10.000, -10. 000,
74, 16.000, -10.000,
75, 24.000, -10.000,
76, 32.333, -10.000,
77, 40.667, -10.000,
78, 49.000, -10.000,
79, 57.333, -10.000,
80, 65.667, -10.000,
81, 74.000, -10.000, 1,
82, O. , -8.0000, 1,
83, 1. 0000, -8.0000,
84, 2.0000, -8.0000,
85, 3.0000, -8.0000,
86, 4.0000, -8.0000,
87, 5.0000, -8.0000,
88, 6.0000, -8.0000,
89, 10.000, -8.0000,
90, 16.000, -8.0000,
91, 24.000, -8.0000,
92, 32.333, -8.0000,
93, 40.667, -8.0000,
94, 49.000, -8.0000,
95, 57.333, -8.0000,
96, 65.667, -8.0000,
97, 74.000, -8.0000, 1,
98, O. , -7.0000, 1,
99, 1. 0000, -7.0000,
100, 2.0000, -7.0000,
101, 3.0000, -7.0000,
102, 3.0000, -6.0000,
103, 3.0000, -5.0000,
104, 3.0000, -4.0000,
105, 3.0000, -3.0000,
106, 3.0000, -2.0000,
107, 3.0000, -1.0000,
108, 2.0000, -1.0000,
109, 1.0000, -1.0000,
110, O. , -1.0000, 1,
Ill, 4.0000, -7.0000,
112, 5.0000, -7.0000,
113, 4.0000, -6.0000,

96
114, 5.0000, -6.0000,
115, 6.0000, -6.0000,
116, 10.000, -6.0000,
117, 16.000, -6.0000,
118, 24.000, -6.0000,
119, 32.333, -6.0000,
120, 40.667, -6.0000,
121, 49.000, -6.0000,
122, 57.333, -6.0000,
123, 65.667, -6.0000, ,
124, 74.000, -6.0000, 1,
125, 4.0000, -5.0000,
126, 5.0000, -5.0000,
127, 4.0000, -4.0000,
128, 5.0000, -4.0000,
129, 6.0000, -4.0000,
130, 10.000, -4.0000,
131, 16.000, -4.0000,
132, 24.000, -4.0000,
133, 32.333, -4.0000,
134, 40.667, -4.0000,
135, 49.000, -4.0000,
136, 57.333, -4.0000,
137, 65.667, -4.0000,
138, 74.000, -4.0000, 1,
139, 4.0000, -3.0000,
140, 5.0000, -3.0000,
141, 4.0000, -2.0000,
142, 5.0000, -2.0000,
143, 6.0000, -2.0000,
144, 10.000, -2.0000,
145, 16.000, -2.0000,
146, 24.000, -2.0000,
147, 32.333, -2.0000,
148, 40.667, -2.0000,
149, 49.000, -2.0000,
150, 57.333, -2.0000,
151, 65.667, -2.0000,
152, 74.000, -2.0000, 1,
153, 4.0000, -1.0000,
154, 5.0000, -1. 0000,
155, 4.0000, o. ,
156, 5.0000, O. ,
157, 6.0000, o. ,
158, 10.000, O. ,
159, 16.000, o. ,
160, 24.000, o. ,
161, 32.333, o. ,
162, 40.667, o. ,
163, 49.000, O. ,
164, 57.333, o. ,
165, 65.667, o. ,
166, 74.000, O. , 1,
167, o. , o. , 1,
168, 1. 0000, o. ,
169, 2.0000, o. ,
170, 3.0000, o. ,
171, o. , 1.0000, 1,
172, 1.0000, 1.0000,
173, 2.0000, 1.0000,
174, 3.0000, 1.0000,
175, 4.0000, 1.0000,
176, 5.0000, 1.0000,

97
177, o. , 2.0000, 1,
178, 2.0000, 2.0000,
179, 4.0000, 2.0000,
180, 6.0000, 2.0000,
181, 10.000, 2.0000,
182, 16.000, 2.0000,
183, 24.000, 2.0000,
184, 32.333, 2.0000,
185, 40.667, 2.0000,
186, 49.000, 2.0000,
187, 57.333, 2.0000,
188, 65.667, 2.0000,
189, 74.000, 2.0000, 1,
190, O. , 7.1579, 1,
191, 2.0000, 7.1579,
192, 4.0000, 7.1579,
193, 6.0000, 7.1579,
194, 10.000, 7.1579,
195, 16.000, 7.1579,
196, 24.000, 7.1579,
197, 32.333, 7.1579,
198, 40.667, 7.1579,
199, 49.000, 7.1579,
200, 57.333, 7.1579,
201, 65.667, 7.1579,
202, 74.000, 7.1579, 1,
203, O. , 12.316, 1,
204, 2.0000, 12.316,
205, 4.0000, 12.316,
206, 6.0000, 12.316,
207, 10.000, 12.316,
208, 16.000, 12.316,
209, 24.000, 12.316,
210, 32.333, 12.316,
211, 40.667, 12.316,
212, 49.000, 12.316,
213, 57.333, 12.316,
214, 65.667, 12.316, ,
215, 74.000, 12.316, 1,
216, O. , 17.474, 1,
217, 2.0000, 17.474,
218, 4.0000, 17.474,
219, 6.0000, 17.474,
220, 10.000, 17.474,
221, 16.000, 17.474,
222, 24.000, 17.474,
223, 32.333, 17.474,
224, 40.667, 17.474,
225, 49.000, 17.474,
226, 57.333, 17.474,
227, 65.667, 17.474, ,
228, 74.000, 17.474, 1,
229, O. , 22.632, 1,
230, 2.0000, 22.632,
231, 4.0000, 22.632,
232, 6.0000, 22.632,
233, 10.000, 22.632,
234, 16.000, 22.632,
235, 24.000, 22.632,
236, 32.333, 22.632,
237, 40.667, 22.632,
238, 49.000, 22.632,
239, 57.333, 22.632,

98
240, 65.667, 22.632, ,
241, 74.000, 22.632, 1,
242, 0. , 27.789, 1,
243, 2.0000, 27.789,
244, 4.0000, 27.789,
245, 6.0000, 27.789,
246, 10.000, 27.789,
247, 16.000, 27.789,
248, 24.000, 27.789,
249, 32.333, 27.789,
250, 40.667, 27.789,
251, 49.000, 27.789,
252, 57.333, 27.789,
253, 65.667, 27.789,
254, 74.000, 27.789, I,
255, O. , 32.947, 1,
256, 2.0000, 32.947,
257, 4.0000, 32.947,
258, 6.0000, 32.947,
259, 10.000, 32.947,
260, 16.000, 32.947,
261, 24.000, 32.947,
262, 32.333, 32.947,
263, 40.667, 32.947,
264, 49.000, 32.947,
265, 57.333, 32.947,
266, 65.667, 32.947, ,
267, 74.000, 32.947, 1,
268, 0. , 38.105, 1,
269, 2.0000, 38.105,
270, 4.0000, 38.105,
271, 6.0000, 38.105,
272, 10.000, 38.105,
273, 16.000, 38.105,
274, 24.000, 38.105,
275, 32.333, 38.105,
276, 40.667, 38.105,
277, 49.000, 38.105,
278, 57.333, 38.105,
279, 65.667, 38.105, ,
280, 74.000, 38.105, 1,
281, 0. , 43.263, 1,
282, 2.0000, 43.263,
283, 4.0000, 43.263,
284, 6.0000, 43.263,
285, 10.000, 43.263,
286, 16.000, 43.263,
287, 24.000, 43.263,
288, 32.333, 43.263,
289, 40.667, 43.263,
290, 49.000, 43.263,
291, 57.333, 43.263,
292, 65.667, 43.263, ,
293, 74.000, 43.263, 1,
294, O. , 48.421, 1,
295, 2.0000, 48.421,
296, 4.0000, 48.421,
297, 6.0000, 48.421,
298, 10.000, 48.421,
299, 16.000, 48.421,
300, 24.000, 48.421,
301, 32.333, 48.421,
302, 40.667, 48.421,

99
303, 49.000, 48.421,
304, 57.333, 48.421,
305, 65.667, 48.421,
306, 74.000, 48.421, 1,
307, o. , 53.579, 1,
308, 2.0000, 53.579,
309, 4.0000, 53.579,
310, 6.0000, 53.579,
311, 10.000, 53.579,
312, 16.000, 53.579,
313, 24.000, 53.579,
314, 32.333, 53.579,
315, 40.667, 53.579,
316, 49.000, 53.579,
317, 57.333, 53.579,
318, 65.667, 53.579,
319, 74.000, 53.579, 1,
320, o. , 58.737, 1,
321, 2.0000, 58.737,
322, 4.0000, 58.737,
323, 6.0000, 58.737,
324, 10.000, 58.737,
325, 16.000, 58.737,
326, 24.000, 58.737,
327, 32.333, 58.737,
328, 40.667, 58.737,
329, 49.000, 58.737,
330, 57.333, 58.737,
331, 65.667, 58.737,
332, 74.000, 58.737, 1,
333, o. , 63.895, 1,
334, 2.0000, 63.895,
335, 4.0000, 63.895,
336, 6.0000, 63.895,
337, 10.000, 63.895,
338, 16.000, 63.895,
339, 24.000, 63.895,
340, 32.333, 63.895,
341, 40.667, 63.895,
342, 49.000, 63.895,
343, 57.333, 63.895,
344, 65.667, 63.895,
345, 74.000, 63.895, 1,
346, o. , 69.053, 1,
347, 2.0000, 69.053,
348, 4.0000, 69.053,
349, 6.0000, 69.053,
350, 10.000, 69.053,
351, 16.000, 69.053,
352, 24.000, 69.053,
353, 32.333, 69.053,
354, 40.667, 69.053,
355, 49.000, 69.053,
356, 57.333, 69.053,
357, 65.667, 69.053,
358, 74.000, 69.053, 1,
359, o. , 74.211, 1,
360, 2.0000, 74.211,
361, 4.0000, 74.211,
362, 6.0000, 74.211,
363, 10.000, 74.211,
364, 16.000, 74.211,
365, 24.000, 74.211,

100

.,
366, 32.333, 74.211,
367, 40.667, 74.211,
368, 49.000, 74.211,
369, 57.333, 74.211,
370, 65.667, 74.211,
371, 74.000, 74.211, 1,
372, o. , 79.368, 1,
373, 2.0000, 79.368,
374, 4.0000, 79.368,
375, 6.0000, 79.368,
376, 10.000, 79.368,
377, 16.000, 79.368,
378, 24.000, 79.368,
379, 32.333, 79.368,
380, 40.667, 79.368,
381, 49.000, 79.368,
382, 57.333, 79.368,
383, 65.667, 79.368,
384, 74.000, 79.368, 1,
385, O. , 84.526, 1,
386, 2.0000, 84.526,
387, 4.0000, 84.526,
388, 6.0000, 84.526,
389, 10.000, 84.526,
390, 16.000, 84.526,
391, 24.000, 84.526,
392, 32.333, 84.526,
393, 40.667, 84.526,
394, 49.000, 84.526,
395, 57.333, 84.526,
396, 65.667, 84.526,
397, 74.000, 84.526, 1,
398, o. , 89.684, 1,
399, 2.0000, 89.684,
400, 4.0000, 89.684,
401, 6.0000, 89.684,
402, 10.000, 89.684,
403, 16.000, 89.684,
404, 24.000, 89.684,
405, 32.333, 89.684,
406, 40.667, 89.684,
407, 49.000, 89.684,
408, 57.333, 89.684,
409, 65.667, 89.684,
410, 74.000, 89.684, 1,
411, o. , 94.842, 1,
412, 2.0000, 94.842,
413, 4.0000, 94.842,
414, 6.0000, 94.842,
415, 10.000, 94.842,
416, 16.000, 94.842,
417, 24.000, 94.842,
418, 32.333, 94.842,
419, 40.667, 94.842,
420, 49.000, 94.842,
421, 57.333, 94.842,
422, 65.667, 94.842, ,
423, 74.000, 94.842, 1,
424, O. , 100.00, 1,
425, 2.0000, 100.00,
426, 4.0000, 100.00,
427, 6.0000, 100.00,
428, 10.000, 100.00,

101
429, 16.000, 100.00,
430, 24.000, 100.00,
431, 32.333, 100.00,
432, 40.667, 100.00,
433, 49.000, 100.00,
434, 57.333, 100.00,
435, 65.667, 100.00, ,
436, 74.000, 100.00, 1,
1, 1, 2, 15, 14, 1,
2, 2, 3, 16, 15, 1,
3, 3, 4, 17, 16, 1,
4, 4, 5, 18, 17, 1,
5, 5, 6, 19, 18, 1,
6, 6, 7, 20, 19, 1,
7, 7, 8, 21, 20, 1,
8, 8, 9, 22, 21, 1,
9, 9, 10, 23, 22, 1,
10, 10, 11, 24, 23, 1,
11, 11, 12, 25, 24, 1,
12, 12, 13, 26, 25, 1,
13, 14, 15, 28, 27, 1,
14, 15, 16, 29, 28, 1,
15, 16, 17, 30, 29, 1,
16, 17, 18, 31, 30, 1,
17, 18, 19, 32, 31, 1,
18, 19, 20, 33, 32, 1,
19, 20, 21, 34, 33, 1,
20, 21, 22, 35, 34, 1,
21, 22, 23, 36, 35, 1,
22, 23, 24, 37, 36, 1,
23, 24, 25, 38, 37, 1,
24, 25, 26, 39, 38, 1,
25, 27, 28, 41, 40, 1,
26, 28, 29, 42, 41, 1,
27, 29, 30, 43, 42, 1,
28, 30, 31, 44, 43, 1,
29, 31, 32, 45, 44, 1,
30, 32, 33, 46, 45, 1,
31, 33, 34, 47, 46, 1,
32, 34, 35, 48, 47, 1,
33, 35, 36, 49, 48, 1,
34, 36, 37, 50, 49, 1,
35, 37, 38, 51, 50, 1,
36, 38, 39, 52, 51, 1,
37, 40, 41, 54, 53, 1,
38, 41, 42, 55, 54, 1,
39, 42, 43, 56, 55, 1,
40, 43, 44, 57, 56, 1,
41, 44, 45, 58, 57, 1,
42, 45, 46, 59, 58, 1,
43, 46, 47, 60, 59, 1,
44, 47, 48, 61, 60, 1,
45, 48, 49, 62, 61, 1,
46, 49, 50, 63, 62, 1,
47, 50, 51, 64, 63, 1,
48, 51, 52, 65, 64, 1,
49, 53, 67, 66, 66, 1,
50, 53, 54, 67, 67, 1,
51, 54, 68, 67, 67, 1,
52, 54, 69, 68, 68, 1,
53, 54, 55, 69, 69, 1,
54, 69, 55, 70, 70, 1,
55, 55, 71, 70, 70, 1,

102
56, 55, 56, 71, 71, I,
57, 71, 56, 72, 72, 1,
58, 56, 57, 73, 72, 1,
59, 57, 58, 74, 73, 1,
60, 58, 59, 75, 74, 1,
61, 59, 60, 76, 75, 1,
62, 60, 61, 77, 76, 1,
63, 61, 62, 78, 77, 1,
64, 62, 63, 79, 78, 1,
65, 63, 64, 80, 79, I,
66, 64, 65, 81, 80, I,
67, 66, 67, 8 3, 82, 1,
68, 67, 68, 84, 83, 1,
69, 68, 69, 85, 84, 1,
70, 69, 70, 86, 85, 1,
71, 70, 71, 87, 86, 1,
72, 71, 72, 88, 87, I,
73, 72, 73, 89, 88, 1,
74, 73, 74, 90, 89, I,
75, 74, 75, 91, 90, 1,
76, 75, 76, 92, 91, 1,
77, 76, 77, 93, 92, 1,
78, 77, 78, 94, 93, 1,
79, 78, 79, 95, 94, 1,
80, 79, 80, 96, 95, 1,
81, 80, 81, 97, 96, 1,
82, 82, 83, 99, 98, II ,
83, 83, 84, 100, 99, 4,
84, 84, 85, 101, 100, 4,
85, 85, 86, Ill, 101, 4,
86, 101, Ill, 113, 102, 1/ ,
87, 102, 1l3, 125, 103, II ,
88, 103, 125, 127, 104, I! ,
89, 104, 127, 139, 105, 4,
90, 105, 139, 141, 106, 4,
91, 106, 141, 15 3 , 107, 4,
92, 107, 153, 155, 170, 1/ ,
93, 108, 107, 170, 169, 4,
94, 109, 108, 169, 168, 1/ ,
95, 110, 109, 168, 167, 1/ ,
96, 86, 87, 1 12, 111, 3,
97, 111, 112, 114, 113, 3,
98, 112, 115, 114, 114, 3,
99, 112, 88 , 115, 115, 3,
100, 87, 88, 112, 112, 3,
101, 88, 89, 116, 115, 3,
102, 89, 90, 117, 116, 3,
103, 90, 91, 118, 117, 2,
104, 91, 92, 119, 118, 2,
105, 92, 93, 1 2 0, 119, 2,
106, 93, 94, 121, 120, 2,
107, 94, 95, 122, 121, 2,
108, 95, 96, 123, 122, 2,
109, 96, 97, 124, 123, 2,
110, 113, 114, 126, 125, 3,
111, 125, 126, 128, 127, 3,
112, 126, 1 2 9, 128, 128, 3,
113, 126, 115, 129, 129, 3,
114, 114, 115, 126, 126, 3,
115, 115, 116, l30, 129, 3,
116, 116, 117, 131, 130, 3,
117, 117, 118, 132, 131, 2,
118, 118, 119, 133, 132, 2,

103
119, 119, 120, 134, 133, 2,
120, 120, 121, 135, 134, 2,
121, 121, 122, 136, 135, 2,
122, 122, 123, 137, 136, 2,
123, 123, 124, 138, 137, 2,
124, 127, 128, 140, 139, 3,
125, 139, 140, 142, 141, 3,
126, 140, 143, 142, 142, 3,
127, 140, 129, 143, 143, 3,
128, 128, 129, 140, 140, 3,
129, 129, 130, 144, 143, 3,
130, 130, 131, 145, 144, 3,
131, 131, 132, 146, 145, 2,
132, 132, 133, 147, 14 6, 2,
133, 133, 134, 148, 147, 2,
134, 134, 135, 149, 148, 2,
135, 135, 136, 150, 149, 2,
136, 136, 137, 151, 150, 2,
137, 137, 138, 152, 151, 2,
138, 141, 142, 154, 153, 3,
139, 153, 154, 156, 155, 3,
140, 154, 157, 156, 156, 3,
141, 154, 143, 157, 157, 3,
142, 142, 143, 154, 154, 3,
143, 143, 144, 158, 157, 3,
144, 144, 145, 159, 158, 3,
145, 145, 146, 160, 159, 2,
146, 146, 147, 161, 160, 2,
147, 147, 148, 162, 161, 2,
148, 148, 149, 163, 162, 2,
149, 149, ISO, 164, 163, 2,
150, 150, 151, 165, 164, 2,
151, 151, 152, 166, 165, 2,
152, 167, 168, 172, 171, 2,
153, 168, 169, 173, 172, 2,
154, 169, 170, 174, 173, 2,
155, 170, ISS, 175, 174, 2,
156, 155, 156, 176, 175, 2,
157, 171, 172, 177, 177, 2,
158, 172, 178, 177, 177, 2,
159, 172, 173, 178, 178, 2,
160, 173, 174, 178, 178, 2,
161, 174, 179, 178, 178, 2,
162, 174, 175, 179, 179, 2,
163, 175, 176, 179, 179, 2,
164, 176, 180, 179, 179, 2,
165, 176, 157, 180, 180, 2,
166, 156, 157, 176, 176, 2,
167, 157, 158, 181, 180, 2,
168, 158, 159, 182, 181, 2,
169, 159, 160, 183, 182, 2,
170, 160, 161, 184, 183, 2,
171, 161, 162, 185, 184, 2,
172, 162, 163, 186, 185, 2,
173, 163, 164, 187, 186, 2,
174, 164, 165, 188, 187, 2,
175, 165, 166, 189, 188, 2,
176, 177, 178, 191, 19O, 2,
177, 178, 179, 192, 191, 2,
178, 179, 180, 193, 192, 2,
179, 180, 181, 194, 193, 2,
18O, 181, 182, 195, 194, 2,
181, 182, 183, 196, 195, 2,

104
182, 183, 184, 197, 196, 2,
183, 184, 185, 198, 197, 2,
184, 185, 186, 199, 198, 2,
185, 186, 187, 200, 199, 2,
186, 187, 188, 201, 200, 2,
187, 188, 189, 202, 201, 2,
188, 190, 191, 204, 203, 2,
189, 191, 192, 205, 204, 2,
190, 192, 193, 206, 205, 2,
191, 193, 194, 207, 206, 2,
192, 194, 195, 208, 207, 2,
193, 195, 196, 209, 208, 2,
194, 196, 197, 210, 209, 2,
195, 197, 198, 211, 210, 2,
196, 198, 199, 212, 211, 2,
197, 199, 200, 213, 212, 2,
198, 200, 201, 214, 213, 2,
199, 201, 202, 215, 214, 2,
200, 203, 204, 217, 216, 2,
201, 204, 205, 218, 217, 2,
202, 205, 206, 219, 218, 2,
203, 206, 207, 220, 219, 2,
204, 207, 208, 221, 220, 2,
205, 208, 209, 222, 221, 2,
206, 209, 210, 223, 222, 2,
207, 210, 211, 224, 223, 2,
208, 211, 212, 225, 224, 2,
209, 212, 213, 226, 225, 2,
210, 213, 214, 227, 226, 2,
211, 214, 215, 228, 227, 2,
212, 216, 217, 230, 229, 2,
213, 217, 218, 231, 230, 2,
214, 218, 219, 232, 231, 2,
215, 219, 220, 233, 232, 2,
216, 220, 221, 234, 233, 2,
217, 221, 222, 235, 234, 2,
218, 222, 223, 236, 235, 2,
219, 223, 224, 237, 236, 2,
220, 224, 225, 238, 237, 2,
221, 225, 226, 239, 238, 2,
222, 226, 227, 240, 239, 2,
223, 227, 228, 241, 24O, 2,
224, 229, 230, 243, 242, 2,
225, 230, 231, 244, 243, 2,
226, 231, 232, 245, 244, 2,
227, 232, 233, 246, 245, 2,
228, 233, 234, 247, 246, 2,
229, 234, 235, 248, 247, 2,
230, 235, 236, 249, 248, 2,
231, 236, 237, 250, 249, 2,
232, 237, 238, 251, 250, 2,
233, 238, 239, 252, 251, 2,
234, 239, 240, 253, 252, 2,
235, 240, 241, 254, 253, 2,
236, 242, 243, 256, 255, 2,
237, 243, 244, 257, 256, 2,
238, 244, 245, 258, 257, 2,
239, 245, 246, 259, 258, 2,
240, 246, 247, 260, 259, 2,
241, 247, 248, 261, 260, 2,
242, 248, 249, 262, 261, 2,
243, 249, 250, 263, 262, 2,
244, 250, 251, 264, 263, 2,

105
245, 251, 252, 265, 264, 2,
246, 252, 253, 266, 265, 2,
247, 253, 254, 267, 266, 2,
248, 255, 256, 269, 268, 2,
249, 256, 257, 270, 269, 2,
250, 257, 258, 271, 270, 2,
251, 258, 259, 272, 271, 2,
252, 259, 260, 273, 272, 2,
253, 260, 261, 274, 273, 2,
254, 261, 262, 275, 274, 2,
255, 262, 263, 276, 275, 2,
256, 263, 264, 277, 276, 2,
257, 264, 265, 278, 277, 2,
258, 265, 266, 279, 278, 2,
259, 266, 267, 280, 279, 2,
260, 268, 269, 282, 281, 2,
261, 269, 270, 283, 282, 2,
262, 270, 271, 284, 283, 2,
263, 271, 272, 285, 284, 2,
264, 272, 273, 286, 285, 2,
265, 273, 274, 287, 286, 2,
266, 274, 275, 288, 287, 2,
267, 275, 276, 289, 288, 2,
268, 276, 277, 290, 289, 2,
269, 277, 278, 291, 290, 2,
270, 278, 279, 292, 291, 2,
271, 279, 280, 293, 292, 2,
272, 281, 282, 295, 294, 2,
273, 282, 283, 296, 295, 2,
274, 283, 284, 297, 296, '2 ,
275, 284, 285, 298, 297, 2,
276, 285, 286, 299, 298, 2,
277, 286, 287, 300, 299, 2,
278, 287, 288, 301, 300, 2,
279, 288, 289, 302, 301, 2,
280, 289, 290, 303, 302, 2,
281, 290, 291, 304, 303, 2,
282, 291, 292, 305, 304, 2,
283, 292, 293, 306, 305, 2,
284, 294, 295, 308, 307, 2,
285, 295, 296, 309, 308, 2,
286, 296, 297, 310, 309, 2,
287, 297, 298, 311, 310, 2,
288, 298, 299, 312, 311, 2,
289, 299, 300, 313, 312, 2,
290, 300, 301, 314, 313, 2,
291, 301, 302, 315, 314, 2,
292, 302, 303, 316, 315, 2,
293, 303, 304, 317, 316, 2,
294, 304, 305, 318, 317, 2,
295, 305, 306, 319, 318, 2,
296, 307, 308, 321, 320, 2,
297, 308, 309, 322, 321, 2,
298, 309, 310, 323, 322, 2,
299, 310, 311, 324, 323, 2,
300, 311, 312, 325, 324, 2,
301, 312, 313, 326, 325, 2,
302, 313, 314, 327, 326, 2,
303, 314, 315, 328, 327, 2,
304, 315, 316, 329, 328, 2,
305, 316, 317, 330, 329, 2,
306, 317, 318, 331, 330, 2,
307, 318, 319, 332, 331, 2,

106
308, 320, 321, 334, 333, 2,
309, 321, 322, 335, 334, 2,
310, 322, 323, 336, 335, 2,
311, 323, 324, 337, 336, 2,
312, 324, 325, 338, 337, 2,
313, 325, 326, 339, 338, 2,
314, 326, 327, 340, 339, 2,
315, 327, 328, 341, 340, 2,
316, 328, 329, 342, 341, 2,
317, 329, 330, 343, 342, 2,
318, 330, 331, 344, 343, 2,
319, 331, 332, 345, 344, 2,
320, 333, 334, 347, 346, 2,
321, 334, 335, 348, 347, 2,
322, 335, 336, 349, 348, 2,
323, 336, 337, 350, 349, 2,
324, 337, 338, 351, 350, 2,
325, 338, 339, 352, 351, 2,
326, 339, 340, 353, 352, 2,
327, 340, 341, 354, 353, 2,
328, 341, 342, 355, 354, 2,
329, 342, 343, 356, 355, 2,
330, 343, 344, 357, 356, 2,
331, 344, 345, 358, 357, 2,
332, 346, 347, 360, 359, 2,
333, 347, 348, 361, 360, 2,
334, 348, 349, 362, 361, 2,
335, 349, 350, 363, 362, 2,
336, 350, 351, 364, 363, 2,
337, 351, 352, 365, 364, 2,
338, 352, 353, 366, 365, 2,
339, 353, 354, 367, 366, 2,
340, 354, 355, 368, 367, 2,
341, 355, 356, 369, 368, 2,
342, 356, 357, 370, 369, 2,
343, 357, 358, 371, 370, 2,
344, 359, 360, 373, 372, 2,
345, 360, 361, 374, 373, 2,
346, 361, 362, 375, 374, 2,
347, 362, 363, 376, 375, 2,
348, 363, 364, 377, 376, 2,
349, 364, 365, 378, 377, 2,
350, 365, 366, 379, 378, 2,
351, 366, 367, 380, 379, 2,
352, 367, 368, 381, 380, 2,
353, 368, 369, 382, 381, 2,
354, 369, 370, 383, 382, 2,
355, 370, 371, 384, 383, 2,
356, 372, 373, 386, 385, 2,
357, 373, 374, 387, 386, 2,
358, 374, 375, 388, 387, 2,
359, 375, 376, 389, 388, 2,
360, 376, 377, 390, 389, 2,
361, 377, 378, 391, 390, 2,
362, 378, 379, 392, 391, 2,
363, 379, 380, 393, 392, 2,
364, 380, 381, 394, 393, 2,
365, 381, 382, 395, 394, 2,
366, 382, 383, 396, 395, 2,
367, 383, 384, 397, 396, 2,
368, 385, 386, 399, 398, 2,
369, 386, 387, 400, 399, 2,
370, 387, 388, 401, 400, 2,

107
371, 388, 389, 402, 401, 2,
372, 389, 390, 403, 402, 2,
373, 390, 391, 404, 403, 2,
374, 391, 392, 405, 404, 2,
375, 392, 393, 406, 405, 2,
376, 393, 394, 407, 406, 2,
377, 394, 395, 408, 407, 2,
378, 395, 396, 409, 408, 2,
379, 396, 397, 410, 409, 2,
380, 398, 399, 412, 411, 2,
381, 399, 400, 413, 412, 2,
382, 400, 401, 414, 413, 2,
383, 401, 402, 415, 414, 2,
384, 402, 403, 416, 415, 2,
385, 403, 404, 417, 416, 2,
386, 404, 405, 418, 417, 2,
387, 405, 406, 419, 418, 2,
388, 406, 407, 420, 419, 2,
389, 407, 408, 421, 420, 2,
390, 408, 409, 422, 421, 2,
391, 409, 410, 423, 422, 2,
392, 411, 412, 425, 424, 2,
393, 412, 413, 426, 425, 2,
394, 413, 414, 427, 426, 2,
395, 414, 415, 428, 427, 2,
396, 415, 416, 429, 428, 2,
397, 416, 417, 430, 429, 2,
398, 417, 418, 431, 430, 2,
399, 418, 419, 432, 431, 2,
400, 419, 420, 433, 432, 2,
401, 420, 421, 434, 433, 2,
402, 421, 422, 435, 434, 2,
403, 422, 423, 436, 435, 2,
1, 96,109,111,124, 86,113,124, 97
2,110,123,125,138, 113,127,138,124
3,124,137,139,152, 127,141,152,138
4,138,151,153,166, 141,155,166,152
5,152,175,167,189, 167,177,189,166
6,176,187,190,202, 177,190,202,189
7,188,199,203,215, 190,203,215,202
8,200,211,216,228, 203,216,228,215
9,212,223,229,241, 216,229,241,228
10,224,235,242,254, 229,242,254,241
11,236,247,255,267, 242,255,267,254
12,248,259,268,280, 255,268,280,267
13,260,271,281,293, 268,281,293,280
14, 2 72,283,294,306, 281,294,306,293
15,284,295,307,319, 294,307,319,306
16,296,307,320,332, 307,320,332,319
17,308,319,333,345, 320,333,345,332
18,320,331,346,358, 333,346,358,345
19,332,343,359,371, 346,359,371,358
20,344,355,372,384, 359,372,384,371
21,356,367,385,397, 372,385,397,384
22,368,379,398,410, 385,398,410,397
23,380,391,411,423, 398,411,423,410
24,392,403,424,436, 411,424,436,423
82,83,84,85,86,87,88,89,90,91,92,93,94,95
82,83,84,85,86,98,99,100,101,102,103,104,105,106,107,
108,109,110,111,113,125,127,139,141,153,155,167,168,169,170
1,
82, 0.0, 0.0, 0.0
83, 0.0, 0.0, 0.0

108
84, 0.0, 0.0, 0.0
85, 0.0, 0.0, 0.0
86, 0.0, 0.0, 0.0
87, 0.0, O. 0, 0.0
88, 0.0, 0.0, 0.0
89, 0.0, 0.0, 0.0
90, O. 0, 0.0, 0.0
91, 0.0, o. 0, 0.0
92, 0.0, o. 0, 0.0
93, 0.0, 0.0, 0.0
94, 0.0, 0. 0, 0.0
95, o. 0, 0.0, 0.0
6,0 . 0
1,1, 1,12,8.0
2,1,13,24,8.0
3,1,25,36,7.0
4,1,37,48,5.0
5,1,49,66,2.0
6 , 1,67,81,2 . 0

109
APPENDIXC

TYPICAL INPUT for CANDE-89

ANALYS 2 CONCRE BOX CULVERT 8*6-8 (MEDIUM REINFORCED - H=77 FT) 2


-1. 0 10.0 STD 3 0.0001
4500.0 150.0 60000.0
10.0 10.0 10.0 10.0 0.0
.037 .050 .050 .017 1. 0
EMBA EMBANKMENT - STIFF SOIL
o 1 3 20 29.00 29.00 77.00 138.00 12.00
1 1 0.0 IN-SITU
100000.0 0.25
2 1 0.0 BEDDING-SOIL
4001.0 0.25
L 3 1 138.0 FILL SOIL
2000.0 0.25
STOP

110
OPEN (12,FILE-'f12',FORM='UNFORMATTED')
APPENDIXD OPEN (13,FILE='fI3',FORM='UNFORMATTED')
OPEN (14,FILE-'f14',FORM='UNFORMATTED'1
OPEN (lS,FILE='f1S',FORM='UNfORMATTEO'1
ISBILD SOURCE CODE C
OPEN (16,fILE='f16',fORM='UNFORMATTED')

100 READ (IN,1000,END=999) HEAD


READ (IN,*) NUMELT,NUMNPT,NFEL,NfNP,NUMCEL,NUMCNP,
1 NUMMAT,NLAY,NFORCE,NPUNCH,MPRINT,INEQ
THIS IS THE ORIGINAL ISBILD FINITE ELEMENT PROGRAM. SOME PRINTING CAN CALL SECOND (T(l»
C
BE AVOIDED BY INPUTTING A I(ONEI IN COLUMN 55 OF THE SECOND DATA CARD. WRITE (10,2000) HEAD
C
THIS VARIABLE (MPRINTI WAS ADDED BY DAN EATON WRITE (10,2010) NUMELT,NUMNPT,NFEL,NFNP,NUMCEL,NUMCNP,NUMMAT,NLAY,
C
DATA FOR CONTOUR MAPPING CAN BE OUTPUT TO UNIT 7 (SEARCH FOR **CNTUR**) 1 NFORCE
C
NUMLD=NLAY+NFORCE
C
PUNCH OUTPUT ARE STORED IN UNIT IF (NPUNCH .EQ. 0) GO TO 110
C WRITE (ro, 2020)
C
GO TO 120
C 110 WRITE (10,2030)
C NUMELT-TOTAL NUMBER OF ELEMENTS IN THE COMPLETED STRUCTURE
NUMNPT~TOTAL NUMBER Of NODAL POINTS IN THE COMPLETE STRUCTURE 120 CONTINUE
C
NFEL ~NUMBER OF ELEMENTS IN THE FOUNDATION PART C
C
NfNP =NUMBER Of NODAL POINTS IN THE FOUNDATION PART C BLOCK OUT VARIABLES IN A-VECTOR
C
C
C NUMCEL-NUMBER OF ELEMENTS IN THE PREEXISTING PART
NUMCNP~NUMBER OF NODAL POINTS IN THE PREEXISTING PART
Nl=l
C N2=Nl+INEQ
C NUMMAT=NUMBER OF DIFFERENT MATERIAL TYPES
NLAY =NUMBER OF CONSTRUCTION LAYER INCREMENTS N3=N2+2*NUMNPT
C N4=N3+S*NUMELT
C NFORCE-NUMBER OF LOAD INCREMENTS AFTER CONSTRUCTION
NPUNCH-NUMBER OF CONSTRUCTION LAYER INCREMENTS AND LOAD N5=N4+NUMCEL+l
C
INCREMENTS FOR WHICH OUTPUT IS TO BE STORED IN A FILE. FOR N6=N5+NUMCNP+l
C N7-N6+2*NUMLD
C EXAMPLE, IF THE OUTPUT FOR THE LAST CONSTRUCTION LAYER
INCREMENT AND THE LAST LOAD INCREMENT AFTER CONSTRUCTION NB-N7+2*NUMLD
C N9=NB+4*NUMLD
...... IS TO BE STORED, NPUNCH=2. ORDINARILY NPUNCH~O

--......
C NDEX-N9+NPUNCH+l
C THE OUTPUT CONSISTS OF THE STRESS AND
STRAIN FOR EACH ELEMENT AND THE DISPLACEMENT FOR EACH NODAL IF (NDEX/2*2.EQ.NDEX) NIO=NDEX/2+l
C IF (NDEX/2*2.NE.NDEX) NIO=NDEX/2+2
C POINT. THIS OUTPUT MAY BE USED AS THE INPUT FOR
THE PREEXISTING PART IN ANALYSES OF EMBANKMENTS ON OR Nll=NlO+13*NUMMAT
C NI2=Nll +NUMNPT
C CONTAINING PREEXISTING PARTS.
N13=N12+NUMNPT
C N14-N13+NUMELT
C INEQ=2*NUMNPT-SUM OF RESTRAINT (SUM OF ID ARRAY)
NlS=N14+NUMELT
C NI6=N15+NUMELT
IMPLICIT REAL'S (A-H,O-Z)
N17=N16+NUMELT
REAL*4 HEAD, T, TIME,AA
DIMENSION HEAD(20) ,T(lO) ,L(I) ,A(l) NIB=N17+NUMNPT
COMMON /ISOP/ El,E2,RR(4),ZZ(4),LM{S),P(S),S(12,12),STR(3,12), N19=NIB+NUMNPT
N20=N19+3*NUMELT
1 STS{3,8) ,VJAC, MPRINT
N21=N20+3*NUMELT
COMMON AA(8000000)
EQUIVALENCE (AA(l),L{l», (AA(l),A(l» N22-N21+3*NUMELT
NNI-N2l+NUMELT
C
MTMN17-MTOTD2-N17
C MTOTAL=RAM OF YOUR COMPUTER DIVIDED BY
NN2=N21+2*NUMNPT
C
PROGRAM CAPACITY CONTROLLED BY THE FOLLOWING TWO STATEMENTS IF (NN2.GT.N22) N22=NN2
C
IF (N22.LT.MTOTD21 GO TO 130
C
WRITE (10,5000) N22
MTOTAL=8000000 GO TO 999
MTOTD2~MTOTAL/2
C
IN-S C READ AND PRINT INPUT DATA AND SET UP INITIAL CONDITIONS
I~6
C
OPEN 4,FILE='f04',FORM='UNFORMATTED')
130 CALL LAYOUT (L(Nl),L(N2),L(N3),L{N4),L(NS),L(N6I,L{N7),L(NB),
OPEN 5,FILE=' 'I 1 L(N9I,A(NIO),A(Nll),A(N12I,A(N13),A(N14),A(N15I,A{N16),
OPEN 6,FILE-' ') 2 A(N17I,A(N19I,A(N20),A(N21),A(NNl),NUMELT,NUMNPT,NUMCEL,
OPEN 7,FILE='f07',FORM='UNfORMATTED')
3 NUMCNP,NFEL,NUMMAT,NUMLD,NLAY,NEQ,NEQB,MBAND,PATM,MTMN17,
OPEN 8,FILE~'f08',fORM~'UNFORMATTED')
NMXEQB,NPUNCH,IN,IO,INEQ)
OPEN 9,FILE='f09',fORM='UNFORMATTEO')
CALL SECOND (T(2»
OPEN (IO,FILE='flO',FORM='UNFORMATTED') N23-N22+NEQ
OPEN (ll,FILE='fll',FORM='UNFORMATTED'1
N24=N23+NEQB CALL ISRSLT (A(N10),L(N2),L(N3),A(N13),A(N14),A(N15),A(N16),L(N4),
IF(N24.LT . MTOTD2) GO TO 140 1 L(N5),L(N9),A(N17),A(N19),A(N20),A(N21),A(N21),A(N22),A(N23),
WRITE (10,5000) N24 2 PATM,NUMELT,NUMNPT,NUMCEL,NUMCNP,NUMMAT,NUMLO,NLAY,LN,IT,NPUNCH,
GO TO 999 3 NUMEL,NUMNP,NELCAL,NNPCAL,NNPRED,NEQ,NEQB,NBLOCK,
C 4 A(N11),A(N12),IO)
C FORM STRAIN-DISPLACEMENT MATRIX FOR ALL ELEMENTS. STORE ON TAPE 7 CALL SECOND (T(9»
C WRITE (10,2000)
140 CALL FORMS! (A(N11),A(N12).L(N3).NUMELT) DO 250 1=5,8
CALL SECOND (T(3» 250 T(I)=T(I+1)-T(I)
T(1) =T(2)-T(1) T(9)=T(5)+T(6)+T(7)+T(8)
T(2)=T(3)-T(2) WRITE (10,2110) T(5),T(6),T(7),T(8),T(8)
TIME=T(11+T(2) IF(IT.LT.2) GO TO 280
DO 400 LN=l.NUMLD T(10)=T(10)+T(3)+T(4)+T(9)
T(101 - 0 . 0 WRITE (10,2120) T(3),T(4),T(10)
WRITE (10.2000) HEAD TIME-TlME+T(lO)
C GO TO 300
C DETERMINE CONTROL DATA FOR EACH LAYER 280 T(10)=T(10)+T(9)
C 300 CONTINUE
CALL CALBLK (L(N2).L(N4),L(NS).L(N6),L(N7),L(N8).NUMELT, 400 CONTINUE
1 NUMNPT.NUMCEL,NUMCNP,NUMLD,NLAY.LN,MBAND.NUMEL.NUMNP, WRITE (IO,2130) T(l) ,T(2) ,TIME
2 NELCAL,NNPCAL.NELRED,NNPRED,NEQ.NEQB.NBLOCK.NMXEQB,IO) GO TO 100
CALL SECOND (T(4» 999 CONTINUE
NN1=N19+NEQ CLOSE ( 4, STATUS = 'DELETE')
NE2B-2'NEQB CLOSE ( 5)
NSB=(MBAND+1)'NEQB CLOSE ( 6)
NNN1- Nl7+NSB CLOSE ( 7, STATUS 'DELETE')
NNN2=NNN1+NSB CLOSE ( 8. STATUS 'DELETE')
C CLOSE ( 9. STATUS ~ 'DELETE')
C SETUP LOAD VECTOR CLOSE (10. STATUS 'DELETE')
C CLOSE (11. STATUS 'DELETE')

--
tv
CALL FVECT (A(N10).L(N2).A(N11).A(N12).L(N3).L(N4),L(N6).A(N17),
1 A(N18).A(N19).A(NN1),NUMELT,NUMNPT . NUMCEL,NUMMAT,NUMLD.NLAY.LN.
2 NEQ,NEQB,NUMNP.IN,IO)
CALL SECOND (T(5»
CLOSE (12, STATUS - 'DELETE')
CLOSE (13. STATUS 'DELETE')
CLOSE (14, STATUS - 'DELETE')
CLOSE (15. STATUS - 'DELETE')
T(3)=T(41-T(3) CLOSE (16, STATUS 'DELETE')
T(4) - T(51-T(4) 1000 FORMAT (20A4)
NN1-N17+NE2B*MBAND 2000 FORMAT (1H1,20A4)
NN2- NN1+NE2B 2010 FORMAT (/,
DO 300 IT=1.2 1 35HOTOTAL NUMBER OF ELEMENTS********·*,!3,1.
CALL SECOND (T(5» 2 35HOTOTAL NUMBER OF NODES********·*·**,!3,/,
C 3 35HONUMBER OF ELEMENTS IN FOUNDATION". 13. I.
C CALCULATE ELEMENT STIFFNESS MATRIX FOR ALL ELEMENTS, STORE 35HONUMBER OF NODES IN FOUNDATION""'. 13. I,
C ON TAPE 13 5 35HONUMBER OF PREEXISTING ELEMENTS-"-.I3.1,
C CALCULATE STRESS-DISPLACEMENT MATRIX FOR ALL ELEMENTS. STORE 6 35HONUMBER OF PREEXISTING NODES"""'. 13. I ,
C ON TAPE 11 7 3SHONUMBER OF DIFF. MATERIALS·········.I3.1,
C 8 35HONUMBER OF CONSTRUCTION LAYERS·····.I3.1,
CALL I SQUAD (L(N3).A(N13).A(N14).L(N4).NUMELT,NUMCEL.NUMEL. 9 35HONUMBER OF LOAD CASES··*-**********,!3)
1 NELCAL,NELRED) 2020 FORMAT (49HORESULTS ARE PUNCHED OUT FOR FOLLOWING LOAD CASES,I)
CALL SECOND (T(61) 2030 FORMAT (34HOFINAL RESULTS ARE NOT PUNCHED OUT. I)
C 2100 FORMAT (' '.'SOLUTION TIME', / )
C FORM TOTAL STIFFNESS MATRIX, STORE ON TAPE 15 2110 FORMAT (/.
C 1 35HOFORM ELEMENT STIFFNESSES··········.F8. 2.1.
CALL ADDSTF (A(N17),A(NN1).NUMEL,NEQB,NE2B.NBLOCK.MBAND) 2 35HOFORM TOTAL STIFFNESS**************,F8 .2 ,/,
CALL SECOND (T(7» 3 35HOEQUATION SOLVING******************,FB . 2,/,
C 4 3SHOCALCULATE STRESSES AND STRAINS····,F8 .2 .1.
C SOLVE FOR DISPLACEMENT UNKNOWNS 5 35HOSOLUTION TIME FOR THIS ITERATION··,F8 . 2)
C 2120 FORMAT (/,
CALL SYMBAN (A(N17).A(NNNl).L(N1).NEQB.MBAND,NBLOCK,NSB. 1 35HODETERMINE CONTROL DATA************,F8.2,1,
1 15,14.12.13,13.10) 2 35HOFORM LOAD VECTOR******************,FB.2,/,
CALL SECOND (T(8» 3 35HOTOTAL TIME FOR THIS LOAD CASE·····.F8 . 2)
c 2130 FORMAT (' '.'OVERALL LOG',I.
C EVALUATE RESULTS I 35HODATA INPUT************************,F8 . 2,/,
C 2 35HOFORM STRAIN-DISPLACEMENT MATRIX···.F8 . 2.1.
3 35HOTOTAL SOLUTION TIME***************,F8.2) WRITE (15) «A(I, J) ,1=1, NEQB) ,J=l.MBAND) , (B (I) , 1=1, NEQB)
5000 fORMAT (//,17H STORAGE EXCEEDED,I9) IF (M .EQ. NBLOCK) GO TO 500
END WRITE (15) «A(I, J) ,I=K, NE2B) ,J=l,MBAND) , (B (I) ,I=K, NE2B)
SUBROUTINE ADDSTf (A,B,NUMEL,NEQB,NE2B,NBLOCK,MBAND) IF (MM.EQ.MB) MM=O
IMPLICIT REAL*S (A-H,O-Z) MM=MM+l
C NSHIFT=NSHIFT+NE2B
C FORMS GLOBAL EQUILIBRIUM EQUATIONS IN BLOCKS 500 CONTINUE
C RETURN
COMMON !ISOP/ E1, E2,RR(4), ZZ (4), LM(S), P (S), S (12, 12), STR(3, 12), END
1 STA(3,S),VJAC,MPRINT SUBROUTINE CALBLK (ID,NCEL,NCNP, NOMEL,NOMNP,NPHUMP,NUMELT,NUMNPT,
DIMENSION A(NE2B,MBAND),B(NE2B) 1 NUMCEL,NUMCNP,NUMLD,NLAY,LN,MBAND,NUMEL,NUMNP,NELCAL,
DATA NUM3/0/ 2 NNPCAL,NELRED,NNPRED,NEQ,NEQB,NBLOCK,NMXEQB,IO)
K=NEQB+1 IMPLICIT REAL*S (A-H,O-Z)
TEMP=NBLOCK DIMENSION ID(NUMNPT,2),NCEL(1),NCNP(1)
MB=DSQRT(TEMP) DIMENSION NOMEL(NUMLD,2) ,NOMNP(NUMLD,2) ,NPHUMP(NUMLD,4)
MB=MB/2+1 C
NEBB=MB*NE2B C DETERMINE CONTROL DATA
MM=l C
NSHIFT=O IF (LN .GT. NLAY) GO TO 10
C WRITE (10,2000) LN
REWIND 10 WRITE (10,2010) (NOMEL(LN,N) ,N=1,2), (NOMNP(LN,M),M=1,2),
REWIND 15 1 (NPHUMP(LN,L),L=1,4)
C GO TO 20
C FORM EQUATIONS IN BLOCKS ( 2 BLOCKS AT A TIME) 10 LNMLAY=LN-NLAY
C WRITE (10,2020) LNMLAY
DO 500 M=1,NBLOCK,2 20 CONTINUE
DO 100 J=l,MBAND IF (LN .GT. NLAY) GO TO SO
DO 100 I=1,NE2B IF (NUMCEL .EQ. 0) GO TO 50
100 A(I,J)=O.O NUMEL=MAXO(NOMEL(LN,2),NCEL(NUMCEL»)
READ (10) (B(I) ,I=l,NEQB) NUMNP=MAXO(NOMNP(LN,2),NCNP(NUMCNP»)

----
!...J
C
IF (M .NE. NBLOCK) READ (10) (B(I),I=K,NE2B)

REWIND 13
REWIND 14
GO TO 60
50 NUMEL=NOMEL(LN,2)
NUMNP=NOMNP(LN,2)
60 NELCAL=NOMEL(LN,2)
NA=14 NNPCAL=NOMNP(LN,2)
NUME=NUM3 NELRED=NOMEL(LN,l)
IF (MM .NE. 1) GO TO 150 NNPRED=NOMNP(LN,l)
NA=13 GO TO 100
NUME=NUMEL SO NUMEL=NUMELT
NUM3=0 NUMNP=NUMNPT
150 DO 300 N=l,NUME NELCAL=NUMELT
READ (NA) LM, «S(I,J),I=l,S),J=l,S) NNPCAL=NUMNPT
DO 220 I=l,S NELRED=NUMELT+1
LMN=l-LM(I) NNPRED=NUMNPT+1
II=LM(I) -NSHIFT 100 CONTI NUE
IF (II .LE. a .OR. II .GT. NE2B) GO TO 220 C
DO 200 J=l, S C DETERMINE NUMBER OF EQUATIONS AND BLOCKS
JJ=LM(J)+LMN C
If (JJ .GT. 0) A(II,JJ)=A(II,JJ)+S(I,J) NEQB=NMXEQB
200 CONT INUE MAX=O
220 CONTINUE DO 120 1=1,2
C DO 120 N=l, NUMNP
C DETERMINE IF STIFFNESS IS TO BE PLACED ON TAPE 14 IF (ID(N,I) .GT. MAX) MAX=ID(N,I)
C 120 CONTINUE
IF (MM .GT. 1) GO TO 300 NEQ=MAX
DO 250 I=l,S IF (NEQB .GT. NEQ) NEQB=NEQ
II=LM(I) -NSHIFT NBLOCK=(NEQ-1)/NEQB+1
IF (II .GT. NE2B .AND. II .LE. NEBB) GO TO 260 WRITE (10,2100) MBAND,NEQ,NEQB,NBLOCK
250 CONTINUE RETURN
GO TO 300 2000 FORMAT (/,
260 WRITE(14) LM, «S(I,J),I=1,8),J=1,8) 1 57H ******************************************************.* ,I,
NUM3=NUM3+1 2 57H *****************~~*****.**************w************** ** ,I,
300 CONTINUE 3S7H* ·,1,
4 45H LAYER NUMBER·**··········********···**···,I4,8H .. fIr PRT=HT(1)*RR(1)+HT(2)*RR(2)+HT(3)*RR(3)+HT(4)'RR(4)
5S7H* ·.1, VJAC-PRS*PZT-PRT*PZS
6 57H *.****.*** ••• *.******.********************************+* , / , C
7 57H •• * ••••••• _ •••••••••••••••••• * •••••••••••••• _••••••••• ** . /) PSR=PZTIVJAC
2010 FORMAT (I, PTR=-PZSIVJAC
I 35HOADDED ELEMENTS********************,IS,SH THRU,IS,I, PSZ=-PRTIVJAC
2 35HOADDED NODAL POINTS****************,IS,SH THRU,I5,/, PTZ=PRS/VJAC
3 35HONODAL POINTS OF HUMPED SURFACE****,4I5,1) C
2020 FORMAT (I, DO 100 1=1,6
I 57H _••• *. __ • __ •••••••••• __ .- ••••••••••••••••••••••••••••• ** ,I, HR(I)=PSR*HS(I)+PTR*HT(I)
2 57H ••• * ••••••• _ •• _ ••••••••••••• - •• _ •••••••••••••••••••••• ** ,I, 100 HZ(I)-PSZ'HS(I)+PTZ'HT(I)
357H* .,1, C
45H * LOAD CASE AFTER CONSTRUCTION****····*·***,I4,8H • ,1, C FORM STRAIN DISPLACEMENT MATRIX
57H* .,/, C
S1H •...- ... .... . .. .. .... ...... . ...... .,. ........-.. . ..- .................._..- • .--:It -t; "" . .... .. .. .. .... .. . . . . # /,
DO 200 K=1,6
57H •• *** •• * •• ****.* ••••• ****.*.********.* ••• *.************* II) I=II (K)
2100 FORMAT (I, J=JJ(K)
1 35HOBAND WIDTH****····*··**·*********·,I4,1, STR(l,I)=HR(K)
2 35HOTOTAL NUMBER OF EQUATIONS*********,I4,/, STR(2,J)=HZ(K)
3 35HONUMBER OF EQUATIONS IN BLOCK****",I4,1, STR(3, I) =HZ (K)
35HONUM8ER OF BLOCKS******************,I4) 200 STR(3,J)=HR(K)
END C
SUBROUTINE DERIVE RETURN
IMPLICIT REAL*B (A-H,o-Z) END
COMMON IISOPI SX,TY,RR(4),ZZ(4),LM(B),P(9),S(12,12),STR(3,12), SUBROUTINE ELAW (EMPR, BULK,SHEAR,POIS,SLMAX,PRS,PATM,
1 STS(3,B),VJAC,MPRINT 1 NUMMAT,N,MTYPE,STRIEV,KK)
DIMENSION H(6),HS(6),HT(6),HR(6),HZ(6) IMPLICIT REAL*8 (A-H,O-Z)
DIMENSION II(6),JJ(6) DIMENSION EMPR(NUMMAT,13),BULK(1),SHEAR(1),POIS(1),SLMAX(1),PRS(2)
DATA II/t. 3, 5, 7,9, l1/, JJ/2, 4,6,9,10,121 C
CALCULATE SHEAR MODULUS, BULK MODULUS AND POISSON'S RATIO VALUES

-
C C
C MATRIX OF DERIVATIVES C
> -' C DEVSTR=PRS(1)-PRS(2)
~ SM=1.0DO-SX C WRITE(6,77) PRS(2)
SP=1.0DO+SX C 77 FORMAT (2X, 'PRS(2) ',2X,FlO.5)
TM=1.0DO-TY DEVFH=EMPR(MTYPE,12)+EMPR(MTYPE,13)'PRS(2)
TP=1.0DO+TY IF (DEVFH .GT. 0.0) GO TO 100
C STRIEV-O.O
H(1)~SM*TM/4.0DO DEVLEV=O.O
H(2)=SP·TM/4.0DO GO TO 110
H(3)=SP*TP/4.0DO 100 DEVLEV-DEVSTR/DEVFH
H(4)=SM*TP/4.0DO STRLEV-DEVLEV/EMPR(MTYPE,10)
H(5)=(1.0DO-SX'SX) 11 0 CONTINUE
H(6)=(1.0DO-TY*TY) C WRITE(6,88) KK
C C 88 FORMAT{2X, 'KK',2X,I2)
HS(1)=-TM/4.0DO IF (KK .EQ. 1) GO TO 140
HS(2)=-HS(1) IF (PRS{2) .GT. 0.0) GO TO 120
HS(3)=TP/4.0DO POIS(N)=EMPR(MTYPE,6)
HS(4)=-HS(3) IF (POIS(N) .GT. 0.49DO) POIS{N) = 0.49DO
HS(5)--SX-SX GO TO 130
HS(6)-0.0 120 IF (STRLEV .LT. 1.0DO .AND. SHEAR(N) .GT. O.OOOlDO) GO TO 140
C C 130 PHIR=68.2-30.2*DLOG10{CF)
HT(1)=-SM/4.0DO C PI=355./113.
HT(2)=-SP/4.0DO C SHEAR{N)=DABS{{PRS(1)*DTAN(PHIR*PI/190.))/3.)
HT(3)=-HT(2) 130 IF (SHEAR(N).LT.14400.) SHEAR(N)=360.
HT(4)=-HT(1) GO TO 200
HT(5)-0.0 14 0 CONTINUE
HT(6)=-TY-TY IF (PRS(2) .LT. O.OlDO) PRS(2)=0.01DO
C PPRS2=PRS (2) IPATM
C JACOBIAN IF (KK .EQ. 3 .AND. STRLEV. LT. SLMAX(N)) GO TO 150
C EINIT-PATM*EMPR{MTYPE,2)*PPRS2"EMPR(MTYPE,4)
PZT-HT(1)'ZZ(1)+HT(2)*ZZ(2)+HT(3)*ZZ(3)+HT(4)*ZZ(4) TEMP-1.0DO-DEVLEV
PZS=HS(1)*ZZ(1)+HS(2)*ZZ(2)+HS(3)*ZZ(3)+HS(4)*ZZ(4) EMOD=EINIT*(TEMP*TEMP)
PRS=HS(1)'RR(1)+HS(2)*RR(2)+HS(3)*RR(3)+HS(4)*RR(4) CC IF(EMOD.LT.100.0) EMOD=lOO.O
IF (£MOD .LE . 0.0) EMOD=1.00 DIMENSION EMPR(NUMMAT,13),ID(NUMNPT,2),X(1),Y(1),INP(NUMELT,5)
IF(EMOD.GT.9999999.0.AND.MTYPE.NE.3) EMOD=9999999.0 DIMENSION NCEL(1),NOMEL(NUMLO,2),FX(1),FY(1),B(1),R(NEOB)
GO TO 160 C
150 EMODePATM*EMPR(MTYPE,3)*PPRS2**EMPR(MTYPE,4) C CALCULATE NODAL POINT FORCES DUE TO WEIGHTS OF ADDED ELEMENTS
IF(EMOD.LT.100.0) EMOO-100.0 C
IF (£MOD .LE . 0.0) EMOO=100.0 DO 50 I=l,NUMNP
IF(EMOO.GT.5000000.0.AND.MTYPE.NE.3) EMOO=5000000.0 FX(I)=O.O
160 CONTINUE 50 FY(I)=O.O
POISI=EMPR(MTYPE,6)-EMPR(MTYPE,7)*DLOG10(PPRS2) IF (LN .GT. NLAY) GO TO 400
EPSAX=OEVSTR/(EINIT*TEMP) NELS=NOMEL(LN,l)
TEMP-1.000-EMPR(MTYPE,5)*EPSAX NELL=NOMEL(LN,2)
POLS (N)=POISI/(TEMP*T£MP) DO 300 N=NELS,NELL
IF (POIS(N) .GT. 0.4900) POIS(N)=0.4900 IF (NUMCEL .EO. 0) GO TO 100
IF (POIS(N) . LE. 0.0) POIS(N)w.10 DO 80 M=l,NUMCEL
IF (POIS(N) .LT. 0.1) POIS(N)=O.l IF (N .EO. NCEL(M» GO TO 300
TEMP=1.000+POIS(N) BO CONTINUE
SHEAR(N) =EMOOI (TEMP+TEMP) 100 CONTINUE
BULK(N)=SHEAR(N)/(1.000-POIS(N)-POIS(N» FG=O.O
IF (KK .NE. 1) GO TO 200 MTYPE=INP(N,5)
IF (STRLEV .GE. 1.000 .OR. PRS(2) .LE . 0.0) SHEAR(N)=0.000100 KK=l
200 CONTINUE I=INP(N,l)
RETURN J=INP(N,2)
END K=INP(N,4)
SUBROUTINE FORHST(X,Y,INP,NUMELT) 120 AREA=X(J)*(Y(K)-Y(I»+X(I)'(Y(J)-Y(K»+X(K)*(Y(I)-Y(J»
IMPLICIT REAL*B (A-H,O-Z) FG=FG-EMPR(MTYPE,1)*AREA/2.0DO
COHMON IISOPI E1,E2,RR(4),ZZ(4),LM(B),P(8),S(12,12),STR(3,12), IF (KK .NE. 1 .OR . INP(N,3) .EO. INP(N,4» GO TO 140
1 STS(3,B),VJAC,MPRINT KK-2
DIMENSION X(1),Y(1),INP(NUMELT,5) I=INP(N,3)
DIMENSION SSS(2),TTT(2) J=INP(N,4)
DATA SSS 1-0 . 5773502691896300,0.57735026918963001 K=INP(N,2)
DATA TTT 1-0 . 5773502691896300,0.57735026918963001 GO TO 120
......
..... C
C FORM STRAIN-DISPLACEMENT MATRIX
14 0 CONTINUE
IF (INP(N,3) .EO. INP(N,4» GO TO 200
Vl
C FG=FG/4 .000
REWIND 15 KL-4
REWIND 16 GO TO 220
DO 300 N=l,NUMELT 200 FG=FG/3.000
DO 50 J=1,12 KL=3
DO 50 1=1,3 220 CONTINUE
50 STR(I,J)=O.O DO 250 I=l,KL
READ (15) LM II=INP (N, I)
WRITE(16) LM 250 FY(II)=FY(II)+FG
00 100 1=1,4 300 CONTINUE
II=INP (N, I) GO TO 650
RR (I )=X (II) 400 CONTINUE
100 ZZ(I)-Y(II) C
DO 200 II=1,2 C READ NODAL POINT FORCE DATA AND DISTRIBUTED LOAD DATA
E1=SSS (II) C FOR LOAD CASES AFTER CONSTRUCTION
DO 200 JJ=l,2 C
E2=TTT (JJ) READ (IN,*) NUMFC,NUHPC
CALL DERIVE WRITE (10,2000) NUMFC,NUMPC
WRITE(16) VJAC,STR IF (NUHFC .EO. 0) GO TO 550
200 CONTINUE DO 520 I-1,NUHFC
E1-0.0 520 READ (IN,*) MM,FX(MM),FY(MM)
E2=0.0 550 CONTINUE
CALL DERIVE IF (NUMPC .EO. 0) GO TO 650
WRITE(16) ((STR (1, J) , 1=1, 3) ,3=1, B) WRITE (10,2010)
300 CONTINUE DO 600 L=l, NUMPC
RETURN READ (IN,*) IBC,JBC,PRES1,PRES2
END WRITE (10,2020) IBC,JBC,PRES1,PRES2
SUBROUTINE FVECT (EMPR,IO,X,Y,INP,NCEL,NOMEL,FX,FY,B,R, OY=(Y(JBC)-Y(IBC»/2.0DO
1 NUMELT,NUMNPT,NUHCEL,NUMMAT,NUMLO,NLAY,LN,NEO,NEOB,NUMNP,IN,IO) OX=(X(IBC)-X(JBC»/2.0DO
IMPLICIT REAL*B (A-H,O-Z) TEMP1=PRES1+PRES1
TEMP2-PRES2+PRES2 IMPLICIT REAL'S (A-H,O-Z)
FX(IBC)=FX(IBC)+(TEMPl+PRES2)*DY/3.0DO COMMON IISOPI El,E2,RR(4),ZZ(4),LM(S),P(B),S(12,12),STR(3,IZ),
FX(JBC)=FX(JBC)+(PRESl+TEMP2)*DY/3.0DO 1 STS(3,B),VJAC,MPRINT
FY(IBC)=FY(IBC)+(TEMPl+PRES2)*DX/3.0DO DIMENSION INP(NUMELT,5),BULK(1),SHEAR(1),NCEL(1)
FY(JBC)=FY(JBC)+(PRESl+TEMPZ)*DX/3.0DO REWIND 13
600 CONTINUE REWIND 11
650 CONTINUE REWIND 16
C C
C SET UP FORCE VECTOR C INITIALIZATION
C C
DO 700 I=l,NEQ DO 300 N=l,NUMEL
700 B(I)=O.O KEY-O
DO 7Z0 N=l,NUMNP DO ZO J=l,12
DO 720 1=1,2 DO 20 I=l,lZ
II-ID (N, I) 20 S(I,J)=O.O
IF (II .LT. 1) GO TO 720 C
IF (I .EQ. 2) GO TO 710 C FORM STIFNESS MATRIX AND WRITE ON TAPE 2 (CHANGED TO 13)
B (II) =B (II) +FX(N) C
GO TO 720 IF (N .LE. NELCAL .OR. NUMCEL .EQ . 0) GO TO 40
710 B(II)=B(II)+FY(N) DO 30 M=l,NUMCEL
720 CONTINUE IF (N .EQ. NCEL(M) GO TO 40
REWIND 10 30 CONTINUE
KSHIFT=O GO TO 50
DO 730 1=1, NEQB 40 KEY=l
130 R(I)=O.O 50 CONTINUE
DO 750 N=l,NEQ IF (KEY .EQ. 0) GO TO SO
Il=N-KSHIFT IF (N .GE . NELRED .AND. N .LE. NELCAL) GO TO 60
R(Il)-B(N) 55 LLzl
IF (II .NE. NEQB) GO TO 150 mAG-l.0DO
WRITE(lO) R GO TO SO

--
0\

C
KSHIFT=KSHIFT+NEQB
DO 140 I=l,NEQB
140 R(I)-O.O
150 CONTINUE
WRITE(lO) R
60

10
75
IF (NUMCEL .EQ. 0) GO TO 15
DO 70 M=l,NUMCEL
IF (N .EQ . NCEL(M» GO TO 55
CONTINUE
LL-O
mAG=O.OOOOlDO
C PRINT NODAL POINT FORCES BO CONTINUE
C READ (16) LM
IF (LN .LE. NLAY) GO TO 760 Cl-FMAG*(BULK(N)+SHEAR(N»
WRITE (10,2030) C2-FMAG+(BULK(N)-SHEAR(N»
GO TO 170 C3-FMAG*SHEAR(N)
760 WRITE (10,2035) DO 100 LX-l,2
170 CONTINUE DO 100 LY=l,2
DO sao N=l,NUMNP READ (16) VJAC,STR
800 WRITE (10,2040) N,FX(N),FY(N) IF (KEY .EQ. 0) GO TO 100
CIOOO FORMAT (215) DO 90 J=1,12
CIOIO FORMAT (I5,2flO.0) Dl- VJAC*(Cl*STR(l,J)+CZ*STR(Z,J»
CI020 FORMAT (215,2FIO.0) D2=VJAC*(C2*STR(1,J)+Cl*STR(Z,J»
2000 FORMAT (/, D3-VJAC*c3'STR(3,J)
1 35HONUMBER OF N.P. FORCE CARDS·······*,I3,/, DO 90 I=J,IZ
2 35HONUMBER OF PRESSURE CARDS·····*···*,I3) S(I,J)=S(I,J)+STR(l,I)*Dl+STR(Z,I)*D2+STR(3,I)*D3
ZOlO FORMAT (Z9HOPRESSURE BOUNDARY CONDITIONS,II, 90 S(J,I)=S(I,J)
1 34H I J PRESSURE I PRESSURE J,/) 100 CONTINUE
2020 FORMAT (2I5,2F12.3) IF (KEY .EQ. 0) GO TO 160
2030 FORMAT (19HINODAL POINT FORCES ,II, IF (INP(N,3) .EQ. INP(N,4» GO TO 160
1 25H NP X-FORCE Y-FORCE,/) C
Z035 FORMAT (47HINODAL POINT FORCES (WEIGHTS OF ADDED ELEMENTS) ,II, C ELIMINATE EXTRA DEGREES OF FREEDOM
1 Z5H NP X-FORCE Y-FORCE,/) C
2040 FORMAT (I5,2FlO.3) DO 150 NN-l,4
RETURN L=12-NN
END K-L+l
SUBROUTINE ISQUAD (INP,BULK,SHEAR,NCEL,NUMELT,NUMCEL,NUMEL, DO 150 I-1,L
1 NELCAL,NELRED) C=S(I,K)/S(K,K)
IF (C . EQ. 0.0) GO TO 151 READ (9) DISP
TEMP a DLOGI0(DABS(C)) READ (9) STRAIN
GO TO 152 DO 20 1=1,2
151 TEMP = -3 . 00+77 DO 20 N=l, NUMNP
152 DO 150 J=l,L 20 DELD(N,I)=O.O
IF (S(K,JI .EQ. 0.0) GO TO 153 DO 70 N=l,NUMNP
TEMPI = TEMP + DLOGI0(DABS(S(K,J))) IF (N . LE. NNPCAL .OR. NUMCNP .EQ. 0) GO TO 40
GO TO 154 DO 30 M=l,NUMCNP
153 TEMPI a TEMP-3.0D+77 IF (N .EQ. NCNP(M)) GO TO 40
154 IF (TEMPI .GT. -7B.ODO) S(I,J)=S(I,J)-C'S(K,J) 30 CONTINUE
150 CONTINUE GO TO 70
160 CONTINUE 40 CONTINUE
WRITE(13) LM, «S(I,J),I=l,B),J=l,B) IF (N .LT. NNPRED .OR. N. GT. NNPCAL) GO TO 45
C IF (NUMCNP .EQ. 0) GO TO 70
C FORM STRAIN-DISPLACEMEMT MATRIX AND WRITE ON TAPE 11 DO 42 M=I,NUMCNP
C IF (N .EQ. NCNP(M)) GO TO 45
READ (16) «STR(I,J),I=1,3),J=l,8) 42 CONTINUE
IF (KEY . EQ . 0) GO TO 300 GO TO 70
WRITE (11 ) 1M, «STR(I, J), 1=1, 3), J=l, B), LL 45 CONTINUE
300 CONTINUE DO 50 1=1,2
RETURN II- ID (N, I)
END IF (II .LT. 1) GO TO 50
SUBROUTINE ISRSLT (EMPR,ID,INP,BULK,SHEAR,POIS,SLMAX,NCEL,NCNP, DELD(N,I)-B(II)
1 NLDP,DISP,STRESS,STRAIN,SNEW,DELD,B,R,PATM,NUMELT,NUMNPT,NUMCEL, 50 CONTINUE
2 NUMCNP,NUMMAT,NUMLD,NLAY,LN,IT,NPUNCH,NUMEL,NUMNP,NELCAL,NNPCAL, DO 60 J=I,2
3 NNPRED,NEQ,NEQB,NBLOCK,X,Y,IO) 60 DISP(N,J)=DISP(N,J)+DELD(N,J)
IMPLICIT REAL'B (A-H,O-Z) 70 CONTINUE
COMMON IISOPI El, E2, RR(4), ZZ (4), LM(8 I, P(B I, S (12, lZ), STR(3, 12), DO 100 N=I,NUMNP
1 STS(3,B),VJAC,MPRINT IF (N .LE. NNPCAL .OR . NUMCNP .EQ. 0) GO TO 90
DIMENSION X(NUMNPT),Y(NUMNPT) DO BO M=l,NUMCNP
DIMENSION EMPR(NUMMAT,13),ID(NUMNPT,2),BULK(I),SHEAR(1),POIS(1) IF (N . EQ. NCNP(M)) GO TO 90
'"-" DIMENSION INP(NUMELT,5),SLMAX(1),NCEL(1),NCNP(1),NLDP(1) 80 CONTINUE
'"-"
-..J DIMENSION DISP(NUMNPT,2),STRESS(NUMELT,3),STRAIN(NUMELT,3) GO TO 100
DIMENSION SNEW(NUMELT,3),DELD(NUMNPT,2),8(1),R(1) 90 CONTINUE
DIMENSION SIG(3),EPS(3),PRS(S) TEMP1=DISP(N,1)
REWIND 13 TEMP2=DISP(N,2)
REWIND 8 TD- DSQRT(TEMP1'TEMPl+TEMPZ'TEMPZ)
REWIND 11 IF (MPRINT.EQ.1.AND.LN . LT.NUMLD) GO TO 777
C WRITE (10,2050) N, (DELD(N,I),I=l,Z), (DISP(N,M),M=l,Z),TD,N
C MOVE DISPLACEMENTS INTO CORE C***************************CNTUR***************·*****************
C WRITE(7) N,X(N),Y(N), (DISP(N,M),M=1,2),TD
NQ=NEQB*NBLOCK CZ051 FORMAT(IS,2F10.2,3FlS.4)
DO 10 NN=I,NBLOCK C*********************END CNTUR***********************************
READ (13) (R(I),I=l,NEQB) 777 CONTINUE
N=NEQ8 100 CONTINUE
IF (NN . EQ. 1) N=NEQ-NQ+NEQB 110 CONTINUE
NQ=NQ-NEQB C
DO 10 J=l,N C CALCULATE INCREMENTAL STRESSES AND STRAINS, ADD INCREMENTAL
I=NQ+J C STRESSES AND STRAINS AND PRINT STRAINS AND MODULUS VALUES
10 B(I)=R(J) C
IF (LN .GT. NLAY) GO TO 15 READ (8) STRESS
WRITE (10,2000) LN,IT DO 120 1=1,3
GO TO 16 DO 120 N=l,NUMEL
15 LNMLAY=LN-NLAY 120 SNEW(N,I)=STRESS(N,I)
WRITE (10,2005) LNMLAY,IT DO 300 N=l, NUMEL
16 CONTINUE IF (N .LE. NELCAL .OR . NUMCEL .EQ. 0) GO TO 160
IF (IT . LT. 2) GO TO 110 DO 140 M- 1,NUMCEL
C IF (N .EQ. NCEL(M)) GO TO 160
C ADD INCREMENTAL DISPLACEMENTS AND PRINT INCREMENTAL AND TOTAL 140 CONTINUE
C DISPLACEMENTS GO TO 300
C 160 CONTINUE
WRITE (IO,Z010) READ (11) 1M, «STR(I , J), 1=1,3), J=l, B), LL
REWIND 9 IF (tL .EQ. 0) GO TO 222
C PRS(3)~2.0DO*ER
C FORM STRESS-DISPLACEMENT MATRIX EMOD~2.0DO*BULK(N)·(1.0DO+POIS(N»·(1.0DO-POIS(N)-POIS(N»

C IF (MPRINT.EQ . l.AND.LN.LT . NUMLD) GO TO 778


Cl~BULK(N)+SHEAR(N) WRITE (10,2150) N,EMOD,BULK(N),SHEAR(N),POIS(N), (STRAIN(N,M),
C2~BULK(N)-SHEAR(N) 1 M~l, 3), (PRS (I), I~l, 3), N
C3=SHEAR(N) 778 CONTINUE
DO 200 K~I,8 360 CONTINUE
STS(I,K) ~Cl*STR(I,K)+C2*STR(2,K) WRITE (10,2200)
STS(2,K)~C2*STR(I,K)+C1*STR(2,K) 400 CONTINUE
STS(3,K) ~ C3*STR(3,K) C
KK~LM(K) C CALCULATE PRINCIPAL STRESSES AND NEW MODULUS VALUES
IF (KK .EQ. 0) GO TO 180 C
P(K)~B(KK) DO 500 N~I,NUMEL
GO TO 200 IF (N .LE. NELCAL .OR. NUMCEL .EQ . 0) GO TO 440
180 P(K)=O.O DO 420 M~I,NUMCEL
20 0 CONTINUE IF (N .EQ. NCEL(M» GO TO 440
DO 220 I~I, 3 420 CONTINUE
SIG(I)~O.O GO TO 500
DO 220 K~I,8 440 CONTINUE
220 SIG(I)=SIG(I)+STS(I,K)*P(K) C~(SNEW(N,2)+SNEW(N,I»/2 . 0DO

GO TO 228 CM~ (SNEW(N,2) - SNEW(N,1» / 2.0DO

222 CONTINUE TEMP~SNEW(N,3)

IF (IT .EQ . 1) GO TO 225 CR=DSQRT(TEMP*TEMP+CM*CM)


DO 224 I~I, 3 PRS(l)-CP+CR
224 SIG(I)=O . O PRS(2)=CP-CR
GO TO 228 MTYPE=INP(N,5)
22 5 CONTINUE KL=2
DO 226 I~I,3 IF (IT .EQ. 1) KL=3
226 SIG(I)~STRESS(N,I) CALL ELAW (EMPR,BULK,SHEAR,POIS, SLMAX,PRS, PATM,NUMMAT,N,
228 CONTINUE 1 MTYPE,STRLEV,KL)
IF (IT . LT. 2) GO TO 500
,..... IF (IT .EQ . 2) GO TO 240
IF (STRLEV .GT. SLMAX(N») SLMAX(N) - STRLEV
,..... DO 230 1=1,3
PRS(3)=CR
00 230 SNEW(N,I)-STRESS(N,I)-0.5DO*SIG(I)
GO TO 300 PRS (4) ~O.O
24 0 CONTINUE IF (SNEW(N,3) .EQ. 0.0 . AND. CM .EQ. 0.0) GO TO 450
DO 250 1=1,3 PRS(4)~57.29577951DO*DATAN2(SNEW(N,3),CM)/2.0DO
SNEW(N,I)~STRESS(N,I)-SIG(I) 450 CONTINUE
250 STRESSIN,I) - SNEW(N,I) IF (PRS(2) .NE. 0.0) GO TO 460
DO 270 I~1,3 PRS(5)~999.999DO .

EPS(I)=O.O GO TO 470
IF (LL .EQ . 0) GO TO 270 460 PRS(5)~PRS(1)/PRS(2)
DO 260 K~1,8 470 CONTINUE
260 EPS(I)=EPS(I)+STR(I,K)*P(K) C
270 STRAIN(N, I) =STRAIN (N, I) -EPS (I) *100 . 000 C PRINT STRESSES
300 CONTINUE C
IF (IT .LT . 2 ) GO TO 400 IF (MPRINT.EQ.l.AND.LN.LT . NUMLD) GO TO 779
WRITE (10,2100) WRITE (10,2250) N, (STRESS(N,M),M=l,3J. (PRS(I),I=1,5),
DO 360 N=I,NUMEL 1 SLMAX(N),STRLEV,N
IF (N .LE. NELCAL .OR. NUMCEL . EQ. 0) GO TO 340 779 CONTINUE
DO 320 M- l,NUMCEL 500 CONTINUE
IF (N .EQ. NCEL(M» GO TO 340 IF (IT .LT. 2) GO TO 530
320 CONTINUE REWIND 9
GO TO 360 WRITE(9) DISP
340 CONTINUE WRITE(9) STRAIN
C REWIND 8
C CALCULATE PRINCIPAL STRAINS WRITE(8) STRESS
C IF (NPUNCH .EQ. 0) GO TO 530
EP- (STRAIN (N, 2) +STRAIN(N, 1) ) /2.000 DO 510 I=I,NPUNCH
EM~(STRAIN(N,2)-STRAIN(N,l»/2.0DO IF (LN .EQ .NLDP(I» GO TO 520
TEMP=STRAIN(N,3)/2.0DO 510 CONTINUE
ER=DSQRT(TEMP*TEMP+EM*EM) GO TO 530
PRS (1) =EP+ER 520 CONTINUE
PRS(2)=EP-ER WRITE(4) (N, (STRESS(N,M) ,M=1,3) ,N=l,NUMEL)
WRITE(4) IN,ISTRAININ,M),M=I,3),N=I,NUMEL) CONST=2 . 0DO/(EMPR(M,10)-(1.0DO-DSIN(PHI)))
WRITE(4) (N, (DISP(N,M),M=I,2),N=I,NUMNP) EMPR(M,12)=CONST'EMPR(M,S)'DCOS(PHI)
530 CONTINUE EMPR(M,13)=CONST'DSIN(PHI)
RETURN IF (M .LT. NUMMAT) GO TO 50
2000 fORMAT (15HlLAYER NUMBER =,I3,15H ITERATION =,13, I, LL=O
1 59H * ••• +*.*.***** •••• ************.*** •• *.************ ••• *****,/) C
2005 fORMAT (12HILOAD CASE -,I3,15H ITERATION -,13,1, C AND PRINT NODAL POINT DATA AND BOUNDARY CONDITIONS
1 59H ••••• *** •• *** ••••••••• * ••• **.* •• ******** •••• ** •••••••• *·*·,/) C
2010 FORMAT ('0 NP DELTA-X DELTA-Y X-DISP', 100 READ (IN,-) MM,X(MM),Y(MM),(ID(MM,I),I=1,2)
1 ' Y-DISP TOTAL NP', I) IF (LL . LE . 0) GO TO 110
2050 FORMAT (I5,5FI4.4,I4) DIFNP=MM-LL
2100 FORMAT ('1',' MODULUS AND POISSON"S RATIO BASED ON AVERAGE', DX=(X(MM)-XILL))/DIFNP
1 ' STRESSES DURING THE INCREMENT',I, DY=(Y(MM)-YILL))/DIFNP
2 ' ' , ' STRAINS FOR FINAL CONDITION AT END OF INCREMENT',II, 110 LL=LL+1
3 ',' ELE ELAS MOD BULK MOD SHEAR MOD POlS RATIO', IF (MM-LL) 150,140,120
4 ' EPS-X EPS-Y GAM-XY EPS-l EPS-3', 120 X(LL)=X(LL-1)+DX
5 ' GAMMAX ELE', I) Y(LL)=Y(LL-l)+DY
2150 FORMAT (I5,10Fl1.3,I5) DO 130 1=1,2
2200 fORMAT ('1',' STRESSES AND STRESS LEVELS FOR FINAL CONDITION AT', 130ID(LL,I)=ID(LL-1,I)
1 ' END OF INCREMENT',II, GO TO 110
2 ' ',' ELE SIG-X SIG-Y TAU-XY SIG-1' , 140 IF (NUMNPT-MM) 150,160,100
3 ' SIG-3 TAU-MAX THETA SIG1/SIG3 SLMAX' , 150 WRITE (10,5000) MM
4' SLPRES ELE',/) GO TO 999
2250 FORMAT II5,10Fll.3,I5) 160 WRITE 110,2030)
CXXXXXXXXXXXXXX N=O
C2500 FORMAT (I5,3F10.4) 170 N-N+1
C2550 fORMAT (I5,2fl0.4) WRITE (10,2040) N,X(N),Y(N), (ID(N,I),I=I,2)
END IF IN .LT. NUMNPT) GO TO 170
SUBROUTINE LAYOUT (MAXB, ID,INP,NCEL,NCNP, NOMEL,NOMNP, NPHUMP, NLDP, NN=O
1 EMPR,X,Y, BULK,SHEAR,POIS,SLMAX,DISP, STRESS, STRAIN,XCP,YCP, NUMELT, C
2 NUMNPT,NUMCEL,NUMCNP,NFEL,NUMMAT,NUMLD,NLAY,NEQ,NEQB,MBAND,PATM, C READ AND PRINT ELEMENT DATA
....... 3 MTMNI7,NMXEQB,NPUNCH,IN,IO,INEQ)
....... C
\D IMPLICIT REAL-S (A-H,O-Z) 200 READ (IN,-) N, (INP(N,I),1=1,5)
DIMENSION EMPR(NUMMAT,13),IDINUMNPT,2),X(I),Y(I),INP(NUMELT,5) 210 NN=NN+1
DIMENSION BULK(I),SHEAR(I),POIS(l),SLMAX(I),XCP(I),YCP(l) IF (N . LE. NN) GO TO 230
DIMENSION DISP(NUMNPT,2),STRESSINUMELT,3),STRAIN(NUMELT,3) DO 220 K=1,4
DIMENSION NCEL(I),NCNP(I),NOMELINUMLD,2),NOMNPINUMLD,2) 220 INP(NN,K)=INP(NN-1,K)+1
DIMENSION NPHUMPINUMLD,4),NLDPI1) INP(NN,5) - INP(NN-1,5)
DIMENSION MATNOII0),NLELI10),NRELII0),HLII0),SINITXII0),SINITYII0) 230 If (N . GT. NN) GO TO 210
DIMENSION LM(8),PRSI5),HH(10),SIGAVEI3),MAXB(INEQ) IF (NUMELT .GT . NN) GO TO 200
C WRITE (10,2050)
C THIS PORTION IS EXECUTED JUST TO GET RID OF WARNING FROM THE COMPILER N-O
C 250 N-N+1
DO 997 I=I,INEQ XCP(N)-O.O
997 MAXBII)=O YCP(N)=O.O
C DO 240 1=1,4
REWIND 15 II=INP (N, I)
IF (NPUNCH .EQ. 0) GO TO 20 XCP(N)-XCP(N)+X(II)/4.0DO
C 240 YCP(N) - YCPIN)+Y(II)/4.0DO
C READ AND PRINT DATA FOR LOAD CASE TO BE PUNCHED OUT WRITE (10,2060) N, (INP(N,M),M=I,5),XCP(N)'YCP(N)
C IF (N .LT. NUMELT) GO TO 250
READ (IN, -) (NLDP (I) , 1=1, NPUNCH) IF (NPUNCH .EQ. 0) GO TO 260
WRITE (10,1050) INLDP(I),I=I,NPUNCH) WRITE(4) (N,XCP(N) ,YCP(N) ,N=I,NUMELT)
20 CONTINUE 260 CONTINUE
C c
C READ AND PRINT MATERIAL PROPERTY DATA C SET UP EQUATION NUMBERS
C C
READ (IN,-) PATM NEQ=O
WRITE (10,2000) PATM DO 330 N=I,NUMNPT
WRITE (10,2010) DO 330 1=1,2
50 READ IIN,-) M, (EMPRIM,I),I=I,11) IF (IDIN, I) .LE. 1000) GO TO 310
WRITE (10,2020) M, (EMPR(M, 1),1=1,11) NN~IDIN,I)-1000
PHI=EMPRIM,9)/57.29577951DO ID(N, I)=ID(NN, I)
GO TO 330 STRESS(I,J)=O.O
310 IF (ID(N,I) .EQ. 1) GO TO 320 500 STRAIN(I,J)-O . O
NEQ=NEQ+l DO 510 J=I,2
ID(N,I)=NEQ DO 510 I-l,NUMNPT
GO TO 330 510 DISP(I,J)=O.O
320 ID(N,I)-O IF (NUMCEL .EQ. 0) GO TO 550
330 CONTINUE C
WRITE (ID,2070) C READ STRESSES,STRAINS AND DISPLACEMENTS AND CALCULATE MODULUS
WRITE (10,2080) (N, (ID(N,I),I~l,2),N~ l,NUMNPT) C VALUES FOR PREEXISTING PART
C C
C DETERMINE BAND WIDTH READ (IN,') NMODL
C READ (IN,') (N, (STRESS (N,M),M=l,3),J-l,NUMCEL)
MBAND=O IF (NMODL . NE . 0) GO TO 520
DO 430 N=l, NUMELT READ (IN,') (N, (STRAIN(N,M),M=l,3),J=l,NUMCEL)
MIN=lOOOOO READ (IN, *) (N, (DISP(N,M) ,M=l,2) ,J=l,NUMCNP)
MAX- O 520 CONTINUE
IJ=O DO 530 I=l,NUMCEL
DO 410 1=1,4 N=NCEL(I)
II=INP (N, I) CP=(STRESS(N,2)+STRESS{N,I)/2.0DO
DO 410 J=l,2 CM=(STRESS(N,2)-STRESS(N,l»/2.0DO
IJ=IJ+l TEMP=STRESS(N,3)
410 LM(IJ)=ID(II, J) CR=DSQRT{TEMP*TEMP+CM*CM)
WRITE(15) LM PRS(l)-CP+CR
DO 420 L-l,8 PRS(2)=CP-CR
IF (LM(L) .EQ. 0) GO TO 420 MTYPE=INP (N, 5)
IF (LM(L) .GT. MAX) MAX=LM(L) CALL ELAW (EMPR,BULK,SHEAR,POIS,SLMAX,PRS,PATM,NUMMAT,N,
IF (LM(L) .LT. MIN) MIN=LM(L) 1 MTYPE,STRLEV,I)
420 CONTINUE SLMAX(N)=STRLEV
NDIF=MPJ(-MIN+l 530 CONTINUE
IF (NDIF .GT. MBAND) MBAND=NDIF 550 CONTINUE
430 CONTINUE IF (NFEL .EQ . 0) GO TO 700
...- NMXEQB=MTMNI7/(MBAND+2)/2 C
N
o NEQB=NMXEQB C READ AND PRINT DATA FOR FOUNDATION LAYERS USED IN CALCULATING
IF (NEQB .GT. NEQ) NEQB=NEQ C INITIAL STRESSES
WRITE (10,2085) MBAND,NEQ,NEQB C
IF (NLAY .EQ. 0) GO TO 440 WRITE (10,2200)
C READ (IN,*) NFLAY,HFLEV
C READ AND PRINT CONSTRUCTION SEQUENCE INFORMATION WRITE (10,2210) NFLAY,HFLEV
C WRITE (ID,2220)
WRITE (10,2090) 1=0
READ (IN,*) (LN, (NOMEL(LN,I),I=l,2), (NOMNP(LN,J),J=l,2), 600 I=Hl
1 (NPHUMP(LN,K),K=l,4),N=I,NLAY) READ (IN,') I,MATNO(I),NLEL(I),NREL(I),HL{I)
WRITE (10,2100) (LN, (NOMEL(LN,1),I- l,2), (NOMNP(LN,J),J-l,2), WRITE (10,2230) I,MATNO(I),NLEL(I),NREL(I),HL(I)
1 (N PHUMP (LN,K) ,K=l,4) ,LN-l,NLAY) IF (I .GT. 1) GO TO 610
440 CONTINUE HH(I)=HL(I)-HFLEV
IF (NUMCEL .EQ. 0) GO TO 450 GO TO 620
C 610 HH{I)=HL(I)-HL{I-l)
C READ AND PRINT DATA FOR PREEXISTING ELEMENTS AND NODAL POINTS 620 CONTINUE
C IF (I .LT. NFLAY) GO TO 600
WRITE (10,2110) C
READ (IN,*) (NCEL(N),N=l,NUMCEL) C CALCULATE INITIAL STRESSES AND MODULI FOR FOUNDATION ELEMENTS
WRITE (10,1050) (NCEL(N) ,N=I,NUMCEL) C
WRITE (ID,2120) DO 670 I=I,NFLAY
READ (IN,*) (NCNP(N),N=l,NUMCNP) SINITY(I)=O.O
WRITE (ID,l050) (NCNP(N),N=l,NUMCNP) IF (I .EQ. NFLAY) GO TO 640
450 CONTINUE NN=I+I
C DO 630 J-NN,NFLAY
C INITIALIZATION OF STRESSES, STRAINS, AND STRESS LEVELS MTYPE=MATNO(J)
C IN ALL ELEMENTS AND DISPLACEMENTS OF ALL NODAL POINTS 630 SINITY(I)=SINIT¥(I)+EMPR{MTYPE,l)*HH(J)
C 640 MT¥PE=MATNO(I)
DO 500 I=l,NUMELT SINIT¥(I)=SINIT¥(I)+EMPR(MT¥PE,I)*HH(I)/2 . 0DO
SLMAX(I)=O.O SINITX(I) =EMPR(MT¥PE,lI)*SINITY(I)
DO 500 J=l,3 NNL=NLEL(I)
NNR~NREL (I) C 33 FORMAT(2F10.3)
DO 650 N=NNL,NNR STRESS(N,3)=0.50DO*STRESS(N,2)*DSIN(BETA)
STRESS(N,l)~SINITX(I) SIGAVE(2)=STRESS(N,2)/2.0DO
650 STRESS(N,2)=SINITY(I) SIGAVE(3) - STRESS(N,3)/Z.ODO
NNL1-NNL+l POISl=EMPR(MTYPE,6)
N=NNL 750 IF (POIS1 .GT. 0 . 49DO) POISl=0.49DO
MTYPE=INP(NNL,5) STRESS(N,1)-STRESS(N,2)*POISl/(1.ODO-POIS1)
PRS(1)=STRESS(NNL,2) SIGAVE(1) - STRESS(N,1)/2.0DO
PRS(2)=STRESS(NNL,1) CP=(SIGAVE(2)+SIGAVE(1»/2.0DO
CALL ELAW (EMPR,8ULK,SHEAR,POIS,SLMAX,PRS,PATM,NUMMAT,N, CM=(SIGAVE(2)-SIGAVE(1»/2.0DO
I MTYPE,STRLEV,l) CR=DSQRT(SIGAVE(3)*SIGAVE(3)+CM*CM)
SLMAX(NNL)zSTRLEV PRS(l)=CP+CR
DO 660 N=NNL1,NNR PRS(2)=CP-CR
8ULK(N) =8ULK (NNL) CALL ELAW (EMPR,BULK,SHEAR,POIS,SLMAX,PRS,PATM,NUMMAT,N,
SHEAR(N) =SHEAR (NNL) 1 MTYPE,STRLEV,l)
POIS(N)=POIS(NNL) POIST=POIS(N)
660 SLMAX (N) =SLMAX (NNL) IF (DABS (POIS1-POIST) .LT . 0.000100) GO TO 760
610 CONTINUE POISl=POISl+(POIST-POISl)/lO.ODO
100 CONTINUE GO TO 150
C 160 CONTINUE
C CALCULATE INITIAL STRESSES AND MODULI fOR LAYERS TO BE ADDED SLMAX(N)=STRLEV
C 110 CONTINUE
WRITE (10,2310) 180 CONTINUE
If (NLAY .EQ. 0) GO TO 790 790 CONTINUE
DO 760 LN~l,NLAY C
NNL=NOMEL (LN, 1 ) C PRINT INITIAL MODULI AND STRESSES FOR ALL ELEMENTS
NNR-NOMEL(LN,2) C
III-NPHUMP(LN,l) DO 800 N=l,NUMELT
1I2=NPHUMP(LN,2) EMOD=Z.ODO*SHEAR(N) * (1.0DO+POIS(N»
II3=NPHUMP(LN,3) WRITE (10,2320) N,XCP(N),YCP(N),EMOD,BULK(N),SHEAR(N),POIS(N),
II4=NPHUMP (LN, 4) 1 (STRESS(N,MI,M=1,3)
...... IF «(X(II2)-X(IIl» .NE. 0.0)TEMPI-(Y(II2)-Y(IIl»/(X(Il2)-X(Il1» 600 CONTINUE
N
...... If «(X( II3) -x (Il2» .NE. 0.0) TEMP2= (Y(Il3) -Y (Il2) ) I (X (II3) -X (II2) ) REWIND 8
REWIND 9
If «X(II4)-X(Il3» .NE. 0.0)TEMP3=(Y(Il4)-Y(II3»/(X(II4)-X(II3»
DO 710 N=NNL,NNR WRITE(8) STRESS
IF (NUMCEL .EQ. 0) GO TO 120 WRITE(9) DISP
DO 110 M=l,NUMCEL WRITE (9) STRAIN
IF (N .EQ. NCEL(M» GO TO 170 999 CONTINUE
110 CONTINUE RETURN
120 MTYPE=INP(N,5) CIOOO fORMAT (FIO.O)
IF (XCP (N) . LE. X(IIl» GO TO 131 C1010 FORMAT (I5,1FIO.0/5F10.0)
IF (XCP (N) .LE. X(II2» GO TO 132 C1020 FORMAT (I5,2F10.0,2I5)
IF (XCP(N) .LE. X(II3» GO TO 133 CI030 FORMAT (615)
IF (XCP (N) . LE. X(II4» GO TO 734 CI040 FORMAT (915)
SLOPE=O.O 1050 FORMAT (1515)
HT=Y(II4)-YCP(N) c1100 FORMAT (I5,3F10.0)
C WRITE(6,44)Y(II4),YCP(N) CIllO FORMAT (I5,2F10.0)
C 44 fORMAT (3X, 'Y(II4) ',2X,F10.2,3X, 'YCP(N) ',2X,flO.2) C1200 FORMAT (I5,FIO.0)
GO TO 140 C1210 FORMAT (415,F10.0)
131 SLOPE-O.O 2000 FORMAT (/,23H MATERIAL PROPERTY DATA,I,
HT-Y(IIl)-YCP(N) 122M ATMOSPHERIC PRESSURE=,FIO.4,/)
GO TO 740 2010 FORMAT (' ',24X, 'MODULUS',34X, 'POISSON RATIO',I,
732 SLOPE=TEMPI I ','MAT UNITWT K KUR N DI,
HTzY(II1)+(XCP(N)-X(II1»*SLOPE-YCP(N) 2 ' G F C PHI FAIL RATIO',
GO TO 740 3 ' KO', I)
133 SLOPE=TEMP2 2020 FORMAT (14,11Fl1 . 3)
HT=Y(II2)+(XCP(N)-X(II2»*SLOPE-YCP(N) 2030 fORMAT (23H1NODAL POINT INPUT DATA,II,SH NODE,3X,
GO TO 740 1 23HNODAL POINT COORDINATES,1X,9HB.C. CODE/,1H NUMBER,
734 SLOPE-TEMP3 2 40H X-ORD Y-ORD XX YY, I)
HT=Y(II3)+(XCP(N)-X(II3»*SLOPE-YCP(N) 2040 fORMAT (11,2flO.3,10X,21S)
140 BETA=DTAN (SLOPE) 2050 fORMAT (30HlfOUR NODES SOLID ELEMENT DATA,II,
STRESS(N,2)-HT*EMPR(MTYPE,1) 1 5H ELET,5X,15HCONNECTED NODES,5H MATL,
C WRITE(6,33) HT,EMPR(MTYPE,l) 2 26H ELEMENT CENTER CooRDINATES,f,
3 30H NO. I J K L NO.,24H X-ORD Y-ORD, /) C
2060 FORMAT (615,2F12.3) DO 130 J~I,NMB,NEQB
C2065 FORMAT (I5,2FI0.3) IF (A(J).NE.O.O) MAXB(I)~J
2070 FORMAT (17HIEQUATION NUMBERSII, ISH N x Y, /) 130 CONTINUE
2080 FORMAT (315) C
2085 FORMAT (/, JL~I+1
35HOBAND WIDTH************************,I4,1, IF (JL.GT.NEQB) GO TO 300
35HONUMBER OF EQUATIONS***************,I4,/, II~I
35HONUMBER OF EQUATIONS IN BLOCK*·····,I4) DO 200 J~JL,NEQB
2090 FORMAT (31HICONSTRUCTION LAYER INFORMATION ,II, 6H LAYER, II~II+NEQB
1 31H ADDED ELEMENTS ADDED NODES, IF(II.GT.NMB) GO TO 200
2 34H NODES OF HUMPED SURFACE ,I) C~A(II)
2100 FORMAT (I5,I9,I6,II0,I6,10X,416) IF (C.EQ.O.O) GO TO 200
2110 fORMAT (29HOELEMENTS OF PREEXISTING PART ,II) C~C'A(I)
2120 FORMAT (26HONODES OF PREEXISTING PART ,II) C
5000 FORMAT (17H N.P. ERROR, N ~ ,14) KK~J-II
2310 FORMAT (' 1 INITIAL VALUES IN ELEMENTS', I I, MAX~MAXB(I)
l ' ELE X-ORD Y-ORD ELAS MOD BULK MOD', DO 150 JJ~II,MAX,NEQB
2' SHEAR MOD POlS RATIO SIG-X SIG-Y TAU-XY' ,I) 150 A(JJ+KK)~A(JJ+KK)-C'A(JJ)
2320 FORMAT (I5,9F11.3) C
2200 FORMAT (28H1FOUNDATION PART INFORMATION) KK~J +NMB
2210 FORMAT (35HONUMBER OF LAYER IN FOUNDATION·····,I4,1, JJ~I+NMB

1 35HOELEVATION OF RIGID BOUNDARY·······,F8.3,/) A(KK)~A(KK)-C'A(JJ)


2220 FORMAT (47HOLAYER MAT. NO. INCLUSIVE ELEMENTS ELEVATION,I) 200 CONTINUE
2230 FORMAT (15,3110, F12. 3) 300 CONTINUE
END WRITE (NBKS) MAXB,A
SUBROUTINE SYMBAN (A,B,MAXB,NEQB,MB,NBLOCK,NSB,NORG,NBKS,NT1, C
1 NT2,NRST,IO) C SUBSTITUTE INTO REMAINING EQUATIONS
IMPLICIT REAL'8 (A-H,O-Z) C
DIMENSION A(NSB),B(NSB),MAXB(NEQB) DO BOO NN~l, NBR
...... C IF(N+NN.GT.NBLOCK) GO TO 800
NC~MB+1 NI~Nl
tv NBR~(MB-1)/NEQB+1 IF(N.EQ.1) NI~NORG
tv
INC~NEQB-1 IF(NN.EQ.NBR) NI~NORG
NMB~NEQB'MB READ (NI) B
N2~NT2 IL~l+NN*NEQB*NEQB
N1~NT1 DO 700 I~l,NEQB
REWIND NORG II~IL

REWIND NBKS DO 690 K~l, NEQB


C IF (II.GT.NMB) GO TO 690
C REDUCE EQUATIONS BLOCK-BY-BLOCK C-A(II)
C IF (C.EQ.O.O) GO TO 690
DO 900 N~I,NBLOCK C~C'A(K)
IF (N .GT. 1 .AND. NBR .EQ. 1) GO TO 110 MAX~MAXB(K)
IF (NBR .EQ. 1) GO TO 105 C
REWIND N1 KK~I-II
REWIND N2 DO 640 JJ~II,MAX,NEQB
105 NI~N1 640 B(JJ+KK)~B(JJ+KK)-C'A(JJ)
IF(N .EQ. 1) NI-NORG C
READ (NI) A KK~I+NMB
110 DO 300 I~l,NEQB JJ~K+NMB
MAXB(I)~O B(KK)~B(KK)-C*A(JJ)
D~A(I) C
IF(D) 115,300,120 690 II~II-INC
115 M~NEQB*(N-1)+I 700 IL~IL+NEQB
WRITE (10,116) M,D C
116 FORMAT (33HOSET OF EQUATIONS MAY BE SINGULAR , I, IF(NBR.NE.1) GO TO 750
26H DIAGONAL TERM OF EQUATION, 18, 8H EQUALS, 1PE12.4) DO 740 I~l, NSB
C 740 A(I)~B(I)
120 II~I GO TO 800
DO 125 J~2,NC 750 WRITE(N2) B
II~II+NEQB 800 CONTINUE
125 A(II)~A(II)/D C
11~ N1 RETURN
Nl~t12 END
900 N2=M
C
C BACKSUBSTITUTION - RESULTS ON TAPE NRST
C
tlEB ~NEQB' ( f;!IlR'~ )
mw.~r;BR~NEQ8
DO 905 1=1. )IEB
9Q, 1;1(1) ;0. 0
!1.F.H.l!lll NIIST
REWIND NBKS
C
DO 1000 ~l,NBLOCK
READ (NBKS) MAXB,A
K=NEB
DO 910 J=l, NUM
I=K-NEQB
B(K)=B(I)
910 K=K-1
C
I=NMB
K=O
00 920 J=l,NEQB
r-I+l
K ~ K+l

92Q B(K)-A( I I
C
00 950 I=l,NEQB
J=NEQB+1-I
MAX=MAXB(J)
....... IF (A(J) .EQ. 0.0) GO TO 950
tv
w KK=J
JJ=KK+1
IL=J+NEQB
C=B(KK)
DO 940 II=IL,MAX, NEQB
C=C-A(II) ·B(.JJ)
940 JJ=JJ+1
B(KK)=C
950 CONTINUE
C
1=0
K=O
00 960 J=l,NEQB
K=K+l
1=1+1
960 A(I)=B(K)
C
WRITE (NRST) (A(I),I=l,NEQB)
1000 CONTINUE
C
RETURN
END
SUBROUTINE SECOND (TIM)
USE PORTLIB
C
C SUBROUTINE TO OBTAIN TIME
C THIS SUBROUTINE IS COMPILER DEPENDENT, MICROSOFT FORTRAN POWER
C STATION PORTLIB
C
TIM=TIMEF ()
C
Delete Unit 30 output from ACANDE and add to RESOUT. ACAN005S
APPENDIXE SCM 3-03-89 ACANOOS6
ACANOOS7
REWIND 30 ACANOOS8
ACANOOS9
CANDE-89 SOURCE CODE NPROB - 0 ACAN0060
WRITE(6,2000) ACAN0061
WRITE(6,20IO) ACAN0062
100 CONTINUE ACAN0063
,., .................................................................. .. ACANOOOl DO 105 I = 1, 99 ACAN0064
DO 105 N = 1,20 ACAN006S
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM ACAN0002
105 RESULT(N,I) = 0.0 ACAN0066
VERSION 1.0, MARCH 1990 ACAN0003
READ (5, 1000) XMODE,LEVEL,PTYPE,HED,NPMAT,NPPT ACAN0067
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY ACAN0004
IF (XMODE .EQ. STOP) GO TO 900 ACAN0068
THE FEDERAL HIGHWAY ADMINISTRATION ACANOOOS
IF(LEVEL.LT.l .OR. LEVEL.GT.3) GO TO 500 ACAN0069
.. * .. II' * * .. * * * .. * .,. * ................ * .... * .. * * ............ .. ACAN0006
IF(XMODE.NE.DESIGN .AND. XMODE.NE.ANALYS) GO TO 500 ACANOO?O
C PROGRAM CANDE(INPUT,OUTPUT,TAPES~INPUT,TAPE6=OUTPUT,TAPE30, ACAN0007
ACAN0071
C 1 TAPEIO,TAPEll,TAPE12,TAPE13,TAPEI4,TAPEI6,TAPE17) ACAN0008
Revise control statements for canned mesh additions . ACAN0072
C ACAN0009 ACANOO?3
ACANOOlO SCM 3-18-89
C CANDE ... (C)ULVERT (ANIALYSIS AND (DE)SIGN PROGRAM. ACANOO?4
C ACANOOll
IF(LEVEL.NE.3) NPMAT = 10 ACAN007S
C ENGLISH UNIT VERSION ACAN0012
IF(LEVEL.NE.3) NPPT - 11 ACAN0076
C ACANOOn
ACAN0077
Uncomment this statement in all program modules for double ACAN0014 ACAN0078
ACANOOlS IF(LEVEL.EQ.2) THEN
precision version. SCM 3-10-90 ACANOO?9
ACAN0016 LCODE : -(LEVEL'IOO + NPMAT)
ELSE ACAN0080
IMPLICIT DOUBLE PRECISION (A-H,o-Z) ACAN0017
LCODE - LEVEL ACAN008l
ACAN0018
ENDIF ACAN0082
Revise dimensions of PIPMAT and RESULT arrays from 30 to 99. ACANOOl9 ACAN0083
ACAN0020 IF(LEVEL.EQ.2 .AND. NPMAT.EQ.2) THEN
SCM 4-30-89 NPMAT = 14 ACAN0084
ACANOOn ACAN008S
NPPT ~ 15
....... DIMENSION HED(IS),PLIST(10),PIPMAT(S,99),RESULT(20,99),SOLVE(6) ACAN0022
ELSE IF(LEVEL.EQ.2 .AND. NPMAT.EQ.3) THEN ACAN0086
tv ACAN0023 ACAN008?
NPMAT ~ 19
~ C ACAN0024 ACAN0088
NPPT : 20
C NEW ADDITION COMMON STATEMENT IN 1983 FOR JOINT SLIPPING BEHAVIOR ACAN002S ACAN0089
C ACAN0026 ELSEIF(LEVEL . NE.3) THEN
NPMAT = 10 ACAN0090
Expand array dimension statements from 30 to 99. ACAN0027 ACAN0091
NPPT - 11
SCM 5-22-89 ACAN0028 ACAN0092
ACAN0029 ENDIF
ACAN0093
COMMONfXJOINTIDSTRN (99) ,XLONG (99) ,JOINT ACAN0030 NPIPE : ACAN0094
C ACAN0031 ACAN0095
ACAN0032 DO 110 N~l,NLIST
Add common statement for output control. SCM 3-18-89 IF(PTYPE.EQ.PLIST(N» NPIPE ACAN0096
ACAN0033 110 N
IF(NPIPE.EQ.O) GO TO 500 ACAN0097
COMMON fOUTPUTf IWRT,IPLOT,MAXIT,JCON ACAN0034 ACAN0098
ACAN003S C
NPROB = NPROB + 1 ACAN0099
DATA NLIST,PLIST IS,4HSTEE,4HALUM,4HCONC,4HPLAS,4HBASI,4HL ACAN0036 ACANOlOO
ACAN0037 WRITE(6,2l00) NPROB,HED,XMODE,SOLVE(LEVEL),SOLVE (LEVEL+3),
1 4HINUM,4HRETE,4HTIC ,4HC f
1 PLIST(NPIPE),PLIST(NPIPE+S) ACANOI0l
DATA DESIGN, ANALYS, STOPf4HDESI,4HANAL,4HSTOPI ACAN0038
C ACAN0102
DATA SOLVE/4HBURN,4HF.E.,4HF.E.,4HS ,4HAUTO,4HUSERI ACAN0039 ACANOI03
C READ OR ESTABLISH PIPE PROPERTIES FROM PIPE LIBRARY
DATA XPLOT 14HPLTDI ACAN0040 ACANOl04
ACAN0041 C
C ACANOl05
ACAN0042 ICOME =
Add file control commands . SCM 2-24-88 GO TO 300 ACANOI06
ACAN0043 ACANOIO?
ACAN0044 120 CONTINUE
OPEN (5, ')
FILE~'
C ACANOI08
OPEN(6,FILE~' ') ACAN004S ACANOl09
C READ SOIL AND SYSTEM PROPERTIES FROM SOLUTION LIBRARY
OPEN(10,FILE='PLOT1.PLl') ACAN0046 ACANO 11 0
C
OPEN(30,FILE='PLOT2.PL2') ACAN0047 ACANO 11 1
ACAN0048 GO TO 400
OPEN(ll,FILE~'DATA.SAV')
130 CONTINUE ACAN01I2
OPEN(16,FILE-'DUNCAN.DUN') ACAN0049
C ACAN01I3
OPEN(17,FILE='XFACES.XFC') ACANOOSO ACANO 11 4
C SOLVE SYSTEM FOR PIPE RESPONSES, ITERATE AS REQUIRED.
OPEN(12,FORM='UNFORMATTED') ACANOOSI ACANOlIS
C
OPEN(13,FORM='UNFORMATTED') ACAN0052 ACAN01I6
ACANOOS3 lEXIT ~ 1
OPEN(14,FORM~'UNFORMATTED') ACAN0117
ACANOOS4 140 ICOME: 2
GO TO 400 ACANO 11 8 C ACAN0181
150 CONTINUE ACAN01l9 900 WRITE(6,6000) ACAN0182
GO TO 300 ACANOl20 STOP ACAN0183
160 CONTINUE ACAN012l C ACAN0184
ACANOl22 C FORMATS ACAN0185
Delete Unit 30 output from ACANDE and add to RESOUT. ACAN0123 C ACAN0186
SCM 3-03-89 ACAN0124 1000 FORMAT (A4,3X,11,lX,A4,3X,15A4,212) ACAN0187
ACANOl25 C ACAN0188
IF (IEXIT.GE.O .AND. HED(15) .EQ.XPLOT) WRITE(30) NPPT,NINC,IA, «REACANOI26 Revise title page of Unit 6 output file for 1989 version. ACAN0189
ISULT(N,J),N~l,12),J~1,NPPT) ACAN0127 SCM 3-10-90 ACAN0190
ACAN0128 ACAN0191
IF(IEXIT.NE.1) GO TO 140 ACAN0129 2000 FORMAT (lHl, I I ACAN0192
C ACAN0130 X, 112X, 57H CCCC AA N N DDDD EEEEE 8888 9999ACAN0193
C RETURN TO READ A NEW PROBLEM ACAN0131 X,I12X,57H CC AM NN N DD D EE 88 8 99 9ACAN0194
C ACAN0132 X,I12X,56H CC AAA NNN N DO 0 EEEE DOD 88888 9999 ACAN0195
GO TO 100 ACAN0133 X, 112X, 55H CC AAAAA NN N N DO 0 EE 88 8 9 ACAN0196
C ACAN0134 x,/12X,54H CCCC AA. A NN NN OOODO EEEEE 8888 9 ACANOl97
C ACAN0135 X, I ACAN0198
C PIPE LIBRARY ACAN0136 X,/12X,52HI1111111I1II1IIIII1111111I1111II1111I1IIIIII11111111 ACAN0199
C ACAN0137 X,/12X,51H IIIIIIIIIIIIIIIIIIIII!I!IIII1IIIIIIIIIIIII ACAN0200
300 GO TO (301,302,303,304,305) , NPIPE ACAN0138 X,/12X,50H III ACAN0201
C ACAN0139 X,/12X,49H (C)ULVERT (AN)ALYSIS AND (DE)SIGN II ACAN0202
301 CALL STEEL (IA,ICOME,IEXIT,LEVEL,N1NC,NPMAT,NPPT,PDIA,PIPMAT, ACAN014 0 X, 112X, 48H ACAN0203
1 RESULT, SK, SM, XMODE) ACAN0141 X, I ACAN0204
GO TO 310 ACAN0142 X,/12X,35H VERSION 1. 0 ACAN0205
302 CALL ALUMIN(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PD1A,PIPMAT, ACAN0143 X,/12X,34H MARCH 1990 ACAN0206
1 RESULT, SK, SM, XMODE) ACAN0144 X, I ACAN0207
GO TO 310 ACAN0145 X,/12X,47H PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY ACAN0208
303 CALL CONCRE(IA,ICOME,1EX1T,LEVEL,NINC,NPMAT,NPPT,PDIA,PIPMAT, ACAN0146 X,/12X,46H THE FEDERAL HIGHWAY ADMINISTRATION ACAN0209
1 RESULT, )(MODE) ACAN0147 X) ACAN021 0
GO TO 310 ACAN0148 2010 FORMAT (lH ,I I ACAN0211
...... 304 CALL PLASTI(IA,ICOME,1EXIT,LEVEL,NINC,NPMAT,NPPT,PD1A,PIPMAT, ACAN0149 X, 112X, 27H PIPE TYPE LIBRARIES: ACAN0212
N X,I12X,33H ALUMINUM (CORRUGATED) ACAN0213
VI 1 RESULT, SK, SM, XMODE} ACAN0150
GO TO 310 ACANOl51 X,/12X,33H BASIC (ANALYSIS ONLY) ACAN0214
305 CALL BASIC (IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PD1A,PIPMAT, ACAN0152 x,/12X,46H (UNCONNECTED ELEMENT OPTION) ACAN0215
1 RESULT, XMODE) ACAN0153 X,I12X,33H CONCRETE (REINFORCED) ACAN0216
C ACAN0154 X,/12X,32H PLASTIC (SOLID WALL) ACAN0217
310 CONTINUE ACAN0155 X,/12X,30H STEEL (CORRUGATED) ACAN0218
GO TO (120,160) • ICOME ACANOl56 X,/12X,40H (SLOTTED JOINT OPTION) ACAN0219
C ACAN0157 X, I ACAN022 0
C ACAN0158 X,/12X,23H SOLUTION LEVELS: ACAN0221
C SOLUTION LEVEL LIBRARY ACAN0159 X,/12X,43H LEVEL 1: ELASTIC THEORY - BURNS ACAN0222
C ACAN0160 X,/12X,42H LEVEL 2: FINITE ELEMENT - AUTO ACAN0223
400 GO TO (401,402,402), LEVEL ACAN0161 X,/12X,51H CIRCULAR AND ELLIPTICAL (CAN1) ACAN0224
C ACAN0162 X,/12X,51H CONCRETE BOX CULVERT (CANBOX) ACAN0225
401 CALL BURNS (IA,ICOME,IEXIT,NINC,NPMAT,NPPT,PDIA,PIPMAT,RESULT, ACAN0163 X,/12X,51H 2 OR 3 SEGMENT ARCHES (CANAR1) ACAN0226
1 SK, SM) ACAN0164 X,/12X,42H LEVEL 3: FINITE ELEMENT - USER ACAN0227
GO TO 410 ACAN0165 X) ACAN0228
ACAN0166 ACAN0229
Change subroutine call parameter LEVEL to LeOOE for canned ACAN0167 2100 FORMAT(IH1, 11 1 10X,19H ••• PROBLEM NUMBER,I3,4H "'IIII0X,15A4/11 ACAN0230
mesh additions. SCM 3-18-89 ACAN0168 X lOX, 21H EXECUTION MODE ..... ,A4 II ACAN0231
ACANOl69 X lOX, 21H SOLUTION LEVEL ..... ,2A4 II ACAN0232
402 CALL PRHERO(IA,ICOME,IEXIT,LCODE,NINC,NPMAT,NPPT,PDIA,PIPMAT, ACAN0170 X lOX, 21H CULVERT TYPE ...... ,2A4) ACAN0233
1 RESULT, SK, SM) ACANOl71 3000 FORMAT(111128H ••• FATAL ERROR IN DATA II 9H MODE IS ,A4,4X, ACAN0234
C ACANOl72 X10H LEVEL IS ,I2,4X,14H PIPE-TYPE IS ,A4) ACAN0235
410 GO TO (130,150},ICOME ACAN0173 6000 FORMAT (111111 10X,40H * * * • NORMAL EXIT FROM CANDE )ACAN0236
C ACAN0174 END ACAN0237
C ERROR EXIT ACAN0175 • ACANOOOI
C ACAN0176 CANDE-B9 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM AFUN0002
500 WR1TE(6,3000) )(MODE,LEVEL,PTYPE ACAN0177 VERSION 1.0, MARCH 1990 AFUN0003
STOP 10 ACAN0178 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY AFUNOOD4
C ACAN0179 THE FEDERAL HIGHWAY ADMINISTRATION AFUNOOOS
C NORMAL EXIT ACAN0180 .... ,. . ..... .,. ............ * .. * ...... * * ... * ..... + .. ~ • " ........ .. AFUN0006
FUNCTION AF (I, J) 0.00000,0.00000,0.08883,0.09891,0.11466,0.13016,0.14575, ALUM0052
AFUN0007 0.07000,0.08685,0.10264,0.11888,0.13481,0.15119,0.165091 ALUM0053
AFUN0008 C ALUM0054
Uncomment this statement in all program modules for double AFUN0009 GO TO (100,200),ICOME ALUM0055
precision version. SCM 3-10-90 AFUNOOI0 C ALUM0056
AFUN0011 C FIRST ENTRY ESTABLISHES PIPE PROPERTIES, AND SAFETY FACTORS ALUM0057
IMPLICIT DOUBLE PRECISION (A-H,O-Z) AFUN0012 100 READ(5,lOOO) NONLIN,PDIA,PE,PNU,PYIELD,PELONG,PDEN,PE2 ALUM0058
AFUNOOl) IF(PE.LE.O.O) PE ~ E ALUM0059
COMMON IAFCALCI XX(4), YY(4) AFUN0014 IF(PNU.LE. 0.0) PNU ~ XNU ALUM0060
AF ~ (XX(I) -XX(J)) * (YY(I) +YY(J)) 12.0 AFUN0015 IF(PYIELD . LE.O . O) PYIELD ~ YIELD ALUM0061
RETURN AFUN0016 IF(PELONG.LT.PYIELD*(1.-PNU**2)/PE) PELONG ~ ELONG ALUM0062
END AFUN0017 IF(NONLIN.NE . l . AND . NONLIN.NE.2) NONLIN ~ ALUM0063
ALUM0001 IF(NONLIN . EQ . 2 . AND . PE2 . LE.0.0) PE2 = E2 ALUM0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM ALUM0002 C ALUM0065
VERSION 1.0, MARCH 1990 ALUM0003 WRITE(6,2000) PDIA,PE,PNU,PYIELD,PELONG,PDEN,NONLIN ALUM0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY ALUM0004 IF(NONLIN.EQ . 2) WRITE(6,2001) PE2 ALUM0067
THE FEDERAL HIGHWAY ADMINISTRATION ALUM0005 PIMIN = PDIA'*2/{PE*FF) ALUM0068
ALUM0006 PHINGE(l) ~ 0 . 0 ALUM0069
SUBROUTINE ALUMIN (IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA, ALUM0007 IF(XMODE.EQ.DESIGN) GO TO 110 ALUM0070
1 PIPMAT,RESULT,SK,SM,XMODE) ALUM0008 READ(5,1010) PA,PI,PS ALUM0071
C ALUM0009 WRITE(6,2010) PA,PI,PS ALUMOOn
C SUBROUTINE FOR CORRUGATED ALUMINUM CULVERTS. ALUM0010 GO TO 130 ALUM0073
C ALUM0011 C ALUM0074
C THE FOLLOWING ADDITIONS TO THE * RESULT * ARRAY ARE CALCULhTED ALUM0012 110 READ(5,1010) (PFS(I),I~l,NFS) ALUM0075
C IN THIS SUBROUTINE. ALUM0013 DO 120 I~l, NFS ALUM0076
C ALUM0014 IF(PFS(I) . GT.O.O) GO TO 120 ALUM0077
C RESULT(10,N) BENDING STRESSES IN OUTER FIBERS. ALUM0015 PFS (I) = FS ( I ) ALUM0078
C RESULT(11,N) THRUST STRESS (AVERAGE OVER SECTION) ALUM0016 120 CONTINUE ALUM0079
C RESULT(12,N) - SHEAR STRESS (AVERAGE OVER SECTION) ALUM0017 WRITE(6,2100) (PFS(I),I-1,NFS) ALUM0080
C ALUM0018 C ALUM0081
Uncomment this statement in all program modules for double ALUM0019 PAMIN - GAGE20 ALUM0062
precision version. SCM 3-10-90 ALUM0020 PA - PAMIN ALUM0083
N
0\ ALUM0021 PI - PIMIN ALUM0084
IMPLICIT DOUBLE PRECISION (A-H,O-Z) ALUM0022 C NOTE ... SECTION MODULUS FOR ALUMINUM CORRUGATIONS HAS THE RELATION,ALUM0085
ALUM0023 PS - PI/(1.417*SQRT(PI/PA) + 0.450*PA) ALUM0086
Revise dimensions of PIPMAT and RESULT arrays from 30 to 99. ALUM0024 ITER = 0 ALUM0087
SCM 4-30-89 ALUM0025 C ALUM0088
ALUM0026 C INITIALIZE PIPE PROPERTIES ALL AROUND PIPE TO BE THE SAME ALUM0089
DIMENSION CPLIST(10),FS(4),PALIST(35),PFS(4),PHINGE(5),PILIST(35),ALUM0027 C ALUM0090
1 PIPMAT (5,99) , PSLIST (35) , RESULT (20,99) ALUM0028 130 DO 140 N-l,NPMAT ALUM0091
ALUM0029 PIPMAT (1, N) - PE ALUM0092
DATA E,XNU,YIELD,ELONG,E2/10200000.,O.33,24000.,O.05,600000.1 ALUM0030 PIPMAT(2, N) PNU ALUM0093
DATA NFS,FS/4,3.,4.,2.,2.01 ALUM0031 PIPMAT(3,N) PA ALUM0094
DATA FF,GAGE2010.09,O.0381 ALUM0032 PIPMAT (4, N) PI ALUM0095
DATA ANALYS, DESIGN 14HANAL,4HDESII ALUM0033 140 PIPMAT(5,N) PDEN*PA ALUM0096
DATA CPLIST,BXB,NUMCP,NUMGAI 4H 8/3,4H 3,4H 6,4H 6,4H 9, ALUM0034 C ALUM0097
1 4Hl/2,2*4H1 ,4H2 ,4H5/2 ,3H X ,5,71 ALUM0035 DO 145 N=l, NPPT ALUM0098
DATA PALISTI ALUM0036 RESULT(14,N) PA ALUM0099
1 0 . 03875,0.05158,0.06458,0.08066,0.11300,0.14533,0.17775, ALUM0037 RESULT{15,N) PI ALUMOIOO
2 0.04450,0.05925,0.07416,0.09275,0.13000,0.16733,0.20483, ALUM0038 145 RESULT (16, N) PI/PS ALUMOIOI
3 0.00000,0.00000,0.06460,0.08080,0.11300,0.14540,0.17750, ALUM0039 ICON = 0 ALUMOI02
0.00000,0.00000,0.20408,0.22825,0.26658,0.30483,0.34325, ALUM0040 PESUM = PE ALUM0103
0.11700,0.14600,0.17500,0.20400,0.23400,0.26300,0.292001 ALUMOO41 RETURN ALUMOI04
DATA PILIST/ ALUM0042 C ALUMOI05
1 0.00112,0.00150,0.00189,0.00239,0.00342,0.00453,0.0057 , ALUMOO43 C ALUMOI06
2 0.00515,0.00689,0.00865,0.01088,0.01545,0.02017,0.02508, ALUM0044 C SECOND ENTRY DETERMINES MAXIMUM STRUCTURAL RESPONSES FOR ALUMOI07
3 0.00000,0.00000,0.00850,0.01060,0.01490,0.01910,0.02340, ALUM0045 C EVALUATING THE PIPE IN TERMS OF FAILURE CRITERIA. IN THE DESIGN ALUMOI08
0.00000,0.00000,0.09616,0.10800,0.12691,0.14616,0.16583, ALUM0046 C MODE, THE PROGRAM ITERATES TO FIND ADEQUATE SECTION PROPERTIES. ALUMOI09
0.09100,0.11400,0.13600,0 . 15900,0.18200,0.20600,0.227001 ALUMOO47 C ALUM0110
DATA PSLIST/ ALUM0048 200 IEXIT = 0 ALUMO 11 1
1 0.00419,0.00549,0.00676,0 . 00831,0 . 01133,0.01428,0.01724, ALUM0049 C ALUMO 11 2
2 0 . 00995,0.01315,0.01634,0.02025,0.02798,0.03557,0.04308, ALUM0050 IF{NONLIN.EQ . l .AND. IA.EQ.NINC) CALL HINGE(PIPMAT,NPMAT,PS,PDIA, ALUMOl13
3 0.00000,0.00000,0.01603,0 . 01974,0.02697,0.03366,0.04021, ALUM0051 X PYIELD,SM,SK,RESULT,NPPT,PHINGE) ALUMOl14
IF(NONLIN.NE.2) GO TO 203 ALUMO 11 5 IF(ABS«PANEW-PA)/PANEW) .LT . O.OS) ICHKA - 1 ALUM0178
ICON = ICON + 1 ALUM01l6 PA = PANEW ALUM0179
CALL EMOD(IA,ICON,NPMAT,NPPT,PA,PE, PE2,PESUM,PI,PIPMAT, ALUM01l7 C ALUMOI80
1 PNU,PS,PYIELD,RESULT,ICOME) ALUM0118 C UPDATE MOMENT OF INERTIA AS REQUIRED BY . .. (1) DEFLECTION LIMIT ALUM0181
IF(ICON.EQ . -1) GO TO 203 ALUMO 11 9 C AS A PERCENT OF DIAMETER, OR (2) ELASTIC BUCKLING AS GIVEN BY ALUM0182
IEXIT = -1 ALUMOl20 C CHELAPATI, HIGHWAY RESEARCH RECORD, NO. 413, 1972., OR (3) STRAIN ALUM0183
RETURN ALUM0121 C RUPTURE IN THE OUTER FIBERS . ALUM0184
C ALUM0122 C ALUM0185
C CHECK IF NONLINEAR SOIL MODEL HAS CONVERGED . . . ALUMOl23 PINEWD - PFS(2)*DISP*PI/(0 . 2*PDIA) ALUM0186
C ALUM0124 PINEWB = (PFS(3)'PAVG)**2*PBUCK ALUM0187
203 IF(NINC . GT.O) GO TO 204 ALUM012S PINEWS PFS(4)*EPSMAX*PI/PELONG ALUM0188
IEXIT = -1 ALUM0126 ALUM0189
RETURN ALUMOl27 Revise intrinsic function to generic form. ALUM0190
C ALUM012B SCM 3-10-90 ALUM0191
C EVALUATE CURRENT MAXIMUM STRESSES, DISPLACEMENTS, AND PRESSURES . ALUM0129 ALUM0192
C ALUMO 13 0 PINEW MAX(PINEWD,PINEWB,PINEWS) ALUM0193
204 TMAX = 0 . 0 ALUM0131 ALUM0194
BMAX ~ 0 . 0 ALUM0132 IF(PINEW . LT.PIMIN) PINEW = PIMIN ALUM0195
PAVG = 0 . 0 ALUM0133 IF(ABS«PINEW-PI)/PlNEW) .LT.O.OS) ICHKI - 1 ALUM0196
EPSMAX = 0.0 ALUM0134 PI - PINEW ALUM0197
UYMAX = RESULT(4,l) ALUMO 13 5 PS = PI/(1.417*SQRT(PI/PA) + 0.4S0*PA) ALUM0198
UYMIN = RESULT(4,l) ALUM0136 C ALUMOI99
C ALUM0137 C UPDATE SECTION PROPERTIES AND CHECK FOR CONVERGENCE. ALUM0200
DO 210 N=l,NPPT ALUM0138 C ALUM0201
RESULT(10,N) RESULT(S,N)(PS ALUM0139 IF(ICHKA*ICHKI.EQ.l) GO TO 250 ALUM0202
RESULT(I1,N) = RESULT(6,N)(PA ALUM0140 IF(ITER.GT.5) WRITE(6,2200) ITER,PA,PI,PS ALUM0203
RESULT(I2,N) - RESULT(7,N)(PA ALUM0141 IF(ITER.GT.S) GO TO 300 ALUM0204
IF(NONLIN.EQ . O) GO TO 20S ALUM0142 IEXIT = -2 ALUM0205
SIGN s 1. 0 ALUM0143 GO TO 130 ALUM0206
IF(RESULT(10,N) .LT-O.O) SIGN = -1.0 ALUM0144 C ALUM0207
BSTRES - PYIELD ALUM014S SEARCH STANDARD CORRUGATION TABLES FOR SUITABLE SECTIONS WHICH ALUM0208
...... IF(NONLIN.EQ . 2) BSTRES = PYIELD + RESULT(I7,N) ALUM0146
C
C SATISFY THE DESIGN SOLUTION, LIST THEM. ALUM0209
N ALUM0147 ALUM0210
--...) IF(SIGN'RESULT(IO,N) .GT.PYIELD) RESULT(IO,N) = SIGN'BSTRES C
20S IF(ABS(RESULT(10,N)) .GT.BMAX) BMAX = ABS(RESULT(10,N)) ALUM0148 250 WRITE(6,2300) ITER,PA,PI,PS ALUM0211
IF(ABS(RESULT(11,N)) . GT.TMAX) TMAX = ABS(RESULT(ll,N)) ALUM0149 SUMMAX - 0.0 ALUM0212
IF(RESULT(4,N).GT.UYMAX) UYMAX c RESULT(4,N) ALUMOISO IJBEST = 0 ALUM0213
IF(RESULT(4,N).LT.UYMIN) UYMIN = RESULT(4,N) ALUMOlS1 DO 280 I-l,NUMCP ALUM0214
IF(NONLIN.EQ . 2.AND.RESULT(lB,N) . GT.EPSMAX) EPSMAX c RESULT(lB,N) ALUM01S2 NGAGE - 0 ALUM0215
PAVG K PAVG + RESULT(B,N) ALUMOIS3 DO 260 J=l,NUMGA ALUM0216
210 CONTINUE ALUMOlS4 IJ = J+NUMGA*(I-l) ALUM0217
PAVG = ABS(PAVG(NPPT) ALUM0155 CPA = PALIST(IJ) ALUMO 21 8
DISP ~ UYMAX-UYMIN ALUMOI56 CPI = PILIST(IJ) ALUM02I9
IF (SM .EQ. 0.0) SM - 1.0 ALUM0157 IF(CPA.LT.PA .OR. CPI.LT.PI) GO TO 260 ALUM0220
PBUCK - PDIA"3(36.*PESUM'SM*(1 . -SK))*(1.-PNU**2) ALUMOlS8 NGAGE = 22-2'J ALUM0221
PCRIT = SQRT(PI(PBUCK) ALUM0159 IF(I.EQ.4) NGAGE- 14-2*J+J/4 ALUM0222
IF(NONLIN.EQ . O) EPSMAX - BMAX*(l . -PNU**2)(PE ALUM0160 IF(LEQ . S) NGAGE= 0 ALUM0223
IF(NONLIN.EQ.1) EPSMAX PHINGE(S)*(I.-PNU**2)*PYIELD(PE ALUM0161 GO TO 270 ALUM0224
IF(NONLIN.EQ.2) EPSMAX c EPSMAX*(1.-PNU**2)'PYIELD(PE ALUM0162 260 CONTINUE ALUM0225
IF(NONLIN.EQ . ! .AND . PHINGE(l) .LT.O.O) GO TO 300 ALUM0163 WRITE(6,2400) CPLIST(I),BXB,CPLIST(I+5) ALUM0226
IF(XMODE.EQ.ANALYS) GO TO 300 ALUM0164 GO TO 280 ALUM0227
C ALUM0165 270 WRITE(6,2500) CPLIST(I),BXB,CPLIST(I+5),NGAGE,CPA,CP! ALUM0228
C DESIGN ... REVISE SECTION PROPERTIES AS REQUIRED ALUMOI66 SUMS = PA/CPA + PI/Cpr ALUM0229
C ALUM0167 IF(SUMS.LT.SUMMAX) GO TO 290 ALUM0230
ICON = 0 ALUM0168 SUMMAX = SUMS ALUM0231
IF(IA . LT.NINC) RETURN ALUM0169 IJBEST IJ ALUM0232
ITER = ITER + 1 ALUMOI70 NGBEST = NGAGE ALUM0233
ICHKA - 0 ALUM0171 280 CONTINUE ALUM0234
ICHRI = 0 ALUMOl72 C ALUM023S
C ALUM0173 C CHOOSE MOST EFFICIENT SECTION FROM LIST AND ANALYSE. ALUM0236
C UPDATE THRUST AREA AS REQUIRED BY MAX THRUST. ALUM0174 C ALUM0237
C ALUM0175 IF(IJBEST.EQ.O) WRITE(6,2600) ALUM0238
PANEW = PFS(l)*TMAX'PA/ PYIELD ALUM0176 IF(IJBEST.EQ.O) GO TO 300 ALUM0239
IF(PANEW.LT.PAMIN) PANEW = PAMIN ALUM0177 PA = PALIST(IJBEST) ALUM024 0
PI = PILIST(IJBEST) ALUM0241 X 17X,34H NONLIN=2, IMPLIES BILINEAR CURVE I) ALUM0304
PS = PSLIST(IJBEST) ALUM0242 2001 FORMAT ( 115X,36H MODULUS OF UPPER BI-CURVE ......... ,E15.5 I) ALUM0305
IBEST = (IJBEST-1)/NUHGA+1 ALUM0243 2010 FORMAT(II lOX, 31H SECTION PROPERTIES OF PIPE II ALUM0306
WRITE(6,2100) CPLIST(IBEST),BXB,CPLIST(IBEST+5),NGBEST ALUM0244 X 15X, 36H THRUST AREA (IN**2/IN) ............ FlO.5 II ALUM0301
XMODE = ANAL YS ALUM0245 X 15X, 36H MOM. OF INERTIA (IN**4IIN) ........ , FlO.5 /I ALUM030B
IEXIT = -2 ALUM0246 X 15X, 36H SECTION MODULUS (IN**3/IN) ........ , FlO.5 I) ALUM0309
GO TO 130 ALUM0241 2100 FORMATIIII 10X,43H DESIRED SAFETY FACTORS FOR PIPE DESIGN '" III ALUM0310
C ALUM024 B X 15X,36H THRUST STRESS YIELDING ... . ........ , F10.5 II ALUM031 1
300 CONTINUE ALUM0249 X 15X,36H DEFLECTION COLLAPSE, (0.2*D) ....... , F10.5 II ALUM0312
C ALUM0250 X 15X,36H ELASTIC BUCKLING .................. F10.5 II ALUM0313
C PRINT FINITE ELEMENT FIELD RESPONSES. ALUM0251 X 15X,36H OUTER FIBER RUPTURE ........•...... FIO.5 I) ALUM0314
C ALUM0252 2200 FORMAT(lH1,111 10X,50H DESIGN ITERATIVE PROCEDURE DID NOT CONVERGEALUM0315
IF (LEVEL .EQ. 1) GO TO 330 ALUM0253 X AFTER ,131 10X,55H ITERATIONS. THE LAST SOLUTION IS PRINTED AND EALUM0316
ICOME = 3 ALUM0254 XVALUATED, I 10X,31H WHERE THE SECTION PROPERTIES ARE II ALUH0311
CALL PRHERO(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA,PIPMAT, ALUM0255 X 15X,36H THRUST AREA PER UNIT LENGTH ....... E15.5 II ALUM0318
1 RESULT, SK, SM) ALUM0256 X 15X,36H MOM. OF INERTIA PER UNIT LENGTH ... , E15. 5 I I ALUM0319
ICOME 2 ALUM0251 X 15X,36H SECTION MODULUS PER UNIT LENGTH .. , , E15.5 II) ALUM0320
330 CONTINUE ALUM025B 2300 FORMAT(lH1,1110X,19H DESIGN RESULTS AT ,I2,11H ITERATIONS II ALUM0321
ICOME=3 ALUM0259 X 15X, 35H REQUIRED THRUST AREA ......... , FIO.5 II ALUM0322
IF(NONLIN.EQ.2) CALL EMOD(IA,lCON,NPMAT,NPPT,PA,PE,PE2,PESUM,PI, ALUM0260 X 15X, 35H REQUIRED MOM. OR INERTIA ..... , FlO.5 /I ALUH0323
1 PIPMAT,PNU,PS,PYIELD,RESULT,ICOME) ALUM0261 X 15X, 35H REQUIRED SECTION MODULUS ..... , F10.5 1I1I ALUH0324
ICOME=2 ALUM0262 X lOX, 52H THE FOLLOWING ALUMINUM CORRUGATED SECTIONS MEET THE ALUH0325
C ALUM0263 X lOX, 37H ABOVE REQUIREMENTS WITH MINIMUM AREA /I ALUH0326
C PRINTOUT STRUCTURAL RESULTS AND EVALUATION. ALUM0264 X15X,12H CORRUGATION,3X,5H GAGE,3X,12H THRUST AREA,3X,13H MOM. INERALUM0327
C ALUM0265 XTIA I) ALUH032B
WRITE(6,2800) lA, (RESULT(1,J),RESULT(3,J),RESULT(8,J),RESULT(5,J),ALUM0266 2400 FORMAT(17X,3A4,3X,22H (NO ADEQUATE SECTION) ALUM0329
X RESULT(6,J) ,RESULT(1,J) ,RESULT(2,J) ,RESULT(4,J) ,RESULT (9,J), ALUM0261 2500 FORMAT(17X,3A4,6X,I2,5X,F10.5,5X,F10.5) ALUM033 0
X RESULT(10,J),RESULT(11,J),RESULT(12,J),J~1,NPPT) ALUM026B 2600 FORMAT (/ I I I 10X,37H NO STANDARD CORRUGATION IS ADEQUATE. ALUM0331
C ALUM0269 X lOX, 45H AN ANALYSIS OF THE REQUIRED SECTION FOLLOWS. ) ALUM0332
IF(NONLIN.EQ.2) WRITE(6,2990) lA, (J,RESULT(19,J),RESULT(20,J), ALUM021 0 2700 FORMAT(IIII lOX, 38H THE CORRUGATION WITH MINIMUM AREA AND ALUM0333
..... C
X RESULT(18,J),RESULT(13,J),J=1,NPPT) ALUM0211
ALUM0212
X10X,21H MOMENT OF INERTIA IS,3A4,5H GAGE,I3, I
X lOX, 41H AN ANALYSIS OF THIS CORRUGATION FOLLOWS. )
ALUM0334
ALUM0335
tv IF (TMAX*DISP*PAVG*BMAX .EQ. 0.0) GO TO 350 ALUM0213 2800 FORMAT(lH1,IIIOX,32H STRUCTURAL RESPONSES OF CULVERT ALUM0336
00
CIRCR = PYIELD/TMAX ALUM0274 X 3X, 12H LOAD STEP ~ ,12 II ALUM0337
DISPR = (0.2*PDIA)/DISP ALUM0275 X 4X,9H X-COORD.,5X,BH X-DISP.,4X,9H N-PRES.,6X,7H MOMENT,6X, ALUM033B
BUCKR - PCRIT/PAVG ALUM0276 X 7H THRUST,1X,6H SHEAR 14X,9H Y-COORD.,5X,8H Y-DISP.,5X,BH S-PRES.ALUM0339
STRNR = PELONG/EPSMAX ALUM0217 X ,4X,9H M-STRESS,4X,9H T-STRESS,4X,9H S-STRESS , ALUM034 0
BENDR = PYIELD/BMAX ALUM027B X (1IF13.2,5E13.3/F13.2,5E13.3» ALUM0341
HANDR = PI/PIMIN ALUM0279 2900 FORMAT(lH1,111110X,34H CALCULATED SAFETY FACTORS AT STEP, 13 III ALUM0342
WRITE(6,2900) IA,CIRCR,DISPR,BUCKR,STRNR,BENDR,HANDR ALUM0280 X15X,50H THRUST STRESS ....... (YIELD-STRESS/MAX-STRESS) =,F10.211 ALUM0343
350 CONTINUE ALUM0281 X15X,50H DISPLACEMENT ......... (DIAMETER*O.2/MAX-DISP.) -,F10.211 ALUM0344
IF(NONLlN.NE.l) GO TO 400 ALUM0282 X15X,50H ELASTIC BUCKLING ......• (P-CRITICAL/P-AVERAGE) =,F10.211 ALUM0345
IF(PHINGE(l) .LT.O.O .OR. PHINGE(l) .GT.l.0) GO TO 400 ALUM0283 X15X,50H STRAIN RUPTURE .... (RUPTURE-STRAIN/MAX-STRAIN) -,F10.211IALUM0346
WRITE(6,2950) (PHINGE(I),I=1,5) ALUM0284 X lOX, 20H PERFORMANCE FACTORS III ALUM0347
400 IEXIT = 1 ALUM02B5 X15X,50H BENDING STRESS ...... (YIELD-STRESs/MAX-STRESS) =,F10.2 IIALUM034B
IF(IA.LT.NINC) IEXIT= 0 ALUM0286 X15X,50H HANDLING REQUIREMENT ............. (FF'EI/D*'2) -,F10.2 I)ALUM0349
ICON = 0 ALUM0287 2950 FORMAT(III lOX, 27H PLASTIC HINGING EVALUATION III ALUM0350
RETURN ALUM0288 X 15X,42H RATIO OF LOAD AT INITIAL YIELDING ..... , F10.5 If ALUM0351
C ALUM02B9 X 15X,42H RATIO OF MAXIMUM HINGE PENETRATION , F10.5 II ALUM0352
C FORMATS ALUM0290 X 15X,42H RATIO OF CIRCUMFERENCE IN YIELDING .... , F10.5 II ALUM0353
C ALUM0291 X 15X,42H RATIO OF MAX-DISP. DUE TO YIELDING .... , F10.5 II ALUM0354
1000 FORMAT (IS, 7FlO.0) ALUM0292 X 15X,42H RATIO OF MAX-STRAIN/YIELD-STRAIN ...... , F10.5 II) ALUM0355
1010 FORMAT (4FlO. 0) ALUM0293 2990 FORMAT(lH1,IIIIOX,40H NONLINEAR CHARACTERISTICS, LOAD STEP =,I311ALUM0356
2000 FORMAT (III 10X,35H PIPE PROPERTIES ARE AS FOLLOWS ... II ALUM0294 X5X,73H NODE INNER-FIBER OUTER-FIBER STRAIN RATIO ALUM0351
X 15X,36H AVERAGE PIPE DIAMETER (IN.) ....... , E15.5 II ALUM0295 X FRACTION OF 121X,57HSTRAIN STRAIN MAX-TO-YIELD ALUM0358
X 15X,36H YOUNGS MODULUS OF PIPE (PSI) .•...•. E15.5 II ALUM0296 X WALL YIELDED II (5X,I5,2E11.5,1X,F10.5,7X,F10.5») ALUM0359
X 15X,36H POISSONS RATIO OF PIPE (-) ........ , E15.5 /I ALUM0291 END ALUM0360
X 15X,36H YIELD STRESS OF PIPE (PSI) ......... E15.5 II ALUM029B ANSPOOOI
X 15X,36H RUPTURE STRAIN OF PIPE (IN/IN) .... , E15.5 /I ALUM0299 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM ANSP0002
X 15X,36H DENSITY OF PIPE (PCI) .............. , E15.5 /I ALUM0300 VERSION 1.0, MARCH 1990 ANSP0003
X 15X,36H MATERIAL CHARACTER, NONLIN ........ , IS I ALUM0301 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY ANSP0004
X 17X,25H NONLIN=O, IMPLIES LINEAR I ALUM0302 THE FEDERAL HIGHWAY ADMINISTRATION ANSP0005
X 17X,30H NONLIN=l, IMPLIES YIELD-HINGE I ALUM0303 ANSP0006
SUBROUTINE ANISP(Cll, C12, C22, C33, PI) ANSP0007 C BASC0012
C ANSPOOOB Uncomment this statement in all program modules for double BASC0013
C THIS SUBROUTINE TRANSFORMS ORTHOTROPIC PROPERTIES FROM THEIR ANSP0009 precision version. SCM 3-10-90 BASC0014
C PREFERED DIRECTIONS TO GLOBAL COORDINATES ANSP0010 BASC0015
C ANSPOOll IMPLICIT DOUBLE PRECISION (A-H,O-Z) BASC0016
Uncomment this statement in all program modules for double ANSP0012 BASC0017
precision version. SCM 3-10-90 ANSP0013 Revise dimensions of PIPMAT and RESULT arrays from 30 to 99 . BASCOOIB
ANSPOOH SCM 4-30-B9 BASC0019
IMPLICIT DOUBLE PRECISION (A-H,O-Z) ANSP0015 BASC0020
ANSP0016 DIMENSION PIPMAT(5,99) ,RESULT(20, 99) BASC0021
COMMON IMATERLI CP(3,3),DEN(10),E(10,10),GNU(10,10),H(10,10), ANSP0017 BASC0022
1 ITYPE(10),NON(10) ANSP001B GO TO (100,200),ICOME BASC0023
DIMENSION TH(3,3),RO(3,3) ANSP0019 C BASC0024
CP(1,3)-0.0 ANSP0020 C FIRST ENTRY READS PIPE PROPERIES. BASC0025
CP(2,3)~0.0 ANSP0021 C BASC0026
CP (3,1) =0.0 ANSP0022 100 IF(NPMAT.EQ.O) RETURN BASC0027
CP(3,2)=0.0 ANSP0023 BASC0028
CP(I,I)=Cll ANSP0024 Add NEXTRA parameter to read statement for input of BASC0029
CP(I,2)=Cl2 ANSP0025 unconnected elements. MGK 1-17-89 BASC0030
CP(2,2)=C22 ANSP0026 BASC0031
CP(3,3)~C33 ANSP0027 READ(5,1000) PDIA,NEXTRA BASC0032
CP(2,1)=CI2 ANSP002B NTOTAL = NPMAT + NEXTRA BASC0033
IF(PI .EQ. O.O)GO TO BO ANSP0029 BASC0034
PI=PI·O. 0174533 ANSP0030 150 READ(5,1500) ISEQl,ISEQ2, (PIPMAT(J,ISEQ1),J=l,5) BASC0035
SPH-SIN (PI) ANSP0031 IF(ISEQl.LE.O) GO TO 400 BASC0036
CPH=COS(PI) ANSP0032 BASC0037
D1=CPH*CPH ANSP0033 Revise statements to substitute NTOTAL for NPMAT to BASC003B
D2=SPH*SPH ANSP0034 implement unconnected element option. MGK 1-17-B9 BASC0039
C1=SPH*CPH ANSP0035 BASC0040
TH(l,l)=D1 ANSP0036 IF (ISEQ2.GT.NTOTAL) GO TO 400 BASCO 0 41
TH(l,2)=D2 ANSP0037 BASC0042
....... TH (1. 3)=C1 ANSP003B IF(ISEQ2.LE.ISEQ1) ISEQ2=ISEQ1 BASC0043
N ANSP0039 DO 175 I - ISEQ1,ISEQ2,l BASC0044
\0 TH(2,1)=D2
TH(2,2)-D1 ANSP0040 DO 175 J=I.5 BASC0045
TH(2,3)=-Cl ANSP0041 175 PIPMAT(J,I) = PIPMAT(J,ISEQ1) BASC0046
TH(3,l)=-2.0*C1 ANSP0042 BASC0047
TH(3,2)=2.0*CI ANSP0043 IF(ISEQ2.EQ.NTOTAL) GO TO 190 BASC0048
TH(3,3)=D1-D2 ANSP0044 BASC0049
DO 67 M=l,3 ANSP0045 GO TO 150 BASC0050
DO 67 N=l,3 ANSP0046 BASC0051
DU=O.O ANSP0047 Revise output statement to use NTOTAL instead of NPMAT for BASC0052
DO 65 L~l,3 ANSP004B unconnected element option . MGK 1- 17-89 BASC0053
65DU=DU+TH(L,N)*CP(M,L) ANSP0049 BASC0054
67 RO(M,N)=DU ANSP0050 190 WRITE(6,2000) PDIA, IJ, (PIPMAT(I,J),I=l,5),J=l,NTOTAL) BASC0055
DO 75 M=l,3 ANSP0051 IF(NTOTAL.GT.99) GO TO 400 BASC0056
DO 75 N=l,3 ANSP0052 BASC0057
DU1=0.0 ANSP0053 RETURN BASC0058
DO n L=l,3 ANSP0054 C BASC0059
72 DU1=DUI~TH(L,M)*RO(L,N) ANSP0055 C SECOND ENTRY PRINTS RESULTS BASCO 0 60
75 CP (M, N) =DU1 ANSP0056 C BASC006l
BO RETURN ANSP0057 200 CONTINUE BASC0062
END ANSPOOS8 C BASC0063
SASCOOO I C CHECK TO SEE IF NONLINEAR SOIL MODEL HAS CONVERGED ... BASC0064
CANDE-B9 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM BASC0002 C BASC0065
VERSION 1.0, MARCH 1990 BASC0003 IF(NINC .GT. 0) GO TO 210 BASC0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY BASC0004 IEXIT = -1 BASC0067
THE FEDERAL HIGHWAY ADMINISTRATION BASCOOOS RETURN BASC0068
.*****".*********.*'*****10*** BASC0006 C BASC0069
SUBROUTINE BASIC (IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA, BASC0007 210 CONTINUE BASC0070
1 PIPMAT,RESULT,XMODE) BASCOOOB C BASC0071
C BASC0009 C OUTPUT FINITE ELEMENT FIELD DATA (IF REQUESTED) BASCOOn
C GENERAL SUBROUTINE FOR ANALYSING ARBITRARY PIPES. NO EVALUATION BASC0010 C BASC0073
C OF STRUCTURAL RESPONSES ARE MADE. BASCOOll IF (LEVEL .EQ. 1) GO TO 350 BASCOO?4
ICOME = 3 BASC0075 STORE(2) -- SA BMEL0026
CALL PRHERO(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA,PIPMAT, BASC0076 C BMEL0027
1 RESULT, SK, SM) BASC0077 C NEW ADDITION STATEMENT IN 1983 FOR JOINT SLIPPING BEHAVIOR . BMEL0028
lCOME = 2 BASC007B C BMEL0029
350 CONTINUE BASC0079 STORE ( 3) =XL BMEL0030
lEXIT = 1 BASCOOBO C BMEL0031
IF(IA.LT.NINC) lEXIT = 0 BASCOOBI EB = CP(1,1) BMEL0032
IF(NPMAT.LE . 0) RETURN BASCOOB2 GNUB = CP(I,2) BMEL0033
WRITE(6,2300) (RESULT(l, J), RESULT (3, J), RESULT (B, J), RESULT (5, J), BASCOOB3 AB = CP(1,3) BMEL0034
X RESULT(6,J),RESULT(7,J) ,RESULT(2,J) ,RESULT(4,J) ,RESULT( 9,J) BASCOOB4 XIB = CP(2,1) BMEL0035
X ,J=l, NPPT) BASCOOB5 EB c EB/(1.0-GNUB*GNUB) BMEL0036
RETURN BASCOOB6 DU=EB*AB/XL BMEL0037
C BASCOOB7 Cl(1,1)=DU BMEL0038
C ERROR EXIT BASCOOBB C1(4,1)=-DU BMEL0039
C BASCOOB9 C1(1,4)=-DU BMEL0040
400 WRITE(6,3000) ISEQl,ISEQ2 BASC0090 Cl(4,4)=DU BMELOO4l
STOP 10 BASC0091 XL=O .S*XL BMEL0042
C BASC0092 RQ(l)=O.O BMEL0043
C FORMATS BASC0093 RQ(3)=O.O BMEL0044
C BASC0094 D=.2S/XL BMEL0045
Revise format statement for reading input of unconnected BASC0095 RQ(2)=-D BMEL0046
structures option. MGK 1-17-89 BASC0096 RQ(4)=D BMELOOn
BASC0097 ZQ(2)=D BMEL004B
1000 FORMAT(FI0.0, IS) BASC009B ZQ(4)=D BMEL0049
BASC0099 D=D/XL BMELOOSO
1500 FORMAT(2I5,5FIO.0) BASC0100 ZQ(l)-D BMEL0051
2000 FORMAT (/ I I 10X,35H PIPE PROPERTIES ARE AS FOLLOWS ... I I BASCOI01 ZQ(3)=-D BMELOOS2
X 15X,36H AVERAGE PIPE DIAMETER ..... . ....... , E15.5 II BASCOI02 D~8.0*XL·EB*XIB BMEL0053
X lX,9H MATERIAL ,5X,7H YOUNGS ,4X,8H POISSON ,5X,7H THRUST ,5X, BASCOI03 DO 120 L-1,4 BMEL0054
X7H MOMENT ,4X,BH DENSITY I 3X,7H NUMBER ,4X,8H MODULUS ,6X, BASC0104 LS=L+l+L/3 BMEL0055
BMELOOS6
.....
W 2300
X 6H RATIO, 7X,5H AREA ,4X,BH INERTIA 1(5X,I5,5E12.4))
FORMAT(lHl,1110X,32H STRUCTURAL RESPONSES OF CULVERT II
BASCOI05
BASCOI06
DO 120 J-1,4
JS=J+l+J/3 BMELOOS7
X 4X,9H X-COORD.,5X,8H X-DISP . ,4X,9H N-PRES.,6X,7H MOMENT,6X, BASCOI07 C BMEL0058
o X 7H THRUST,7X,6H SHEAR 14X,9H Y-COORD.,5X,BH Y-DISP.,5X,BH S-PRES.BASC010B 120 Cl(LS,JS)cD*(RQ(J)*RQ(L)+3. ·ZQ(J) *ZQ(L)) BMEL0059
X, (11F13.2,5E13.3/F13.2,2E13.3)) BASCOI09 C BMEL0060
3000 FORMAT ( 11127H FATAL DATA ERROR IN BASIC I BASCOIIO C LOCAL UNKNOWNS TRANSFORMED TO GLOBAL UNKNOWNS BMEL0061
X44H BEAM SEQUENCE NUMBERS ARE OUT OF BOUNDS . .. ,215) BASCOlll C BMEL0062
END BASCOl12 DO 400 NR=I,4,3 BMEL0063
• * * * * + BMELOOOI DO 315 JJ-1, 6 BMEL0064
CANDE-B9 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM BMEL0002 D2~Cl (NR+I, JJ) BMEL0065
VERSION 1.0, MARCH 1990 BMEL0003 Dl=Cl(NR,JJ) BMEL0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY BMEL0004 C1(NR,JJ)-Dl*CA+DZ*SA BMEL0067
THE FEDERAL HIGHWAY ADMINISTRATION BMEL0005 315 Cl(NR+l,JJ)--Dl*SA+D2*CA BMEL006B
* * * • * * * * * * * * * * * * * * * * * * * * * + * * * * BMEL0006 DO 318 II~l, 6 BMEL0069
SUBROUTINE BEAMEL BMEL0007 Dl=C1 (II, NR) BMEL0070
C BMEL0008 D2-Cl (II,NR+1) BHELOO7l
C THIS SUBROUTINE CALCULATES THE STIFFNESS MATRIX FOR A BENDING ELEMBMEL0009 Cl(II,NR)-D1*CA+D2*SA BMELOOn
C BMELOOI0 31B C1(II,NR+l)=-Dl*SA+D2*CA BMEL0073
Uncomment this statement in all program modules for double BMELOOll 400 CONTINUE BMEL0074
precision version. SCM 3-10-90 BMELOOn C BHEL0075
BMEL0013 C GRAVITY LOAD OF BENDING ELEMENT BMEL0076
IMPLICIT DOUBLE PRECISION (A-H,O-Z) BMEL0014 C BMELOOn
BMEL0015 ZY(2) = -RO*XL BMEL0078
COMMON I ELEMNTI AS (3), BS (3) ,Cl (17,17), EST (4,3), RQ(4), RT(3), BMEL0016 ZY(5) = -RO*XL BMEL0079
1 STORE (17), Z4 (12), ZQ(4), ZT(3), ZY(17), JI, RO BMEL0017 RETURN BMEL0080
COMMON lMATERLI CP (3, 3 ) , DEN ( 10) , E (10, 10) , GNU ( 10, 10) , H( 10, 10) , BMEL0018 END BMEL0081
I ITYPE(10) ,NON(10) BMEL0019 * • • *." • • *+ • • * * * .. * ...... ** • • • * * ..... BMSTOOOI
CA=RQ(2) -RQ (1) BMEL0020 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM BMST0002
SA=ZQ (2) -ZQ (1) BMEL0021 VERSION 1.0, MARCH 1990 BMST0003
XL=SQRT(CA*CA+SA*SA) BMEL0022 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY BI1ST0004
CA=CAlXL BMEL0023 THE FEDERAL HIGHWAY ADMINISTRATION BMST0005
SAs-SA/XL BMEL0024 * . * * * * * ..... * * * * * . . . . . " ... * * * * - * ... BMST0006
STORE(l)=CA BMEL002S SUBROUTINE BEAMST (NOD,NQ,I,NELEM,NPT,MN) BMST0007
C BMST0008 " .. ... .. ." .. .. .. .. .. .. .. .. .. .. .. .. .,. .. .. .. .. .. .. ." .. ... .. .. .. .. .. .. CANAOOO 6
C THIS SUBROUTINE CALCULATES BEAM FORCES, SHEARS AND MOMENTS BMST0009 SUBROUTINE CANARl (LUDATA,KPUTCK,DENSTY) CANA0007
C BMSTOOI0 C CANA0008
Uncomment this statement in all program modules for double BMSTOOll C ADDED TO CANOE IN 1989. CANA0009
precision version. SCM 3-10-90 BMST0012 C CANA0010
BMST0013 C GENERATES TWO OR THREE SEGMENT ARCH MESH WITH CURVED OR CANA0011
IMPLICIT DOUBLE PRECISION (A-H,O-Z) BMST0014 C STRAIGHT SEGMENTS. DEVELOPED BY SYRO STEEL COMPANY . CANA0012
BMST0015 CANA0013
DIMENSION NODI4,NELEM),NQINPT) BMST0016 Uncomment this statement in all program modules for double CANA0014
COMMON IELEMNTI AS(3),BS(3),ClI17,17),ESTI4,3),RQI4),RT(3), BMST0017 precision version. SCM 3-10-90 CANA0015
1 STORE (17), Z4 (12), ZQ(4), ZT (3), ZY( 17), J1, RO BMST0018 CANA0016
COMMON/SYSTEM/B(240),A(240,120) BMSTOOl9 IMPLICIT DOUBLE PRECISION (A-H,O-Z) CANA0017
c BMST0020 CANAOOIB
c NEW ADDITION COMMON STATEMENT IN 1983 FOR JOINT SLIPPING BEHAVIOR BMST0021 DIMENSION NODMD112,107) ,NODMD212,55),NODMDA(2,9) ,NODMODI2,171), CANA0019
c BMST0022 X XYAND1(3,60) ,XYAND213,51) ,XYANDA(3,9) ,XYANDSI3,120) , CANA0020
Expand array dimension statements from 30 to 99 . BMST0023 X LNOD1(11,l9),LNOD2111,37),LNOD3111,16),LNOD4(11,19), CANA0021
SCM 5-22-89 BMST0024 X LNODAlll,3),LNODlll,94),NODBC1135) ,NODBCA(6) ,NODBC(41) , CANAD022
BMST0025 X X(307),YI307),TITLEI17),TPMESHI4) CANA0023
COMMON/XJOINT/DSTRN(99),XLONGI99) ,JOINT BMST0026 DIMENSION R(3),THETA(4),CHORDI3),ARCLENI3),XCEN(3),YCEN(3), CANA0024
C BMST0027 X ANG 120) ,XPN (20) , YPN 120) ,DELTA(3) ,NDEV (3) CANAD025
C BMST0028 DATA PI/3.14159265/ CANA0026
C STIFFNESS MATRIX TIMES DISPLACEMENT BMST0029 DATA LIH, IBLANK, PREP, STOP, XMOD/IHL,lH ,4HPREP,4HSTOP,4HMOD / CANA0027
C BMST0030 DATA IZERO, lONE, FZERO ,XBLANK 10,1,0 . 0,4" / CANA0028
COST=STORE(1) BMST0031 DATA TPMESH /4HEMBA,4HTREN,4HHOMO,4H / CANA0029
SINT=STORE(2) BMST0032 DATA INCLEV, INCMAX, NUMNP, NUMEL, NBPTC 1 8,20,244,209,35 / CANA0030
C BMST0033 DATA NODMDll 1,0, 4,202, 5,200, 6,200, 8,202, CANAD031
C NEW ADDITION STATEMENT IN 1983 FOR JOINT SLIPPING BEHAVIOR . BMST0034 X 15,202, 30,5, 45,S, 60,5, 75,102, 90,100, CANA0032
C BMST0035 X 127,5, 157,5, 189,5, 223,5, 244,102, 16,300, CANA0033
XL~STORE(3) BMST0036 X 19,302,20,300,21,300,23,302, 30,3, 31,300, CANA0034
C BMST0037 X 34,302, 35,300, 36,300, 38,302, 45,3, 46,300, CANA0035
BMST0038 49,302, 50,300, 51,300, 53,302, 60,3, 61,300, CANA0036
...... ZYIS)=ZYI4)
ZY(4)-ZY(3) BMST0039
X
x 64,302, 65,300, 66,300, 68,302, 75,3, 76,300, CANA003?
w
...... N1 = NODI1,I) BMST0040 X 79,302, BO,300, 81,300, 83,302, 90,3, 121,200, CANA003B
NO-NQIN1) 1100+2 BMST0041 X 127,3, 151,200, 157,3, IB3,200, 189,3, 217,200, CANA0039
ZY(3) = BIND) BMST0042 X 223,3, 224,300, 237,202, 244,3, 198,0, 200,302, CANA0040
DO 100 K=1,6 BMSTOOO X 2 01,5, 202,5, 224,3, 194,0, 196,302, 197,5, CANAD041
DU~ O.O BMSTOOH x 203,5, 225,3, 190,0, 192,302, 193,5, 204,5, CANAD042
DO 90 L=1,6 BMST0045 x 226,3, 167,0, 169,302, 170,5, 205,5, 227,3, CANAOOO
90 DU~DU+C1IK,L)*ZYIL) BMST0046 X 164,0, 166,302, 171,5, 206,5, 228,3, 161,0, CANA0044
100 STORE(K)=DU BMST0047 x 163,302, 172,5, 207,5, 229,3, 158,0, 160,302, CANA0045
RQ(1)=-STORE(1)*COST-STORE(2)*SINT BMST004B X 173,5, 20B,5, 230,3, 138,0, 140,302, 174,5, CANA0046
RQ(2)=STOREIl)'SINT-STOREI2)*COST BMST0049 x 209,5, 231,3, 136,0, 137,5, 141,302, 175,5, CANA0041
RQ(3) = STORE(3) BMST0050 X 210,5, 232,3, 134,0, 135,5, 142,302, 176,5 / CANAD048
RQ(4) = STORE 11) BMST005l DATA NODMD2 211,5, 233,3, 83,1, 96,5, 102,5, CANA0049
ZQ(1)=STOREI4)*COST+STORE(5)*SINT BMST0052 X 108,5, 114,5, 150,5, IB2,5, 216,5, 237,3, CANA0050
ZQ(2)=-STOREI4)*SINT+STOREIS)*COST BMST0053 X 233,1, 213,5, 214,5, 215,302, 132,0, 133,5, CANA0051
ZQ(3) -STORE(6) BMST0054 x 143,302, 177,5, 212,5, 213,3, 130,0, 131,5, CANA0052
ZQ(4) = STORE(2) BMST0055 X 144,302, 178,5, 179,5, 214,3, 12B,0, 129,5, CANA0053
C BMST0056 X 145,302, 146,5, 180,5, 215,3, 109,0, 111,302, CANA0054
C NEW ADDITION STATEMENTS IN 1983 FOR JOINT SLIPPING BEHAVIOR. BMST0057 x 114,3, 115,0, 117 , 302, 148,5, 149,5, 150,3, CANA0055
C BMST0058 x 118,0, 120,302, 147,5, 181,5, IB2,3, 103,0, CANA0056
IFIJOINT . EQ.O)RETURN BMST0059 x 105,302, 108,3, 97,0, 99,302, 102,3, 91,0, CANA0057
UL1=COST*ZY(1)+SINT*ZYI2) BMST0060 X 93,302, 96,3 / CANA0058
UL2 z cOST*ZY(4)+SINT*ZY(5) BMST0061 DATA NODMDA I 245,0, 258,202, 265,302, 266,0, 279,202, CANA0059
DSTRN(MN)-(UL2-UL1)/XL BMST0062 X 286,302, 287,0, 300,202, 307,302 I CANA0060
XLONGIMN) - XL BMST0063 DATA XYANDll 3-0.0, 0.0,1.0,0.79, 0.0,1.0,0.0, CANA0061
RETURN BMST0064 x 0.0,1.0,0.0, 0.0,2*1.0, 0.0,1.0,1.26, CANA0062
END BMST0065 x 15.0,0.0,0.79, 15.0,2*0.0, 15.0,0.0, 1. 0. CANA0063
.. ." . . . . . . . . . . . . . . . . . . . . * . . . . . . . . . CANAOOOl x 1.0,30 . 0,0 . 0, 4.0,30 . 0,0.79, 5.0,30. 0 ,0.0 , CANA0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM CANA0002 x 6 .0 ,30. 0, 0 . 0, 8.0,30.0,1.0, 2*0.0,1. 2 6, CANA0065
VERSION 1.0, MARCH 1990 CANA0003 x 1.0 , 45 . 0 , 0 . 0, 4.0,45 . 0,0.79, 5.0,45 . 0,0 . 0, CANA0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY CANAO004 X 6 . 0,4·5 . 0 , 0 . 0, 8.0,45.0,1.0, 2*0.0,1. 2 6, CANA0067
THE FEDERAL HIGHWAY ADMINISTRATION CANA0005 X 1. 0,60 . 0,0 . 0, 4.0,60. 0,0.79, 5.0,60. 0 .0 . 0, CANA006B
X 6.0,60.0,0.0, 8.0,60.0,1.0, 2*0.0,1.26, CANA0069 DATA LNOD3 I CANA0132
X 1.0,75.0,0.0, 4.0,75.0,0.79, 5.0,15.0,0.0, CANA0070 X 159,145,120,147,146,3,5,0,0,0,0,160,201,197,203,202,3,6,0,0,0,0, CANA0133
X 6.0,75.0,0.0, 8.0,75.0,1.0, 2*0.0,1.26, CANA0071 X 161,191,193,204,203,3,6,0,0,0,0,162,193,110,205,204,3,6,0,0,0,0, CANA0134
X 1.0,90.0,0.0, 4.0,90.0,0.79, 5.0,90.0,0.0, CANAO072 X 163,170,111,206,205,3,6,0,1,1,0,170,171,118,119,212,3,6,0,0,0,0, CANA0135
X 6.0,90.0,0.0, 8.0,90.0,0.0, 2*0.0,1.26, CANAO073 X 171,118,146,180,179,3,6,0,0,0,0,172,146,141,181,180,3,6,0,0,0,0, CANA0136
X 0.0,127.0,0.0, 2*0.0,1.26, 0.0,157.0,0.0, CANA0074 X 113,202,203,225,224,3,7,0,1,1,0,182,211,212,213,233,3,7,0,0,0,0, CANA0137
X 2*0.0,1.26, 0.0,189.0,0.0, 2*0.0,1.26, CANA0075 X 183,212,119,214,213,3,7,0,0,0,0,184,179,180,215,214,3,1,0,0,0,0, CANA0138
X 0.0,223.0,0.0 , 2*0 . 0,1.26, 1.0,244.0,0.0, CANA0016 X 185,180,181,182,215,3,7,0,0,0,0,186,182,216,215,0,3,1,0,0,0,0, CANA0139
X 0.0,244.0,1.0, 2*0.0,1.26, 3*0.0, CANA0011 X 187,213,234,233,0,3,8,0,0,0,0, 188,213,214,235,234,3,8,0,1,1,0 lCANA0140
X 2*198.0,0.0, 2*0.0,1.00, 3*0.0, CANA0018 DATA LNOD4 I CANA0141
X 2*194.0,0.0, 2*0.0,1.00, 3*0.0, CANA0079 X 191,198,200,199,0,1,5,1,0,0,0, 192,194,196,195,0,2,5,1,0,0,0, CANA0142
X 2*190.0,0.0, 2*0.0,1.00, 3*0.0 I CANA0080 X 193,190,192,191,0,3,5,1,0,0,0, 194,167,169,168,0,4,5,1,0,0,0, CANAOI43
DATA XYAND2/ 2*167.0,0.0, 2*0.0,1.00, 3*0.0, CANA0081 X 195,164,166,165,0,5,5,1,0,0,0, 196,161,163,162,0,6,5,1,0,0,0, CANA0144
X 2*164.0,0.0, Z*0.O,1.00, 3*0.0, CANA008Z X 197,158,160,159,0,7,5,1,0,0,0, 198,138,140,139,0,8,5,1,0,0,0, CANA0145
X 2*161.0,0.0, 2*0 . 0,1. 00, 3*0 . 0, CANA0083 X 199,136,141,137,0,9,5,1,0,0,0, 200,134,142,135,0,10,5,1,0,0,0, CANA0146
X 2*158.0,0.0, 2*0.0,1.00, 3*0 . 0, CANA0084 X 201,132,143,133,0,11,5,1,0,0,0, 202,130,144,131,0,12,5,1,0,0,0, CANA0147
X 2*138.0,0.0, 2*0.0,1.00, 3*0.0, CANA0085 X 203,128,145,129,0,13,5,1,0,0,0, 204,118,120,119,0,14,4,1,0,0,0, CANA0148
X 2*136.0,0.0, 2*0 . 0,1.00, 3*0.0, CANA0086 X 205,115,117,116,0,15,4,1,0,0,0, 206,109,111,110,0,16,3,1,0,0,0, CANA0149
X 2*134.0,0.0, 2*0.0,1.00, 3*0.0, CANA0087 X 207,103,105,104,0,17,3,1,0,0,0, 208,97,99,98,0,18,2,1, 0, 0, 0, CANA0150
X 2*0.0,1.0, 3*0.0, 236.0,216.0,1.0,CANA0088 X 209,91,93,92,0,19,2,1,0,0,0 I CANA0151
X 3*0.0, 2*132.0,0.0, 2*0.0,1.00, CANA0089 DATA LNODA I CANA0152
X 3*0.0, 2*130.0,0.0, 2*0.0,1.00, CANA0090 X 191,224,225,246,245,3,9,0,1,1,0, CANA0153
X 3*0.0, 2*128.0,0.0, 2*0.0,1.00, CANA0091 X 211,245,246,267,266,3;10,0,1,1,0, CANA0154
X 3*0.0, 2*109.0,0.0, 2*0.0,1.00, CANA0092 X 231,266,267,288,287,3,11,0,1,1,0 I CANA0155
X 3*0.0, 2*115.0,0.0, 2*0.0,1.00, CANA0093 DATA NODBC1 I 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,30,45,60,75,90, CANA0156
X 3*0.0, 2*118.0,0.0, 2*0.0,1.00, CANA0094 X 121,157,189,223,224,202,201,200,199,198,76,61,46,31,16 I CANA0157
X 3*0.0, 2*103.0,0.0, Z*0.0,1.00, CANA0095 DATA NODBCA I 245,265,266,286,281,307 I CANA0158
X 3*0.0, 2*97.0,0.0, 2*0.0,1.00, CANA0096 C CANA0159
X 3*0.0, 2*91. 0, 0.0, Z*0.O,I.00 I CANA0097 C INITIALIZE VARIABLES CANA0160
DATA XYANDA I 3*0 .0 , 0.0,245.0,1.0, 15.0,245.0,1.26,CANA0098 C CANA0161

-
w
tv
X
X
3*0.0,
3*0.0,
DATA LNODI I
X 1,194,198,0,0,1,1,0,0,0,0,
0.0,266.0,1.0,
0.0,287.0,1. 0,
15.0,266.0,1.26,CANA0099
15.0,281.0,1.26/CANAOI00

2,190,194,0,0,2,1,0,0,0,0,
CANAOI01
CANAOI02
DO I,J=I,3
R(J) = 0.0
THETA(J) = 0.0
CHORD(J) = 0.0
CANA0162
CANA0163
CANA0164
CANA0165
X 3,167,190,0,0,3,1,0,0,0,0, 4, 164,161,0,0, 4, 1,0,0,0,0, CANAOI03 ARCLEN(J) = 0.0 CANA0166
X 5,161,164,0,0,5, I, 0, 0, 0, 0, 6,158,161,0,0,6, 1,0,0,0,0, CANAOI04 XCEN(J) = 0.0 CANA0167
X 7,138,158,0,0,7,1,0,0,0,0, 8,136,138,0,0,8,1,0,0,0,0, CANAOI05 YCEN(J) = 0.0 CANA0168
X 9,134,136,0,0,9,1,0,0, 0, 0, 10, 132, 13 4 , 0, 0, 10, I, 0, 0, 0, 0, CANAOI06 DELTA(J) - 0.0 CANA0169
12,128,130,0,0,12,1,0,0,0,0,
XII, 130, 132, 0, 0, 11, 1, 0, 0, 0, 0, CANAOI07 DO 2,J-l,20 CANA0170
X 13,118,128,0,0,13,1,0,0,0,0, 14,115,118,0,0,14, I, 0, 0, 0, 0, CANAOI08 ANG(J) = 0.0 CANAOI71
X 15,109,115,0,0,15,1,0,0,0,0, 16,103,109,0,0,16,1,0,0,0,0, CANAOI09 XPN(J) 0.0 CANAOl72
X 11,97,103,0,0,17,1,0,0,0,0, 18,91,97,0,0,18,1, 0,0, 0, 0, CANA0110 2 YPN(J) - 0.0 CANA0173
X 19,80,91,0,0,19,1,0,0,0,0 I CANA0111 DO 3,J=1,301 CANA0114
DATA LNOD2 I CANAO 11 2 X(J) = 0.0 CANA0175
X 20,1,2,17,16,1,1,0,1,1,0, 34,16,17,32,31,1,1,0,1,1,0, CANA0113 ) Y(J) = 0.0 CANA0176
X 48,31,32,47,46,1,1,0,1.1,0 , 62,46,47,62,61,1,1,0,1,1,0, CANAO 11 4 HPRESS = 0 CANA0177
X 76,61,62,17,16,1,1,0,1, 1. O. CANAO 11 5 INCADD = 0 CANA0178
X 19,64,65,80,19,2,1,0,1,1,0, 81,66,61,82,81,1,1,0,1,1,0, CANAOl16 PINC = 0 CANA0l79
X 90,83,84,96,0,3,2,0,0,0 , 0, 91,96,84,121,102,3,2,0,0,0,0, CANAOl17 XDIV - 0 CANA0180
X 92,84,85,122,121,3,2,0,1,1,0, 98,102,121,108,0,3,3,0,0,0,0, CANAOl18 YDIV = 0 CANA0181
X 99,108,121,151,114,3,3,0,0,0,0, 100,121,122,152,151,3,3,0,1,1,0, CANA0119 C CANA0182
X 106,114,151,150,0,3,4,0,0,0,0, 107,150,151,183,0,3,4,0,0,0,0, CANA0120 C READ DATA CARDS THAT SPECIFY THE CANNED MESH CANA0183
X 108,150,183,182,0,3,4,0,0,0,0, 109,151,152,184,183,3,4,0,1,1,0, CANA0121 C CANA0184
X 115,182,183,217,216,3,1,0,1,1,0,122,216,217,238,237,3,8,0,1,1,0, CANA0122 READ(5,1000) WORD,TITLE,WORDI CANA0185
X 129,80,81,94,93,3,2,0,1,1,0, 132,93,94,100,99,3,2,0,1,1,0, CANA0123 READ(5,1005) IPLOT, IWRT,MGENPR,NINC,HTCOVR,DENSTY,TRNDEP,TRNWID, CANA0186
X 135,99,100,106,105,3,3,0,1,1,0, 138,105,106,112,111,3,3,0,1,1,0, CANA0124 X TRNSLP CANA0187
X 141,111,112,148,117,3,4,0,0,0,0,142,112,113,149,148,3,4,0,1,1,0, CANA0125 READ(5,1010) RISE,HFSPAN,SDRISE,FTDEP,FTWIDO,FTWIDI,SPCFAC CANAD188
X 144,117,148,147,120,3,4. 0, 0, 0, 0,145, 148,149,181,141, 3, 4, 0,0, 0, 0, CANA0126 READ(5,1020) (R(J),THETA(J),J=I,3),THETA(4),NTN,NCN CANA0189
X 146,149,150,182,181,3,4,0,0,0,0,141,200,196,197,201,3,5,0,0,0,0, CANA0127 C CANA0190
X 148,196,192,193,197,3,5,0,0,0,0,149,192,169,170,193,3,5,0,0,0,0, CANA0128 C CONVERT INPUT TO PROPER UNITS CANA0191
X 150,169,166,111,170,3,5,0,0,0,0,151,166,163,172,171,3,5,0,0,0,0, CANA0129 C CANA0192
X 152,163,160,113,172,3,5,0,0,0,0,153,160,140,174,173,3,5,0,0,0,0, CANA0130 HTCOVR = HTCOVR*12 CANA0193
X 154,140,141,115,114,3,5,0,1,1,0,158,144,145,146,178,3,5,0,0,0,0 ICANA0131 TRNDEP TRNDEP*12 CANA0194
TRNWID TRNWID*12 CANA019S KPUTCK = KPUTCK + 1 CANA02SB
C CANA0196 END IF CANA02S9
C CHECK INPUT PARAMETERS CANAOI9? END IF CANA026 0
C CANA0198 IF(FTWIDI.LT.O . l*HFSPAN .OR . FTWIDI . GT.O.S*HFSPAN) THEN CANA0261
DO 4,MESHTP=1,3 CANA0199 WRITE(6,2035) CANA0262
IF(WORD.EQ.TPMESH(MESHTP» GO TO 5 CANA0200 KPUTCK = KPUTCK + 1 CANA0263
CONTINUE CANA0201 END IF CANA0264
WRITE(6,2000) WORD CANA0202 IF(FTDEP.LT.O.OS*RISE .OR . FTDEP.GT.O.3*RISE) THEN CANA0265
STOP 12 CANA0203 WRITE(6,2040) CANA0266
If(WORD1.NE . XMOD .AND. WORD1.NE.XBLANK) THEN CANA0204 KPUTCK = KPUTCK + 1 CANA0261
WRITE(6,2003) CANA020S END IF CANA026B
KPUTCK = KPUTCK + CANA0206 IF(SPCFAC.LT.O.O .OR. SPCFAC.GT.1.3) THEN CANA0269
END IF CANA0201 WRITE(6,2042) CANA027 0
IF(NINC.LT.O .OR. NINC.GT.INCMAX) THEN CANA020B KPUTCK = KPUTCK + CANA0271
WRITE(6,200S) CANA0209 END IF CANA0272
KPUTCK = KPUTCK + CANA021 0 IF(SDRISE.GT.O . O) THEN CANA0213
END If CANA0211 IF(NTN.GT.17 .OR. NTN.LT.O) THEN CANA0274
If(NINC.EQ.O) NPUTCK = CANA0212 WRITE(6,2045) CANA0275
If(HTCOVR.LT.0.1*RISE) THEN CANA0213 KPUTCK - KPUTCK + 1 CANA0276
WRITE(6,2010) CANA0214 END IF CANA0277
END IF CANA0215 IF(NCN.GT . 1B .OR. NCN.LT.O) THEN CANA0218
IF(RISE.LE.O.O) THEN CANA0216 WRITE(6,20S0) CANA0279
WRITE (6,2011) CANA0211 KPUTCK = KPUTCK + 1 CANA02BO
KPUTCK = KPUTCK + CANA0218 END IF CANA0281
END IF CANA0219 ELSE CANA0282
IF(HFSPAN . LE.O . O) THEN CANA022 0 IF(NTN . GT . IB .OR. NTN.LT.O) THEN CANA02B3
WRITE(6,2012) CANA0221 WRITE(6,204S) CANA02B4
KPUTCK ~ KPUTCK + CANA0222 KPUTCK = KPUTCK + 1 CANA028S
END IF CANA0223 END IF CANA02B6
IF(SDRISE.LT.O.O) THEN CANA0224 IF(NCN.GT.19 .OR. NCN.LT.O) THEN CANA02B7
WRITE(6,20I3) CANA0225 WRITE(6,20S0) CANA02BB
...... KPUTCK = KPUTCK + CANA0226 KPUTCK = KPUTCK + 1 CANA02B9
w CANA0290
w END IF CANA0227 END IF
DO 6,1=1,3 CANA022B END IF CANA0291
If(R(I) .LT.O.O) THEN CANA0229 C CANA0292
WRITE(6,2014) CANA0230 C DETERMINE MESH SIZE BASED ON HTCOVR CANA0293
KPUTCK = KPUTCK + 1 CANA0231 C CANA0294
END IF CANA0232 IF(HTCOVR.LE.O . 4*RISE .AND. HTCOVR.GE.O.l*RISE) THEN CANA029S
CONTINUE CANA0233 JNMODA 0 CANA0296
IF(WORD.EQ.TPMESH(2» THEN CANA0234 JXYA = CANA0297
IF(TRNWID.LT.0.3*HFSPAN .OR. TRNWID.GT.HFSPAN) THEN CANA0235 JLNODA = 0 CANA029B
WRITE(6,2015) CANA0236 JBCA = CANA0299
KPUTCK = KPUTCK + 1 CANA0237 KCOVER 0 CANA0300
END IF CANA0238 END IF CANA0301
IF(TRNDEP.LT.O.O .OR. TRNDEP.GT.HTCOVR+RISE) THEN CANA0239 IF(HTCOVR.LE.O.7*RISE .AND. HTCOVR.GT.O.4*RISE) THEN CANA0302
WRITE(6,2020) CANA024 0 JNMODA 3 CANA0303
KPUTCK = KPUTCK + 1 CANA0241 JXYA = 3 CANA0304
ELSE IF(TRNDEP.LT.O.O .OR. TRNDEP.GT.2.5*RISE) THEN CANA0242 JLNODA - CANA0305
WRITE(6,2020) CANA0243 JBCA = CANA0306
KPUTCK = KPUTCK + 1 CANA0244 KCOVER CANA0307
END IF CANA0245 INCLEV 9 CANA030B
IF(TRNSLP.LT.O.O . OR. TRNSLP.GT.l.0) THEN CANA0246 NUMNP - 26S CANA0309
WRITE(6,2025) CANA0247 NUMEL 229 CANA0310
KPUTCK = KPUTCK + 1 CANA0248 NBPTC = 37 CANA0311
END IF CANA0249 END IF CANA0312
IF(FTWIDO.LT.O . 2*TRNWID .OR . FTWIDO.GT.O.S*TRNWID) THEN CANA0250 IF(HTCOVR.LE . l . 0*RISE .AND. HTCOVR.GT.O.7*RISE) THEN CANA0313
WRITE(6,2030) CANA02S1 JNMODA - 6 CANA0314
KPUTCK = KPUTCK + 1 CANA02S2 JXYA = 6 CANA031 5
END IF CANA02S3 JLNODA - 2 CANA0316
ELSE CANA02S4 JBCA = 4 CANA0317
IF(FTWIDO.LT.O.l*(HFSPAN+RISE) .OR. CANA025S KCOVER = 2 CANA031B
x FTWIDO.GT.O . 25' (HFSPAN+RISE» THEN CANA02S6 INCLEV = 10 CANA0319
WRITE(6,2030) CANA02S1 NUMNP - 2B6 CANA0320
NUMEL = 249 CANA032 1 IF(JBCA . GT.O) THEN CANA0384
NEPTC - 39 CANA0322 DO 87,NUM- l,JBCA CANA0385
END IF CANA0323 87 NODBC(NUM+3S) = NODBCA(NUM) CANA0386
IF(HTCOVR.GT . 1 . 0*RISE) THEN CANA0324 END IF CANA0387
JNMODA = 9 CANA0325 C CANA03BB
JXYA = 9 CANA0326 C ESTABLISH SPACING FACTORS AROUND ARCH CANA03B9
JLNODA = 3 CANA0327 C CANA039 0
JBCA = 6 CANA0328 SPF = SPCFAC CANA0391
KeOVER = 3 CANA0329 SPC = SPCFAC - CANA0392
INCLEV = 11 CANA0330 SPVERT = 1.S*SPC*(RISE**2/(RISE**2+HFSPAN**2» CANA0393
NUMNP = 301 CANA0331 SPHORZ = 0.7S*SPC* (HFSPAN*'21 (HFSPAN**2+RISE*'2» CANA0394
NUMEL = 269 CANA0332 DO 90,1=53,80,3 CANA0395
NBPTC = 41 CANA0333 90 XYANDS(3,I) 1 + SPC CANA0396
END IF CANA0334 DO 92,1-87,111,3 CANA0397
C CANA0335 92 XYANDS(3,I) + SPC CANA0398
C CONTATENATE DATA ARRAYS CANA0336 XYANDS(3,82) - 1 + SPVERT CANA0399
C CANA0337 XYANDS(3,49) = 1 + SPHORZ CANA0400
DO 10, NUM=l, 10? CANA0338 DO 93,1=113,119,3 CANA0401
DO 10,NUM1=1,2 CANA0339 93 XYANDS(3,I) = 1 + SPHORZ CANA0402
10 NODMOD (NUM1 ,NUM) NODMD1(NUM1,NUM) CANA034 0 C CANA0403
DO 20,NUM=1,55 CANA0341 C·*** BEGIN SOLUTION OF BEAM ELEMENT GEOMETRY ****************·*******··CANA0404
DO 20,NUMl=1,2 CANA0342 C CANA0405
20 NODMOD (NUMl, NUM+107) - NODMD2(NUMl,NUM) CANA0343 C CALCULATE CHORD AND ARC LENGTHS FOR CURVED SEGMENTS CANA0406
IF(JNMODA.GT.O) THEN CANA0344 C CANA0407
00 2S,NUM=l,JNMODA CANA034 5 DO 120,J=1,4 CANA040B
DO 25,NUM1=1,2 CANA0346 120 THETA(J) = THETA(J)*PI/180 CANA0409
25 NODMOD(NUMl,NUM+162) NODMDA(NUM1,NUM) CANA0347 DO 150,J=1,3 CANA04l0
END IF CANA0348 IF(ABS(R(J) .GT . O.O) THEN CANA0411
DO 30, NUM=I, 60 CANA0349 CHORD(J) = 2*ABS(R(J»*SIN(THETA(J)/2) CANA04l2
DO 30, NUMl=l, 3 CANA0350 ARCLEN(J) = ABS(R(J»*THETA(J) CANA0413
30 XYANDS(NUMl,NUM) XYANDl(NUMl,NUM) CANA0351 ELSE CANA0414
...... DO 40, NUM=l, 51 CANA03S2 DELTA(J) THETA(J) CANA0415
W CANA0416
DO 40, NUMl=l, 3 CANA0353 THETA(J) 0.0
~ CANA04l7
40 XYANDS(NUM1,NUM+60) = XYAND2(NUMl,NUM) CANA03S4 END IF
IF(JXYA.GT.O) THEN CANA03SS 150 CONTINUE CANA04lB
DO 45,NUM=1,JXYA CANA03S6 C CANA0419
DO 45,NUMl=1,3 CANA03S7 C ASSIGN BEGINNING COORDINATES CANA042 0
45 XYANDS (NUM1, NUM+ 111) XYANDA(NUM1,NUM) CANA0358 C CANA0421
END IF CANA0359 Xl 0.0 CANA0422
DO 50, NUM-l, 19 CANA0360 Y1 RISE CANA0423
DO 50, NUMl=l, 11 CANA0361 C CANA0424
50 LNOD(NUM1,NUM) = LNOD1(NUMl,NUM) CANA0362 C ASSIGN END COORDINATES FOR TWO SEGMENT PROBLEM CANA0425
DO 60,NUM=1,3? CANA0363 C CANA0426
DO 60,NUM1=1,11 CANA0364 IF(SDRISE.EQ.O . O) THEN CANA0427
60 LNOD (NUM1, NUM+19) = LNOD2(NUM1,NUM) CANA0365 X3 = HFSPAN CANA042B
DO 70,NUM=1,16 CANA0366 Y3 - 0.0 CANA0429
DO 70,NUM1=1,11 CANA0367 GO TO 180 CANA043 0
70 LNOD(NUMl,NUM+56) LNOD3(NUM1,NUM) CANA0368 C CANA001
IFIJLNODA.GT.O) THEN CANA0369 C ASSIGN END COORDINATES FOR THREE SEGMENT PROBLEM CANA002
00 7S,NUM=I,JLNODA CANA0370 C CANAO03
DO ?5,NUMl-l,ll CANA0371 ELSE CANA004
15 LNOD(NUMl,NUM+72) LNODA(NUMl,NUM) CANA0312 X4 - HFSPAN CANA005
DO 77,NUM=1,19 CANA0373 Y4 = 0.0 CANAO06
DO 16, NUMl=l, 11 CANA0374 Y3 - SDRISE CANA007
76 LNOD(NUM1,NUM+12+JLNODA) = LNOD4 (NUMl,NUM) CANA0375 C CANA0438
17 LNOD(I,NUM+72+JLNODA) - 190 + JLNODA*20 + NUM CANA0376 C SOLVE INTERSECTION OF CURVED SIDE SEGMENT CANA009
GO TO 85 CANA0377 C CANA044 0
END IF CANA0378 IF (ARCLEN (3) .GT . O.Oj THEN CANA0441
DO 80,NUM=l,19 CANA0379 X3 = X4+CHORD(3)*COS(PI/2+THETA(4)+THETA(3)/2) CANA0442
DO 80,NUM1=I,l1 CANA038 0 C CANA0443
80 LNOD (NUMl, NUM+12) = LNOD4(NUM1,NUM) CANA0381 C SOLVE INTERSECTION OF STRAIGHT SIDE SEGMENT CANA0444
85 DO 86,NUM-1,35 CANA0382 C CANA0445
86 NODBC(NUM) = NODBC1(NUM) CANA0383 ELSE CANA0446
X3 = X4 + Y3*TAN(PI/2-DELTA(3» CANA04 47 END IF CANAOSlO
CHORD(3) = SQRT«X3-X4)'*2+(Y3-Y4)'*2) CANA04 46 IF(ARCLEN(2) . GT.O.O) THEN CANA0511
ENDIF CANA04 4 9 XCEN(2) - X3 + ABS(R(2»*COS(-A3-B3-THETA{2)12-PI/2) CANAOS12
ENDIF CANA0450 YCEN(2) = Y3 + ABS(R(2»*SIN(-A3-B3-THETA(2)/2-PI/2) CANA0513
C CANA0451 END IF CANA0514
C SOLVE INTERSECTION OF TOP AND CORNER SEGMENTS CANA0452 IF(ARCLEN(3) .GT.O . O) THEN CANA0515
C CANA0453 XCEN(3) ~ X4 - R(3)*COS(THETA(4» CANA0516
160 SIDE13 = SORT«XI-X3) **2 + (YI-Y3)**2) CANA0454 YCEN(3) = Y4 - R(3)*SIN(THETA(4» CANA0517
Bl = ATAN(X3/(Yl-Y3» CANA0455 END IF CANA051B
B3 = ATAN«Yl-Y3)/X3) CANA0456 C CANAOS19
C CANA0457 C SET INDEX CONSTANTS FOR TWO OR THREE SEGMENT PROBLEM CANAOS20
C OPTION 1 - STRAIGHT SEGMENTS BOTH TOP AND CORNER CANA0458 C CANA0521
C CANA0459 IF(SDRISE.EQ.O.O) THEN CANA0522
IF(ARCLEN(l) .EO.O.O .AND. ARCLEN(2) .EQ.O . O) THEN CANA0460 IF(NTN.EO.O) NTN = 13 CANA0523
Al PI/2 - Bl + DELTA(l) CANAO 46 1 NCN = 19 CANA0524
A3 - PI - B3 - DELTA(2) CANA0462 NSN = 0 CANA0525
A2 = PI - Al - A3 CANA0463 NDEV (1) - NTN-l CANA0526
CHORD(l) SIDEI3*SIN(A3)/SIN(A2) CANA0464 NDEV(2) - NCN-NTN+1 CANA0527
CHORD (2) = SIDEI3*SIN(Al)/SIN(A2) CANA046S NDEV(3) 0 CANA0526
C CANA0466 ELSE CANA0529
C OPTION 2 -STRAIGHT SEGMENT TOP, CURVED SEGMENT CORNER CANA0467 IF(NTN.EO.O) NTN - 10 CANA0530
C CANA0468 IF(NCN.EO.O) NCN - 16 CANA053 1
ELSE IF(ARCLEN(l) .EQ . O.O .AND. ARCLEN(2) .GT.O.O) THEN CANA0469 NSN - 19 CANA0532
Al ~ PI/2 - Bl + DELTA(l) CANA047 0 NDEV(l) NTN-l CANA0533
A2 - ASIN(SIN(Al)*SIDE13/CHORD(2» CANA047 1 NDEV(2) - NCN-NTN CANA0534
IF(A2 . LT.PI/2) A2 = PI - A2 CANA0472 NDEV(3) NSN-NCN+l CANA0535
AJ = PI - Al - A2 CANA0473 END IF CANA0536
CHORD(l) = SIDEI3*SIN(A3)/SIN(A2) CANA0474 C CANA0537
C CANA047S C FIND BEAM COORDINATES - STRAIGHT TOP SEGMENT CANA0538
C OPTION 3 - CURVED SEGMENT TOP, STRAIGHT SEGMENT CORNER CANA0476 C CANA0539
.....
W
C
ELSE IF(ARCLEN(l) .GT.O.O .AND. ARCLEN(2) . EQ.0.0) THEN
CANA0477
CANA0478
ANG (I)
XPN(l)
PI/2
Xl
CANA054 0
CANA054 1
VI A3 - PI - B3 - DELTA(2) CANA0479 YPN(l) Y1 CANA0542
A2 = ASIN(SIN(A3)*SIDEI3/CHORD(I» CANA0480 IF (ARCLEN (1) .EQ.O.O) THEN CANA0543
IF(A2.LT.PI/2) A2 = PI - A2 CANA0481 DO 200,J=2,NTN CANA0544
Al - PI - A2 - A3 CANA04B2 ANG(J) DELTA(l) + PI/2 CANA054 5
CHORD(2) = SIDE13*SIN(Al)/SIN{A2) CANA0463 XPN(J) Xl T CHORD(l)*COS(DELTA(l»*(J-l)/NTN-l CANA0546
C CANA0484 YPN(J) Yl + CHORD(l)'SIN(DELTA(l»'(J-l)/NTN-l CANA0547
C OPTION 4 - CURVED SEGI'IENTS BOTH TOP AND CORNER CANA04B5 200 CONTINUE CANA0548
C CANA0486 C CANA0549
ELSE IF(ARCLEN(I) .GT.O.O .AND. ARC LEN (2) .GT.O.O) THEN CANA0467 C FIND BEAM COORDINATES - CURVED TOP SEGMENT CANA055 0
C CANA0466 C CANA055l
C CHECK THAT INPUT GEOMETRY IS WITHIN BOUNDS CANA0469 ELSE IF{ARCLEN{l) .GT.O.O) THEN CANA0552
C CANA0490 DO 2l0,J=2,NTN CANA0553
CKANGI (CHORD(1)"2+SIDEI3**2-CHORD(2) **2)1 CANA049l IF({Xl-XCEN(l» .EO.O.O) THEN CANA0554
X (2*CHORD{1)*SIDEI3) CANA0492 ANG(J) PI/2 - THETA(l) * (J-l)/(NTN-l) CANA0555
CKANG3 (CHORD(2)'*2+SIDEI3**2-CHORD(I) **2)1 CANA0493 ELSE CANA0556
X (2*CHORD{2)*SIDE13) CANA0494 ANG(J) ATAN(ABS«Yl-YCEN(I»/(XI-XCEN(l»»- CANA0557
CKLIM ~ COS(PI/2-Bl) CANA049S X THETA(l)'(J-l)/(NTN-l) CANA0556
IF(CKANGl.GE.l.O .OR. CKANGl.LT.CKLIM) GO TO 600 CANA0496 ENDIF CANA0559
Al = ACOS(CKANGl) CANA0497 XPN(J) KCEN(l) + ABS{R(l»*COS(ANG(J» CANA056 0
IF(CKANG3.GE.l.0 .OR. CKANG3.LT.0.0) GO TO 600 CANA049B YPN(J) - YCEN(l) + ABS(R(l»*SIN(ANG(J» CANA056l
A3 - ACOS(cKANG3) CANA0499 210 CONTINUE CANA0562
A2 n-hl-~ CANAOSOO END IF CANA0563
END IF CANA050l C CANA0564
X2 = X3 - CHORD(2)*COS(B3+A3) CANAOS02 C FIND BEAM COORDINATES - STRAIGHT CORNER SEGMENT CANA0565
Y2 = Y3 + CHORD(2)'SIN(B3+A3) CANA0503 C CANA0566
C CANA0504 IF(ARCLEN(2) .EQ.O.O) THEN CANA0567
C FIND CENTER ARC COORDINATES FOR CURVED SEGMENTS CANAOSOS DO 220,J=NTN+l,NCN CANA0568
C CANA0506 ANG(J) = DELTA(2) - PI/2 CANA0569
IF(ARCLEN(l) . GT.O.O) THEN CANAOS07 XPN(J) X2 - CHORD(2) *COS{DELTA(2»* (J-NTN) I CANA057 0
XCEN(l) Xl + ABS(R(1»'COS(Al+Bl+THETA{1)/2-PI) CANAOS06 X (NCN-NTNTl) CANA0571
YCEN(l) = Yl + ABS{R(1»*SIN(Al+Bl+THETA(1)/2-PI) CANAOS09 YPN(J) Y2 - CHORD(2)*SIN(DELTA(2»*{J-NTN)1 CANA0572
X (NCN-NTN+1) CANAOS73 Y(130) YPN(12) CANA0636
220 CONTINUE CANA0574 X(128) XPN(13) CANA0637
C CANA057 5 Y(128) YPN(13) CANA063B
C fIND BEAM COORDINATES - CURVED CORNER SEGMENT CANAOS76 X(118) XPN(14) CANA0639
C CANAOS77 Y(118) c YPN(l4) CANA0640
ELSE If(ARCLEN(2) .GT.O.O) THEN CANA0578 X(115) = XPN(15) CANA0641
DO 230,J=NTN+l,NCN CANAOS79 Y(l1S) YPN (15) CANA0642
ANG(J) = ATAN(ABS«Y2-YCEN(2)}/(X2-XCEN(2)) - CANA058 0 X(109) XPN(16) CANA0643
X THETA(2)* (J-NTN)/(NCN-NTN) CANAOS81 Y(109) - YPN(16) CANA0644
XPN(J) = XCEN(2) + ABS(R(2»*COS(ANG(J» CANA0582 X(l03) XPN(17) CANA0645
YPN(J) = YCEN(2) + ABS(R(2»)*SIN(ANG(J» CANA0583 Y(103) ~ YPN(17) CANA0646
230 CONTINUE CANAOS84 X(97) - XPN(18) CANA0647
END IF CANAOS8S Y(97) - YPN(18) CANA0648
C CANAOS86 X(91) - XPN(19) CANA0649
C fIND BEAM COORDINATES - STRAIGHT SIDE SEGMENT CANAOS87 Y(91) YPN (19) CANA06S0
C CANA0588 C CANA0651
IF(ARCLEN(3) . EQ.O.O .AND. SDRISE.GT.O.O) THEN CANA0589 X(1S) - 6*HFSPAN CANA0652
DO 240,J=NCN+1,NSN CANAOS90 X (8) - HFSPAN + HFSPAN/ 4 + RISE/4 CANA06S3
ANG(J) - DELTA(3) - PI / 2 CANA0591 X(6) = HFSPAN + FTWIDO CANA06S4
XPN(J) X3 - CHORD (3) 'COS(DELTA(3»*(J-NCN)/ CANA0592 XIS) - HFSPAN CANA06SS
X (NSN-NCN+1) CANA0593 X(4) HFSPAN - FTWIDI CANA06S6
YPN(J) Y3 - CHORD(3)*SIN(DELTA(3»*(J-NCN)/ CANA0594 X(l) 0.0 CANA06S7
X (NSN-NCN+1) CANAOS9S yell - - l.S*RISE CANA06S8
240 CONTINUE CANAOS96 Y(7S) - -FTDEP CANA06S9
C CANAOS97 Y(90) - 0.0 CANA0660
C FIND BEAM COORDINATES - CURVED SIDE SEGMENT CANAOS98 X(237) - X(8) CANA0661
C CANAOS99 X(2S8) X(8) CANA0662
ELSE If(ARCLEN(3) .GT.O . O . AND. SDRISE.GT . O. O) THEN CANA0600 X(279) X(8) CANA0663
DO 250,J=NCN+1,NSN CANA0601 X(300) X(8) CANA0664
ANG(J) = ATAN(ABS«Y3-YCEN(3))/(X3-XCEN(3)))) - CANA0602 XINC - (X(lS)-X(B))/(1+1.26+1.26**2+1 . 26**3+1 . 26**4+1.26**S+ CANA066S

-
W
0\
250
X
XPN(J)
YPN(J)
CONTINUE
THETA(3) * (J-NCN)/(NSN-NCN+1)
XCEN(3) + ABS(R(3)'COS(ANG(J»
YCEN(3) + ABS(R(3) 'SIN(ANG(J»
CANA0603
CANA0604
CANA060S
CANA0606
X
X(121) X(8) + XINC
X(1S1) - X(l21)
X(183) c X(121)
1.26**6) CANA0666
CANA0667
CANA0668
CANA0669
END IF CANA0607 X(217) ~ X(121) CANA0670
C CANA0608 C CANA0671
c .. • .. • END SOLUTION OF BEAM ELEMENT GEOMETRY ••••••••••••••••••••••••••• *CANA0609 IF(KCOVER.EQ.O) Y(244) - RISE + HTCOVR CANA0672
C CANA0610 IF(KCOVER.EQ.1) THEN CANA0673
C ASSIGN COORDINATES TO KEY NODAL POINTS CANA0611 YINC - HTCOVR/(l + SPF + SPF**Z + SPF**3) CANA0674
C CANA0612 Y(244) = RISE + YINC + SPF*YINC + (SPF**2)*YINC CANA067S
300 X(198) - XPN(I) CANA0613 Y(24S) = RISE + HTCOVR CANA0676
Y(198) - YPN(I) CANA0614 ELSE IF(KCOVER.EQ.Z) THEN CANA0677
X(194 ) XPN(2) CANA0615 YINC = HTCOVR/(1 + SPF + SPF**2 + SPF**3 + SPF**4) CANA0678
Y(194) - YPN(2) CANA0616 Y(244) RISE + YINC + SPF*YINC + (SPF**Z)*YINC CANA0679
X(190) XPN(3) CANA0617 Y(24S) = Y(244) + (SPF**3)*YINC CANA068 0
Y(190) YPN(3) CANA0618 Y(266) = RISE + HTCOVR CANA0681
X (167) XPN(4) CANA0619 ELSE IF(KCOVER.EQ.3) THEN CANA0682
Y(167) - YPN(4) CANA0620 IF(HTCOVR.GT.l.S*RISE) THEN CANA0683
X (164) ~ XPN(S) CANA0621 YINC ~ 1.S*RISE/(1+SPF+SPF·*2+SPF**3+SPF**4+SPF**S) CANA0684
Y(164) YPN(5) CANA0622 Y(244) RISE + YINC + SPF*YINC + (SPF**2)*YINC CANA068S
X (161) c XPN(6) CANA0623 Y(24S) - Y(244) + (SPF'*3)*YINC CANA0686
Y(161} YPN(6) CANA0624 Y(266) c Y(245) + (SPF"4)*YINC CANA0687
X( 158) XPN(7) CANA062S Y(287) RISE + 1.S'RISE CANA0688
Y(1S8) YPN(7) CANA0626 HPRESS HTCOVR - 1.S*RISE CANA0689
X(138) XPN(8) CANA0627 INCADD NINC - INCLEV CANA0690
Y(138) YPN(8) CANA0628 IF(INCADD.LE.O) INCADD = -1 CANA0691
X(136) ~ XPN(9) CANA0629 NBPTC = NBPTC + IABS(INCADD)*21 CANA069Z
Y(136) YPN(9) CANA0630 PINC = -(HPRESS*DENSTY)/(1728*IABS(INCADD) CANA0693
X(134) XPN(10) CANA0631 ELSE CANA0694
Y(134) - YPN(10) CANA0632 YINC HTCOVR/ (1+SPF+SPF**2+SPF**3+SPF**4+SPF**S) CANA069S
X(132) - XPN(ll) CANA0633 Y(244) RISE + YINC + SPF*YINC + (SPF**2)*YINC CANA0696
Y(132) YPN(ll ) CANA0634 Y(24S) Y(244) + (SPF*'3)*YINC CANA0697
X(130) XPN(12} CANA0635 Y(266) Y(24S) + (SPF**4)*YINC CANA069B
Y(287) ~ RISE + HTCOVR CANA0699 ELSE CANA0762
END IF CANA0700 DO 360,I=9Z,93 CANA0763
END IF CANA0701 LNOD (6, I) 1 CANA0764
C CANA070Z 360 LNOD(7,I) = 1 CANA0765
C REVISE MESH FOR TRENCH CONDITION CANA0703 TRNDEP Y(266) CANA0766
C CANA0704 X(2S8) = X(Z37) + TRNSLP*(Y(245)-Y(244» CANA0767
IF(WORD.NE.TPMESH(2» GO TO 400 CANA0705 X(279) = X(258) + TRNSLP*(Y(266)-Y(245» CANA0768
X(8) = HFSPAN + TRNWID CANA0706 END IF CANA0769
X(237) ~ X(8) + Y(Z44)*TRNSLP CANA0707 ELSE If(KCOVER.EQ.3) THEN CANAOnO
YDIV = Y(Z44)/S CANA0708 If(TRNDEP.LE.Y(244» THEN CANA0771
XINC - (X(15)-X(B»/(I+I.26+1.Z6*·Z+I.26*·3+1.Z6·*4+1.Z6**S+ CANA0709 X(2SB) X(237) CANA0772
X 1.26**6) CANA07l0 X(Z79) ~ X(237) CANA0773
XINC2 = (X(1S)-X(Z37»/(I+1.26+1.26·*Z+I.26·*3+1.Z6**4+1.Z6**S+ CANA0711 X(300) ~ X(237) CANA0774
X 1.26*'6) CANA07lZ ELSE IF(TRNDEP.GT.Y(Z44) .AND. TRNDEP.LE.Y(24S» THEN CANA0775
X(121) X(8) + XINC + YDIV*(TRNSLP-(XINC-XINCZ)/Y(244» CANA0713 LNOD(6,92) = 1 CANA0776
X(ISI) X(8) + XINC .2*YDIV·(TRNSLP-(XINC-X1NCZ)/Y(244» CANA07l4 LNOD(7,9Z) = 1 CANA0777
X(IB3) X(8) + XINC + 3*YDIV*(TRNSLP-(XINC-XINCZ)/Y(Z44» CANA071S TRNDEP Y(Z4S) CANA0778
X(ZI7) X(8) + XINC + 4*YDIV*(TRNSLP-(XINC-X1NC2)/Y(244» CANA07l6 X(258) = X(237) + TRNSLP*(Y(24S)-Y(Z44» CANA0779
IF(TRNDEP.LE.YDIV) THEN CANA07l7 X(Z79) X(2S8) CANA0780
DO 310,1=27,29 CANA071B X(300) X(2S8) CANA0781
LNOD(6,I) CANA07l9 ELSE IF(TRNDEP.GT.Y(24S) .AND. TRNDEP.LE.Y(266» THEN CANA0782
313 LNOD(7,I) ~ 1 CANAO 72 0 DO 370,1=92,93 CANA0783
TRNDEP = YDIV CANA0721 LNOD(6, I) = CANA0784
ELSE IF(TRNDEP.GT.YDIV .AND. TRNDEP.LE.Z*YD1V) THEN CANA0722 370 LNOD(7,I) = CANA078S
DO 3Z0,I=27,32 CANA0723 TRNDEP Y(266) CANA0786
LNOD(6,I) = CANA0724 X(2SB) X(237) + TRNSLP*(Y(Z4S)-Y(Z44» CANA0787
320 LNOD(7,I) - CANA072S X(279) X(2SB) + TRNSLP*(Y(Z66)-Y(245» CANA07BB
TRNDEP - 2*YDIV CANA0726 X(300) X(Z79) CANA07B9
ELSE IF(TRNDEP.GT.Z*YDIV .AND. TRNDEP.LE.3*YD1V) THEN CANA0727 ELSE CANA0790
DO 330,1=27,36 CANA0728 DO 3BO,I~92,94 CANA0791
LNOD(6,I) - CANA0729 LNOD(6,I) - 1 CANA0792
330 LNOD(7, I) - CANA0730 380 LNOD(7, I) 1 CANA0793
VJ
-...J TRNDEP - 3*YD1V CANA0731 TRNDEP Y(287) CANA0794
ELSE IF(TRNDEP.GT.3*YDIV .AND. TRNDEP.LE.4*YD1V) THEN CANA0732 X(258) X(Z37) + TRNSLP*(Y(245)-Y(Z44» CANA0795
DO 340,1=Z7,37 CANA0733 X(279) X(258) + TRNSLP' (Y(266)-Y(245» CANA0796
LNOD(6,I) - CANA0734 X(300) X(279) + TRNSLP*(Y(287)-Y(Z66» CANA0797
340 LNOD(7,1) = CANA073S END IF CANA0798
TRNDEP - 4*YD1V CANA0736 END IF CANA0799
ELSE CANA0737 C CANA0800
DO 3S0,1=Z7,38 CANA0738 C REVISE MESH FOR HOMOGENEOUS MATERIAL CANA0801
LNOD(6,1) = 1 CANA0739 C CANA0802
3S0 LNOD(7,I) ~ 1 CANAOHO 400 IF(WORD.NE.TPMESH(3» GO TO 440 CANA0803
TRNDEP - S*YD1V CANA0741 DO 410,I=ZO,7Z+JLNODA CANA0604
END IF CANA0742 410 LNOD(6,I) ~ 1 CANA0805
IF(KCOVER.EQ . l) THEN CANAOH3 C CANA0806
IF(TRNDEP.LE.Y(Z44» THEN CANA0744 C RECORD MESH DOCUMENTATION PARAMETERS CANA0807
X(ZS8) = X(Z37) CANA074S C CANA0808
ELSE CANA0746 440 WRITE (6 , 4000 ) WORD CANAOe09
LNOD(6,92) = 1 CANAOH7 If(WORD.EQ.TfMESH(2) WRITE(6, 4010) TRNDEP/12,TRNW10/ 12,TRNSLP CAt<AOBID
LNOD(7,9Z) ~ 1 CANA0748 WRITE (6,4020) SPCFI\C, HTCOVR/12, (HTCOVR- HPRESS) 112, DENSJ'l, (.J+KCOVER1CANA0811
TRNDEP Y(Z4S) CANA0749 WRIT E( 6,4100) RrSE.HFsPAN,SORIS~,FTDEP,FTWtDO,FT~IOI CANAOB~2
X(2SB) = X(Z37) • TRNSLP*(Y(245)-Y(244» CANA0750 IF(SDRISE . NE . Ol TliQI CANAOBl3
END IF CANA0751 WRITE(6,41101 CANAOB14
ELSE IF(KCOVER.EQ.2) THEN CANA0752 NSEG - 3 CANAOH5
IF(TRNDEP.LE.Y(Z44» THEN CANA0753 ELSE CANAD816
X(25B) = X(Z37) CANA0754 WRIT~(6,4120) CANADe1?
X(279) = X(Z37) CANA0755 NSEG ~ 2 CANA0818
ELSE IF(TRNDEP.GT.Y(244) .AND. TRNDEP.LE.Y(24S» THEN CANA07S6 END IF CANA0819
LNOD(6,92) = 1 CANA0757 DO 450 N=1,NSEG CANA08ZD
LNOD(7, 92) - 1 CANA075B IF(R(N) .NE.O.O) THEN CANA0821
TRNDEP = Y(Z45) CANA0759 IF(N.EQ.l) WRITE(6,4200) CANA0822
X(2SB) X(237) + TRNSLP*(Y(245)-Y(244» CANA0760 IF(N.EQ.Z) WRITE(6,4210) CANA0 823
X(279) = X(258) CANA0761 IF(N.EQ.3) WRITE(6,4220) CNlA0824
WRITE(6,4300) R(N) ,THETA(N) '180/PI,ARCLEN(N) ,NDEV(N) CANA0825 IF(HPRESS.GT.O) THEN CANA0888
IF(N.EQ.3) WRITE(6,4310) THETA(4)*180/PI CANA0826 LIMIT = IBLANK CANA0889
ELSE CANA0827 DO 550, N=l,IABS(INCADD) CANAOB90
IF(N.EQ.l) WRITE(6,4230) CANA0828 IFIN.EQ.IABSIINCADD)) LIMIT LIH CANA089 1
IF(N.EQ.2) WRITE(6,4240) CANA0829 IF(INCADD.GT.O) THEN CANA0892
IF(N.EQ.3) WRITE(6,4250) CANA0830 IADD = NINC - INCADD + N CANAOB93
WRITE(6,4320) OELTA(N)'180/PI,CHORD(N),NDEVIN) CANA0831 ELSE CANAOB94
END IF CANAOB32 IADD NINC + INCADD + N CANAOB95
450 CONTINUE CANA0833 END IF CANA0896
C CANA0834 550 WRITE (LUDATA,6120) LIMIT,287,IZERO, FZERO, IZERO, FZERO, CANA0897
C SAVE DATA FOR MAIN CONTROL CARDS CANA0835 X FZERO,IADD,307,IONE,PINC,PINC CANAOB9B
C CANAOB36 END IF CANAOB99
500 WRITEILUDATA,6105) PREP,TITLE,WORDl,NINC,MGENPR,NPUTCK,IPLOT,IWRT CANA0837 REWIND LUDATA CANA0900
1 ,NUMNP,NUMEL,NBPTC CANAOB3B RETURN CANA0901
C CANA0839 C CANA0902
C SAVE DATA NEEDED FOR NODE GENERATION CANAOB40 C ERROR EXIT CANA0903
C CANA084 1 C CANA0904
LIMIT = IBLANK CANA0842 600 STOP ""FATAL ERROR IN ARCH GEOMETRY - CHECK INPUT"" CANA0905
K=0 CANA0843 C CANA0906
DO 520,N = 1,162+JNMODA CANAOB44 C FORMATS CANA0907
NNP - NODMOD(l,N) CANA0845 C CANA090B
SPACNG = 0.0 CANA0846 1000 FORMAT IA4, 17A4 ,A3) CANA0909
XCOORD = X INNP) CANA0847 1005 FORMAT (4I5,5FlO.0) CANA0910
YCOORD = Y(NNP) CANAOB4B 1010 FORMAT (7FlO.0) CANA0911
IF (NODMOD(2,N) .EQ. 5) GO TO 510 CANAOB49 1020 FORMAT (7FlO.0,2I5) CANA09l2
IF (K .LT. 111+JXYA) K = K + 1 CANA0850 2000 FORMAT (lHO,22H"'FATAL DATA ERROR"'/1H ,74HTHE CONTROL WORD FOR CANA0913
IF (XYANDS(l,K) .NE. 0.0) XCOORD = XYANDS(l,K) CANA0851 XMESH TYPE MUST BE "EMBA" , "TREN", OR "HOMO", BUT IS ',A4,lH'/1H CANA0914
IF (XYANDSI2,K) .NE. 0.0) YCOORD = XYANDSI2,K) CANA0852 X17HISEE USER MANUAL) I) CANA0915
IF IXYANOS(3,K) .NE. 0.0) SPACNG = XYANDS(3,K) CANA0853 2003 FORMAT (lHO,22H*'*FATAL DATA ERROR"'/1H ,34HCONTROL WORD1 MUST BECANA0916
510 IF (N.EQ. 162+JNMODA) LIMIT = LIH CANAOB54 X MOD OR BLANK/1H ,17H (SEE USER MANUAL) /) CANA0917
520 WRITE (LUDATA,6l10) LIMIT, NNP, NODMOD(2,N), XCOORD, YCOORD, CANA0855 2005 FORMAT (lHO,22H"'FATAL DATA ERROR"'/IH ,72HNUMBER OF CONSTRUCTIOCANA09lB
..- 1 IZERO, SPACNG, FZERO CANAOB56 XN INCREMENTS "NINC" MUST BE WITHIN ALLOWABLE LIMITS/IH ,17H(SEE USCANA0919
l.N
00 C CANAOB57 XER MANUAL) I) CANA0920
C SAVE DATA NEEDED FOR ELEMENT GENERATION CANAOB58 2010 FORMAT (IHO,34HSPECIFIED COVER HEIGHT TO SHALLOW./IHO,34HPROGRAM WCANA0921
C CANA0859 XILL SET HTCOVR = O.I'RISE/) CANA0922
LIMIT = IBLANK CANA0860 2011 FORMAT (lHO,22H"'FATAL DATA ERROR"'/IH ,24HINVALID ENTRY FOR "RlCANA0923
DO 530,NE = 1,91+JLNODA CANA0861 XSE"I) CANA0924
INCR - LNODI7,NE) CANAOB62 2012 FORMAT (lHO,22H*"FATAL DATA ERROR"'/IH ,26HINVALID ENTRY FOR "HFCANA0925
IF(INCR . GT.NINC) INCR = NINC CANA0863 XSPAN"/) CANA0926
IF (NE.EQ.91+JLNODA) LIMIT = L1H CANA0864 2013 FORMAT (IHO,22H*'*FATAL DATA ERROR"'/IH ,26HINVALID ENTRY FOR "SDCANA0927
530 WRITE (LUDATA,6115) LIMIT, (LNOD(K,NE), K 1,6),INCR, CANA0865 XRISE"/) CANA092B
X (LNOD(K,NE),K=8,11) CANA0866 2014 FORMAT (lHO,22H*'*FATAL DATA ERROR"'/IH ,3lHINVALID ENTRY FOR RADCANA0929
C CANA0867 XIU5 "R(I)"I) CANA0930
C SAVE DATA NEEDED FOR INPUT OF DISPLACEMENT BOUNDARY CONDITIONS CANA0868 2015 FORMAT (lHO,22H"'FATAL DATA ERROR'**/IH ,52HTRENCH WIDTH "TRNWID"CANA0931
C CANA0869 XMUST BE WITHIN ALLOWABLE LIMITS/IH ,17H(SEE USER MANUAL) I) CANA0932
K = roNE CANA0870 2020 FORMAT (lHO,22H"'FATAL DATA ERROR-"/IH ,52HTRENCH DEPTH "TRNDEP"CANA0933
L = roNE CANA0871 XMUST BE WITHIN ALLOWABLE LIMITS/IH ,17H(SEE USER MANUAL) I) CANA0934
LIMIT = IBLANK CANA0872 2025 FORMAT (lHO,22H"'FATAL DATA ERROR"'/IH ,52HTRENCH SLOPE "TRNSLP"CANA0935
DO 540,N = 1,35+JBCA CANA0873 XMUST BE WITHIN ALLOWABLE LIMITS/IH ,17H (SEE USER MANUAL) /) CANA0936
IF (N .GT. 15) THEN CANA0874 2030 FORMAT (lHO,22H"'FATAL DATA ERROR"'/lH ,62HOUTSIDE FOOTING WIDTHCANA0937
K - lONE CANA0875 X "FTWIDO" MUST BE WITHIN ALLOWABLE LIMITS/IH ,17H(5EE USER MANUAL)CANA093B
L - IZERO CANA0876 XI) CANA0939
END IF CANA0877 2035 FORMAT (lHO,22H"'FATAL DATA ERROR"'/lH ,61HINSIDE FOOTING WIDTH CANA0940
IF IN.EQ.29) THEN CANA0878 X"FTWIDI" MUST BE WITHIN ALLOWABLE LIMITS/IH ,17H(SEE USER MANUAL)/CANA0941
K = IZERO CANA0879 X) CANA0942
L = lONE CANA08BO 2040 FORMAT (lHO,22H"'FATAL DATA ERROR"'/IH ,53HFOOTING DEPTH "FTDEP"CANA0943
END IF CANA088 1 X MUST BE WITHIN ALLOWABLE LIMITS/1H ,17HISEE USER MANUAL)/) CANA0944
IF (N.EQ.35+JBCA .AND. HPRESS.EQ.O) LIMIT = LIH CANA0882 2042 FORMAT (lHO,22H"'FATAL DATA ERROR"'/lH ,55HSPACING FACTOR "SPCFACANA0945
540 WRITE ILUDATA,6120) LIMIT, NODBC(N), K, FZERO, L, FZERO, FZERO, CANA0883 XC" MUST BE WITHIN ALLOWABLE LIMITS/1H ,17H(SEE USER MANUAL)/) CANA0946
1 lONE, IZERO, IZERO, FZERO, FZERO CANA0884 2045 FORMAT (lHO,22H"'FATAL DATA ERROR"'/lH ,72HNUMBER OF TOP SEGMENTCANA0947
C CANA0885 X NODAL POINTS "NTN" MUST BE WITHIN ALLOWABLE LIMITS/IH ,17H(SEE USCANA0948
C SAVE DATA NEEDED FOR OVERBURDEN PRESSURE BOUNDARY FORCES CANA0886 XER MANUAL)/) CANA0949
C CANAOB87 2050 FORMAT IlHO,22H"'FATAL DATA ERROR"'/lH ,75HNUMBER OF CORNER SEGMCANA0950
XENT NODAL POINTS "NCN" MUST BE WITHIN ALLOWABLE LIMITS/1H .17H(SEECAN....0951 DIMENSION X(20),Y(20),TPMESH(6),LNODl(S,4),LNOD2(7.6),LNOD3(7,2). CANB0016
X USER MANUAL) IJ CANA0952 1LNOD4(7,6) ,NOD8C(3S),MATTYP(6) ,TITLE(17) CANB0017
4000 fORMAT (lHl. 4 SH' • • BEGIN GENERATION OF CANNED MCH MESH ' , 'I I lCAN.... 0953 OAT.... IZERO.IONE,FZERO/O,l,O.OI CAN8001S
XIX.23H'" MESH P....RAMETERS " ' I CAN.... 0954 D....T.... LlH.I8LP.NK,PREP/lHL,lH ,4HPREPI CAN80019
X6X.50HTYPE OF MESH -------------------------------------.lX ..... 4) CAN.... 0955 D....T.... TPMESH/4HEMBA,4HTREN,4HNKME.4HCH .4HNT ,4H CAN80020
4010 FORMAT ( CAN....0956 DAT.... LNOD1/15,1,2.13.12, 55,0,0,0.0, 60,0.0,0,0, 64,54,55.66.651 CANB0021
X6X.50HDEPTH OF TRENCH ....BOVE FOOTING LEVEL (FT) ---------.FB.21 CAN....0957 D....TA LNOD2/65,60,61,68,67,3,2, 71,0,0,0,0,3,2. CAN80022
X6X.50HWIDTH OF TRENCH .... T FOOTING LEVEL (FT) ------------.FB.21 CANA0958 1 17,0,0,0,0,3,3, 83,0,0,0,0,3,3, CANB0023
X6X.50HSLOPE OF TRENCH WALL (H/V) -----------------------.FB.2) CANA0959 2 89.0,0.0,0,3.4, 94.93.94,101,100.1,11 CAN80024
4020 FORMAT ( CANA0960 D....TA LNOD3/95,9S.96,107,106.3,4, 100,100.101,112.111,1,1/ CANB0025
X6X.50HMESH SP....CING PARAMETER ---------------------------.F8.21 CANA0961 D....TA MATTYP/4HINSI,4HTU ,4H8EDD.4HING ,4HFILL,4H I CAN80026
X6X.50HTOTAL SOIL HEIGHT ABOVE CROWN (FT) ---------------.F8 . 21 CAN.... 0962 DATA LNOD4/101.102,103,114,113,3.5. 111,0,0,0.0.3,6, CAN80027
X6X.SOHMESH HEIGHT ABOVE CROWN (FT) ---------------------.F8 . 21 CANA0963 1 121,0,0,0,0,3,7, 131,0,0,0,0,3,8, CANB0029
X6X.50HSOIL DENSITY ABOVE MESH (PCF) --------------------.FB.21 CANA0964 2 141,0.0,0,0,3,9, 150,155,156.167,166,1,1/ CANB0029
X6X.50HNUMBER OF ELEMENT LAYERS ABOVE CROWN -------------.151/) CAN.... 0965 D....TA NODBC/1,2.3,4,5, 6,7,S,9,10. 11.12.22,23.33, CANB0030
4100 FORMAT (lX.23H'" MCH PARAMETERS "'I CAN.... 0966 1 34,44,45,55,56. 66,73,80,87,94.101.102,112,113,123,CAN80031
X6X.50HCENTERLINE RISE OF ARCH (IN) - - - - - - - - . F8.2/ CANA0967 2 124.134,135.145,146,156.157,1671 CAN80032
X6X,50HBOTTOM HALF SPAN OF MCH (IN) --------------------,F8 . 2/ CANA0968 C CANB0033
X6X.50HSIDE RISE OF MCH ABOVE FOOTING (IN) -------------,FB . 2/ CAN.... 0969 C READ INPUT DATA TO CONTROL 80X MESH CAN80034
X6X.50HFOOTING DEPTH (IN) ------ - - - - - - - - - - - ---- - , FB. 21 CANP.0970 C CANB0035
X6X.50HINSIDE FOOTING WIDTH (IN) ------------------------,FB.2 / CAN.... 0971 READ(5.1000)WORD.TITLE.WORD2 CANB0036
X6X,50HOUTSIDE FOOTING WIDTH (IN) -----------------------,F8 . 2 ) CANA0972 REAO(S.1010)IPLOT,IWRT,MGENPR,NINC,R1,R2,HTCOVR,DENSTY,TRNWID, CANB0037
4110 FORMAT ( CAN.... 0973 1 BDEPTH CAN80038
X6X.50HNUMBER OF MCH SEGMENTS DEFINED ------------------.5H 3) CAN....0974 C CANB0039
4120 FORMAT ( CANP.0975 C NX1=NODES IN X-DIRECTION ALONG BOX CANB0040
X6X,SOHNUMBER OF MCH SEGMENTS DEFINED ------------------,5H 2) CAN.... 0976 C NX2=NODES IN Y-DIRECTION ALONG BOX CAN80041
4200 FORMAT (/1X,26H'" CURVED TOP SEGMENT " ' ) CANA0977 C CAN80042
4210 FORMAT (/1X.29H'" CURVED CORNER SEGMENT " ' ) CANA0978 NX1=5 CAN80043
4220 FORMAT (/1X.27H'" CURVED SIDE SEGMENT " ' ) CAN.... 0979 NYl=7 CAN80044
4230 FORMAT (/lX,28H'" STRAIGHT TOP SEGMENT " ' ) CAN....0980 DO 10 MESHTP-l.2 CANB0045
4240 FORMAT (/lX,31H'" STRAIGHT CORNER SEGMENT " ' ) CAN.... 09Bl
...... 4250 FORMAT (/1X,29H'" STRAIGHT SIDE SEGMENT " ' ) CAN.... 0982 10
IF(WORD.EQ.TPMESH(MESHTP)) GO TO 20
CONTINUE
CANB0046
CAN80047
W
ID 4300 FORMAT ( CANP.0983 WRITE(6.2000)WORD CANB0048
X6X.50HRADIUS (IN) -------- - - - - - - - - - • F8.2I CANA0984 STOP CAN80049
X6X,50HCENTRAL ANGLE (DEG) ----------- - - - - --- ,F8.21 CANA0985 20 R1T-2.0'R1 CAN800S0
X6X.SOHSEGMENT MC LENGTH (IN) --------------------------,FB.2/ CANA09B6 R2T=2.0'R2 CAN800S1
X6X.SOHNUMBER OF BEAM ELEMENTS IN SEGMENT ---------------.15) CANA0987 WRITE(6.2010)TITLE,TPMESH(MESHTP).TPMESH(MESHTP+2) , TPMESH(MESHTP+4CAN80052
4310 FORMAT ( CANA09BB 1). IPLOT,IWRT.MGENPR,NINC.R1T,R2T CAN80053
X6X,SOHBASE ANGLE (DEG) ---------------------------------,F8.2) CANA09B9 HTOPB=3.0'R2/12. CAN80054
4320 FORMAT ( CANA0990 IF(HTCOVR.LT.HTOP8) HTOP8=HTCOVR CAN80055
X6X.SOHDEFLECTION ANGLE (DEG) ---- -- --~ ------·---- ---- ,F8.21 CANA099 1 IF(WORD.EQ.TPMESH(2» WRITE(6,2120)TRNWID CAN80056
X6X,SOHSEGMENT LENGTH (IN) ------------------------------.F8.21 CANA0992 WRITE(6,2100) HTCOVR,HTOPB,DENSTY CAN80057
X6X,SOHNUMBER OF BEAM ELEMENTS IN SEGMENT - --- ,IS) CANA0993 C CAN800S8
6105 FORMAT (A4,lX,17A4,3X.A4/SIS) CANA0994 C TRANSFORM UNITS TO POUNDS AND INCHES CANB0059
6110 FORMAT (AI, 14, IS, 2FlO.3. IS, 5X.2F10.3) CANA0995 C CAN80060
6115 fORMAT (AI. 14 .1015) CANA0996 HTCOVR=HTCOVR*12 . CANB006l
6120 FORMAT ( AI, 14, IS, FlO.2, IS, 2F10.2, 315, 2F10.2) CAN.... 0997 DENSIT-DENSTY/12 . '*3 CAN80062
END CANA099B TRNWID=TRNWID'12.0 CAN80063
...... * * .............. .., ... CANBOOOI C CAN80064
CANDE-B9 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM CANB0002 C SET MASTER X-CooRDIN....TES CANB0065
VERSION 1.0, MARCH 1990 CANB0003 C CANB0066
PU8LIC DOMAIN SOFTWME CONTRI8UTED BY CANB0004 NX2=11 CAN80067
THE FEDERAL HIGHWAY ADMINISTRATION CAN80005 X(l)=O.O CAN80068
.. * * .... " ...... * ....... * '* .. * ..... * * .. .,. .. * .. .. .. .. CANB0006 DX=R1/FLO....T(NX1-1) CANB0069
SUBROUTINE CANBOX (LUDATA.KPUTCK,DENSTY) CANB0007 DO 30 I:2,NXl CANB0070
C CANBOOOS 30 X(I)=X(I-1) +DX CANB0071
C SUBROUTINE FOR RIC 80X MESH .... REQUIRES PDIA.LT.O.O CANB0009 IF(WORD.EQ.TPMESH(2)) GO TO 70 CAN80072
C CAN80010 XTR=5.0'R1 CAN80073
Uncomment this statement in all program modules for double CAN80011 GO TO 80 CAN80074
precision version. SCM 3-10-90 CANB0012 70 XTR=R1+TRNWID CANB0075
CANB0013 SO XTRMIN=1.10*R1 CANB0076
IMPLICIT DOUBLE PRECISION (A-H,O-Z) CAN80014 IF(XTR.LE.XTRMIN) XTR=1.101*Rl CAN80077
CANB0015 NTR=NXl CANB007B
DX~O .2*R1 CANB0079 C CANB0142
DC 40 I~6,NX2 CANB0080 C RESET Y-COORDINATE TO MATCH "YCOVR" CANBOl43
X(I)~X(I-1)+DX CANB0081 C CANBOl44
DX-DX+O . 2 *R1 CANB0082 110 DYTOP~(Y(NHC)-YCOVR)·0.5 CANB0145
IF(DX.GT.R1)DX~R1 CANB0083 DYBOT~YCOVR-Y(NHC-1) CANB0146
IF(XTR.GT.X(I)) NTR~I CANB0084 IF(NHC.LE.14) GO TO 115 CANB0147
40 CONTINUE CANB0085 IF(DYTOP.GT.DYBOT) NHC~NHC-1 CANB0148
TRELIM-4.49*R1 CANB0086 Y(NHC)~YCOVR CANB0149
IF(XTR.GT.TRELIM) NMOVE~NX2 CANB0087 GO TO 120 CANB0150
C CANB0088 115 NHC~14 CANB01S1
C NMOVE~NX2 IMPLIES EMBANKMENT CONDITION CANB0089 Y(NHC)~YCOVR CANB0152
C CANB0090 Y(NHC-1)~(Y(NHC)+Y(NHC-2))*0.5 CANB01S3
IF(XTR.GT.TRELIM) GO TO 50 CANB0091 120 CONTINUE CANB0154
C CANB0092 C CANB0155
C ADJUST TRENCH WALL LOCATION CANB0093 C ADJUST BOTTOM Y-COORDINATE Y(5) TO BE LOCATED AT BOTTOM OF BEDDINGCANB01S6
C MOVE CLOSEST LINE TO COINCIDE WITH TRENCH LINE LOCATION CANB0094 C CANB0157
C CANB0095 IF(BDEPTH.LE.O.O) GO TO 140 CANB01S8
NMOVE~NTR CANB0096 C CANB0159
IF(ABS(XTR-X(NTR)) .GE. ABS(XTR-X(NTR+1))) NMOVE~NTR+1 CANB0097 C LIMITS FOR MAXIMUM AND MINIMUM BEDDING THICKNESS CANB0160
X(NMOVE)~XTR CANB0098 C CANB0161
50 CONTINUE CANB0099 BDEMIN~0.1*R2 CANB0162
C CANB0100 BDEMAX~O. 667'R2 CANB0163
C SET MASTER COORDINATES FOR Y CANB0101 IF(BDEPTH.LT.BDEMIN) BDEPTH~BDEMIN CANB0164
C NY1 ARE SPACED EVENLY ALONG VERTICAL WALL OF BOX CANB0102 IF(BDEPTH.GT.BDEMAX) BDEPTH-BDEMAX CANB016S
C CANS0103 Y(5)~Y(6)-BDEPTH CANB0166
Y(6)--R2 CANB0104 GO TO 130 CANB0167
DY~R2/3.0 CANB0105 140 WRITE(6,2020) CANB0168
DO 60 I~7, 12 CANB0106 130 CONTINUE CANB0169
60 Y(I)-Y(I-1)+DY CANB0107 C CANBO 17 0
C CANB0108 C COMPUTE THE NUMBER OF NODES,NUMBER OF ELEMENTS AND ESTIMATE CANB0171
C SET BOTTOM NODES IN Y-DIRECTION(TO BE ADJUSTED LATER FOR BDEPTH) CANB0109 C MAXIMUM NUMBER OF BOUNDARY CONDITIONS(FOR STORAGE SPACE ONLY) CANB0172
...... C CANB0110 C CANSO 173
~ NUMNP-11*NHC-S*4 CANB0174
Y(1)~-4.0'R2 CANB0111
0 NUMEL=10*(NHC-1)-6*4+14 CANB017S
DY~2.0*R2/3.0 CANBOl12
DO 90 I~2, 5 CANB0113 NBPTC-200 CANB0176
90 Y(I)~Y(I-1)+DY CANBOl14 NPUTCK~O CANB0177
C CANB0115 NPMAT-14 CANB0178
C SET Y-CooRDINATES FOR TOP NODES UP TO SPECIFIED COVER HEIGHT CANB0116 C CANB0179
C CANB0117 C WRITE MASTER CONTROL DATA TO UNIT LUDATA TO SIMULATE LEVEL 3 INPUTCANB0180
C IF COVER HEIGHT IS GREATER THAN 4R2, TRUNCATE AT 4R2 AND APPLY CANBOl18 C CANB0181
C REMAINING SOIL WITH EQUIVALENT PRESSURE LOAD IN BOUNDARY CONDITIONCANB0119 WRITE(LUDATA,2030)PREP,TITLE,WORD2,NINC,MGENPR,NPUTCK,IPLOT,IWRT, CANB0182
C CANB0120 1 NUMNP. NUMEL, NBPTC CANB0183
NHC~12 CANB0121 C CANB0184
IF(HTCOVR.LT.O.O) GO TO 95 CANB0122 C WRITE NODAL POINT DATA TO UNIT LUDATA FOR LEVEL 3 INPUT CANB0185
GO TO 96 CANB0123 C CANB0186
95 WRITE(6,2070)HTCOVR CANB0124 LIMIT-IBLANK CANB0187
STOP CANB0125 NODE-O CANB0188
C CANB0126 C CANB0189
C YCOVR~MAXlMUM Y COORDINATE CANB0127 C VERTICAL NODE COUNTER CANB0190
C NHC~MAXIMUM NUMBER OF VERTICAL NODES IF HTCOVR.GE.4R2 CANB0128 C CANB0191
C IUP~STARTING VERTICAL NUMBER OF ROWS ON PIPE TOP,ASCENDING CANB0129 DO 150 J~l, NHC CANB0192
C IDN~STARTING VERTICAL NUMBER OF ROWS ON PIPE BOTTOM,DESCENDING CANB0130 ISTART~l CANB0193
C CANB0131 IF(J.GT.6 .AND. J.LT.12) ISTART~5 CANB0194
96 YCOVR~HTCOVR+R2 CANB0132 DO 150 I~ISTART, 11 CANB0195
NHC-17 CANB0133 NODE-NODE+1 CANB0196
IUP~12 CANB0134 IF(NODE.EQ.NUMNP) LIMIT=L1H CANB0197
IDN~6 CANB0135 150 WRITE(LUDATA,2040)LIMIT,NODE,IZERO,XII),Y(J),IZERO,FZERO,FZERO CANB0198
DO 100 I~1,5 CANB0136 C CANB0199
Y(IUP+I)~-Y(IDN-I) CANB0137 C GENERATE ELEMENT DATA CANB0200
IF(Y(IUP+I) . GT.YCOVR) NHC~IUP+I CANB0138 C CANB0201
IF(Y(IUP+I) .GT.YCOVR) GO TO 110 CANB0139 C GET PIPE ELEMENT CONNECTIVITY CANB0202
100 CONTINUE CANB014 0 C CANB0203
GO TO 120 CANB0141 LIMIT=IBLANK CANB0204
NB1~66
NB2=101
CANB020S
CANB0206
C
C
GENERATE SOIL BLOCK *3 (SIDE) CANB0268
CANB0269
IXB=NB2+1 CANB0207 DO 250 1=1,2 CANB0270
DO 160 I~I, NPMAT CANB0208 INTRAL=O CANB0271
IF(I . GT.4) GO TO 170 CANB0209 NUMLAY=O CANB0272
lXA=IXB CANB02l0 INTERL=O CANB0273
IXB~IXA+1 CANB0211 MAT=LNOD3(6,I) CANB0274
GO TO 160 CANB0212 INC=LNOD3(7,I) CANB0275
170 IF(I.GT.10) GO TO 180 CANB0213 IF(NINC.LT.O) INC=l CANB0276
lXA=IXB CANB0214 IF(I.EQ.1) GO TO 240 CANB0277
IXB=IXA-7 CANB0215 INTRAL~l CANB0278
IF(I.EQ.5) IXB=95 CANB0216 NUMLAY=l CANB0279
GO TO 160 CANB0217 IF(NMOVE.EQ.l1) INC=4 CANB0280
180 lXA=IXB CANB02l8 IF(NINC.LT.O) INC-l CANB0281
IXBaIXA-l CANB0219 IF(NMOVE.EQ.11) MAT-3 CANB0282
160 WRITE(LUDATA,2050)LIMIT,I,IXB,IXA,IZERO, IZERO, I,IONE,IZ ERO,IZERO, CANB0220 IF(HTCOVR.LE.O.O) LIMIT=L1H CANB0283
1 IZERO,IZERO CANB0221 240 WRITE (LUDATA,2050) LIMIT, (LNOD3(J,I),J-1,S),MAT,INC,IZERO,INTRAL, CANB0284
C CANB0222 1 NUMLAY,INTERL CANB0285
C NEXT GENERATE SOIL BLOCK # 1 (BOTTOM) CANB0223 IF(I.EQ.2) GO TO 250 CANB0286
C CANB0224 IF(NMOVE.EQ.11) GO TO 250 CANB0287
INC=1 CANB0225 NELI=LNOD3(1,I)+NMOVE-5 CANB02BB
INTRAL=O CANB0226 MAT-l CANB0289
NUMLAY=O CANB0227 INC~1 CANB0290
INTERL~O CANB0228 IF(NELI.EQ.lOO) GO TO 250 CANB0291
DO 190 K~1,4 CANB0229 WRITE(LUDATA,2050)LIMIT,NELI,IZERO, IZERO, IZERO, IZERO,MAT,INC, CANB0292
MAT=l CANB0230 1 IZERO,INTRAL,NUMLAY,INTERL CANB0293
IF(K.EQ.2 .AND. BDEPTH.GT.O.O) MAT=2 CANB0231 250 CONTINUE CANB0294
IF(K.NE.4) GO TO 190 CANB0232 IF(LIMIT.EQ.LIH) GO TO 400 CANB0295
INTRAL=l CANB0233 C CANB0296

-- NUMLAY-5 CANB0234 C GENERATE SOIL BLOCK # 4 (TOP) CANB0297


INTERL=ll CANB0235 C CANB0298
190 WRITE(LUDATA,2050)LIMIT, (LNODl(J,K),J=1,5),MAT,INC,IZERO,INTRAL, CANB0236 LASTEL=(NHC-12)*10+l00 CANB0299
+:>. 1 NUMLAY,INTERL CANB0237 DO 260 1=1,6 CANB0300
C CANB0238 INTRAL=O CANB0301
C GENERATE SOIL BLOCK # 2 (SIDE) CANB0239 NUMLAY-O CANB0302
C CANB0240 INTERL=O CANB0303
DO 200 1=1,6 CANB0241 MAT-LNOD4 (6, I) CANB0304
INTRAL=O CANB0242 INC-LNOD4(7,I) 0 CANB0305
NUMLAY~O CANB0243 IF(NINC.LT.O) INC-l CANB0306
INTERL=O CANB0244 IF(I.EQ.l) GO TO 270 CANB0307
MAT=LNOD2(6,I) CANB0245 IF(LNOD4(I,I).GE.LASTEL) GO TO 280 CANB030B
INC- LNOD2(7,I) CANB0246 GO TO 270 CANB0309
IF(NINC.LT.O) INC=1 CANB0247 280 If(I.EQ.6) GO TO 290 CANB031 0
IF(I.EQ.6) GO TO 210 CANB0248 GO TO 300 CANB0311
GO TO 220 CANB0249 290 INTRAL=l CANB0312
210 INTRAL=1 CANB0250 NUMLAY=5 CANB0313
NUMLAY~5 CANB0251 INTERL=l1 CANB0314
INTERL=7 CANB0252 IF(NMOVE.EQ.11) INC=9 CANB0315
IF(NMOVE.EQ.ll) INC=4 CANB0253 IF(NINC.LT.O) INC-1 CANB0316
IF(NMOVE.EQ . ll) MAT-3 CANB0254 IF(NMOVE.EQ.l1) MAT=3 CANB0317
IF(NINC.LT.O) INC=l CANB0255 LIMIT=LlH CANB03lB
220 WRITE(LUDATA,2050) LIMIT, (LNOD2(J,I),J=I,5),MAT,INC,IZERO,INTRAL, CANB0256 270 WRITE(LUDATA,2050)LIMIT, (LNOD4(J,I),J=I,5),MAT,INC,IZERO,INTRAL, CANB0319
1 NUMLAY, INTERL CANB0257 1 NUMLAY,INTERL CANB0320
IF(I.EQ.6) GO TO 200 CANB0258 IF(LIMIT.EQ.LIH) GO TO 400 CANB0321
IF(NMOVE.EQ . ll) GO TO 200 CANB0259 GO TO 310 CANB0322
NELI=LNOD2(I,I)+NMOVE-5 CANB0260 300 LIMIT=LIH CANB0323
MAT=1 CANB0261 NODEI~(NHC-12)·11+100 CANB0324
INC=1 CANB0262 NODEJ=NODEI+l CANB0325
IF(NELI.EQ . 94) GO TO 200 CANB0263 NODEK~NODEJ +11 CANB0326
WRITE(LUDATA,2050)LIMIT,NELI,IZERO, IZERO, IZERO, IZERO,MAT,INC, CANB0264 NODEL=NODEK-l CANB0327
1 IZERO,INTRAL,NUMLAY,INTERL CANB0265 MAT~1 CANB032B
200 CONTINUE CANB0266 INC~1 CANB0329
C CANB0267 INTRAL~1 CANB0330
NUMLAY~NHC-12 CANB0331 DO 470 K~1,3 CANB0394
INTERL~l1 CANB0332 NUMMAT-K CANB0395
IF(NMOVE.EQ.11) INC~NHC-B CANB0333 Kl-2*K-l CANB0396
IF(NINC.LT.O) INC~1 CANB0334 K2=Kl+1 CANB0397
IF(NMOVE.EQ.11) MAT~3 CANB0335 470 WRITE(6,2090)MATTYP(K1) ,MATTYP(K2) ,NUMMAT CANB0398
WRITE(LUDATA,2050)LIMIT,LASTEL,NODEI,NODEJ,NODEK,NODEL,MAT,INC, CANB0336 REWIND LUDATA CANB0399
1 IZERO,INTRAL,NUMLAY,INTERL CANB0337 RETURN CANB0400
GO TO 400 CANB0338 C CANB0401
310 IF(I.EQ.6) GO TO 260 CANB0339 C FORMATS CANB0402
IF(NMOVE.EQ.11) GO TO 260 CANB0340 C CANB0403
NELI=LNOD4(1,I)+NMOVE-1 CANB0341 1000 FORMAT(A4,17A4,A4) CANB0404
MAT~l CANB0342 1010 FORMAT (415,6FlO.0) CANB0405
INC=l CANB0343 2000 FORMAT (lHO, ' FATAL DATA ERROR. THE CONTROL WORD MUST BE • £MBA ORCANB0406
IF(NELI.EQ.LASTEL) GO TO 260 CANB0344 1 TREN • ,BUT IS" ',A4,' .. '} CANB0407
WRITE(LUDATA,2050)LIMIT,NELI,IZERO,IZERO,IZERO,IZERO,MAT,INC, CANB0345 2010 FORMAT (lHI, ' BEGIN GENERATION OF CANNED MESH· ·'111 CANB0408
1 IZERO,INTRAL,NUMLAY,INTERL CANB0346 1 THE DATA TO BE RUN IS ENTITLED '111HO, 17A411CANB0409
260 CONTINUE CANB0347 2 TYPE OF MESH - - - - - - - - - - - - - - --- ',3MII CANB0410
C CANB0348 3 PLOTTING DATA SAVED - ----- -- - - ',1511 CANB0411
C ALL CONNECTIVITY IS DONE CANB0349 4 PRINT SOIL RESPONSES ----------------- ',151/ CANB0412
C CANB0350 5 PRINT CONTROL FOR PREP OUTPUT -------- ',151/ CANB04l3
C BOUNDARY CONDITION GENERATION CANB0351 6 NUMBER OF CONSTRUCTION INCREMENTS ---- ',151/ CANB0414
C OVERBURDEN PRESSURE INTO INCREMENTS CANB0352 SPAN OF BOX -------------------------- ',F9.211 CANB0415
C CANB0353 HEIGHT OF BOX ------------------------ ',F9.2/) CANB04I6
400 LIMIT~IBLANK CANB0354 2120 TRENCH WIDTH (FT) - - - - - - - - -- -- ',F9.2/) CANB04l7
COVLIM~3.0*R2 CANB0355 2100 SOIL ABOVE TOP OF BOX (FT) ----------- ',F9.211 CANB041B
IF (HTCOVR.LE.COVLIM) GO TO 440 CANB0356 MESH HEIGHT ABOVE TOP OF BOX (FT) ---- ',F9.211 CANB04l9
OVERP-(HTCOVR-3.0*R2)*DENSIT CANB0357 SOIL DENSITY ABOVE MESH (PCF)--------- ',F9.2/) CANB0420
WRITE(6,21l0) OVERP CANB0358 2110 FORMAT(lHO,' PRESSURE OF TRUNCATED SOIL (PSI)------ ',F9.2) CANB0421
IF(NINC.LE.9) GO TO 420 CANB0359 2020 FORMAT(III,lH ,'WE ARE GOING TO ASSUME NO BEDDING MATERIAL'II) CANB0422
OVER~OVERP/FLOAT(NINC-9) CANB0360 2030 FORMAT(A4,IX,17A4,3X,A4IBI5) CANB0423

-
+:0-
N
IDINC=NINC-9
DO 430 I~l,IDINC
NfIRST=157
NLAST=167
CANB0361
CANB0362
CANB0363
CANB0364
2040
2050
2060
2070
FORMAT(Al,I4, IS,2FlO.3,IS,SX,2FlO.3)
FORMAT(Al,I4,lOI5)
FORMAT(Al,I4,I5,FlO.2,I5,2FlO.2,315,2FlO.2)
FORMAT (lHO, ' HTCOVR-',FlO.211' FATAL DATA ERROR FOR THE HEIGHT CANB042?
CANB0424
CANB0425
CANB0426

NEWINC~9+I CANB0365 10F COVER OF SOIL'II' HTCOVR MUST BE GREATER OR EQUAL THAN ZERO') CANB042B
PLOAD~-OVERP CANB0366 2080 FORMAT (lHO, II' IDENTIFICATION OF MATERIAL ZONE WITH MATERIAL NUMBECANB0429
WRITE(LUDATA,2060)LIMIT,NFIRST,IZERO,FZERO, IZERO, FZERO ,FZERO, CANB0367 lR'llllOX, 'MATERIAL-ZONE',3X, 'MATERIAL NO.'I) CANB0430
1 NEWINC,NLAST,IONE,PLOAD,PLOAD CANB0368 2090 FORMAT(lHO,16X,2A4,3X,I2) CANB0431
430 CONTINUE CANB0369 END CANB0432
GO TO 440 CANB0370 • * * * * * * CONCOOOI
420 IF(NINC.GT.O) GO TO 440 CANB0371 CANDE-B9 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM CONC0002
NfIRST~157 CANB0372 VERSION 1.0, MARCH 1990 CONC0003
NLAST~167 CANB0373 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY CONC0004
NEWINC-1 CANB0374 THE FEDERAL HIGHWAY ADMINISTRATION CONCOOOS
PLOAD2-0VERP CANB0375 CONC0006
WRITE(LUDATA,2060)LIMIT,NFIRST,IZERO, FZERO, IZERO, FZERO ,FZERO, CANB0376 SUBROUTINE CONCRE(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA, CONCOOO?
1 NEWINC,NLAST,IONE,PLOAD,PLOAD CANB0377 1 PIPMAT,RESULT,XMODE) CONCOOOS
C CANB0378 C CONC0009
C BOUNDARY CONDITIONS (DISPLACEMENTS) CANB0379 C SUBROUTINE ,OR REINfORCED CONCRETE PIPE CULVERTS CONCOOlO
C CANB0380 C CONC0011
440 LASTNO~(NHC-12)*11+ll2 CANB0381 Uncomment this statement in all program modules for double CONC0012
K~IONE CANB0382 precision version. SCM 3-10-90 CONCOOl)
DO 450 1=1,38 CANB0383 CONC0014
IF(I.GT.l1) K=IZERO CANB0384 IMPLICIT DOUBLE PRECISION (A-H,O-Z) CONC001S
IF(NODBC(I).EQ.LASTNO) LIMIT~LlH CANB0385 CONC0016
WRITE(LUDATA,2060)LIMIT,NODBC(I),IONE,FZERO,K,FZERO,FZERO,IONE, CANB0386 Revise pipe dimension statements from 30 to 99. CONC0017
1 IZERO,IZERO,FZERO,FZERO CANB0387 SCM 5-22-89 CONC0018
IF(LIMIT.EQ.LlH) GO TO 460 CANB0388 CONC0019
450 CONTINUE CANB0389 DIMENSION ASI(99),ASO(99),PFS(3),PIPMAT(S,99),PPFS(3),PSTRNI(99), CONC0020
C CANB0390 1 PSTRNO(99),RESULT(20,99),SAFE(4),STNMAT(S),TBI(99), CONC0021
C PRINT MATERIAL NUMBERS CANB0391 TBO(99),WALLA(33),WALLB(33),WALLC(33),PTV(99) CONC0022
C CANB0392 CONC0023
460 WRITE(6,2080) CANB0393 C CONC0024
C TABLES BELOW GIVE STANDARD WALL THICKNESSES DERIVED FROM ASTM c-76cONC0025 PSENU = PSE/(1 . -PSNU**2) CONC0088
C USERS MAY SUBSTITUTE THEIR OWN TABLES OF WALL THICKNESSES USING CONC0026 PN = PSENU/PCENU CONC0089
C THE SAME FORMAT AS BELOW. PIPE SIZES FOR WHICH NO STANDARD WALL CONC0027 IF(NONLIN.LE.O) NONLIN - CONC0090
C IS AVAILABLE SHOULD HAVE O. IN THE MATRIX AT THOSE LOCATIONS CONC0028 IF(NONLIN.GE.3) NONLIN = 3 CONC0091
C eONC0029 IF(STNMAT(l).LE.O.O) STNMAT(l) 0.0 CONcoon
C FORMAT FOR LOCATING PIPE SIZES IS AS FOLLOWS-- CONC0030 IF(STNMAT(Z) .LE.O.O) STNMAT(2) 0.5*PFPC/PCENU CONC0093
C CONe0031 IF(STNMAT(3) .LE . O.O) STNMAT(3) 0.002 CONC0094
C 12 15 18 21 24 27 30 CONC0032 IF(STNMAT(3) .LE.STNMAT(2» STNMAT(3) = 1.001*STNMAT(2) CONC0095
C 33 36 39 42 45 48 51 CONC0033 PCEZ = (PFPC-PCENU*STNMAT(Z»/(STNMAT(3)-STNMAT(2» CONC0096
C 54 57 60 63 66 69 72 CONC0034 STNHAT(4) = PCEZ/PCENU CONC0097
C 75 78 81 84 87 90 93 CONC0035 STNHAT(S) = PFSY/PSENU CONC0098
C 96 99 102 105 108 CONC0036 SM1=STNMAT(1) CONC0099
C CONC0037 SM2--STNMAT(2) CONC0100
COMMON IPEDROI STSMAX{30,11),STNMAX(30,11),SMl,SM2,SM3,PCE2,FTC, CONC0038 SM3=-STNMAT(3) CONC0101
X FYC,FCC,PFSY,SMS,PTSN{30,2),PTSS(30,2) CONC0039 SM5=STNMAT(5) CONCOl02
DATA WALIJII CONC0040 FTC=SM1* PCENU CONCOl03
1 1. 750, 1. 875, 2.000, 2.250, 2.500, 2.375, 2.750, CONCOO41 fYC=-STNMAT(2)*PCENU CONC0104
2 2 . 875, 3.000, 3.250, 3.500, 3 . 750, 4.000, 4.250, CONC0042 FCC=-PFPC CONC0105
3 4. 500, 4.750, 5.000, 5.250, 5 . 500, 5.750, 6.000, CONCOOn WRITE(6,2002) NONLIN,STNMAT(1),STNMAT(2),STNMAT(3),STNMAT(5),SL CONCOI06
4 6.250, 6.500, 6.750, 7.000, 7.250, 7.500, 7.750, CONC0044 C CONC0107
5 8.000, 8.250, 8.500, 8.750, 9.0001 CONC0045 C READ SECTION PROPERTIES FOR ANALYSIS CONCOl08
DATA WALLBI CONC0046 C CONCOl09
1 2.000, 2. 250, 2.500, 2.750, 3 . 000, 3.250, 3.500, CONC0047 IF{PDIA . LT.O.O) GO TO 111 CONCOllO
2 3.750, 1.000, 4.250, 4.500, 4.750, 5.000, 5.250, CONC0048 IF(RSHAPE.NE.ELLI .AND. RSHAPE.NE . ARBI) RSHAPE= CIRC CONCOlll
3 5.500, 5 .750, 6.000, 6.250, 6 . 500, 6.750, 7.000, CONC0049 IF(XMODE . EQ.DESIGN) GO TO 120 CONC01l2
4 7 . 250, 1. 500, 7.750, 8.000, 8.250, 8.500, 8.750, CONC0050 NREAD =1 CONC0113
5 9.000, 9.250, 9.500, 9.750, 10.0001 CONC0051 IF(RSHAPE.EQ.ARBI) NREAD = NPPT CONC0114
DATA WALLCI CONC0052 DO 110 N=l,NREAD CONCOllS
1 2.750, 3.000, 3 . 250, 3.500, 3 . 750, 4.000, 4.250, CONC0053 READ(5,lOOl) ASI(N),ASO(N),TBI(N),TBO(N) CONCO 11 6
2 4.500, 4.750, 5.000, 5.250, 5.500, 5.750, 6.000, CONC0054 IF(TBI(N) .LE.O.O) TBI(N) 1.25 CONC0117
3 6 . 250, 6.500, 6.750, 7.000, 7 . 250, 7.500, 7.750, CONC0055 IF{TBO{N).LE.O.O) TBO(N) - 1.25 CONC0118
..- 4 8.000, 8.250, 8.500, 8.750, 9 . 000, 9.250, 9.500, CONC0056 110 CONTINUE CONC0119
-+:>- 5 9.750, 10.000, 10.250, 10.500, 10 . 7501 CONC0057 C CONC0120
W
C CONC0058 C WRITE SECTION PROPERTIES TO BE ANALYSED. CONC0121
DATA NFS,PPFS/ 3,1.6,2.,2./ CONCOOS9 C CONCOl22
DATA FPC,XNU,FSY,SE,SNU,SLS/4000., .17,40000.,29000000., .3,2.01 CONC0060 WRITE(6,200S) PT,RSHAPE CONCOl23
DATA ANALYS, ARBI , CIRC , DESIGN, ELL I , FIX OPT STD CONC0061 IF(RSHAPE.EQ.CIRC) WRITE(6,2010) ASI(l),ASO(l),TBI(l),TBO(l) CONC0124
1 / 4HANAL , 4HARBI, 4HCIRC, 4HDESI, 4HELLI, 3HFIX, 3HOPT, 3HSTD /CONC0062 IF(RSHAPE.EQ.ELLI) WRITE(6,2011) ASI(l),TBI(l) CONC0125
DATA NTMAX,CW01/Z0,0 . 011 CONC0063 IF(RSHAPE.EQ.ARBI) WRITE(6,2012) (ASI(N),ASO(N),TBI(N),TBO(N), CONC0126
C CONC0064 X N=l,NPPT) CONCOl27
GO TO (100,200),ICOME CONC0065 GO TO 165 CONC0128
C CONC0066 C CONC0129
C FIRST ENTRY ESTABLISHES PIPE PROPERTIES AND SAFETY FACTORS CONC0067 C READ ARBITRARY CONCRETE SECTION PROPERTIES FOR NEW OPTION OF CONC0130
C CONC0068 C VARIABLE THICKNESS (LEVEL 2-BOX OR 3) CONCOl31
100 READ(S,lOOO) PDIA,PT,RSHAPE,NONLIN,STNMAT(l) ,STNMAT(2) ,STNMAT(3) , CONC0069 C CONC0132
X PFPC,PCE,PNU,PDEN,PFSY,PSE,PSNU,SL CONC0070 111 IF(LEVEL . EQ.3) GO TO 112 CONC0133
ITER=O CONcoon NDTOP=S CONC0134
IF(PDIA.EQ.O.O) GO TO 950 CONcoon NDSIDE=7 CONC0135
IF(PFPC.EQ.O . ) PFPC=FPC CONC0073 NPPT=2*(NDTOP-1)+NDSIDE CONC0136
PFPT = 5.0*SQRT(PFPC) CONCOOH NPMAT-NPPT-l CONC0137
PrvT - 2.0*SQRT{PFPC) CONC0075 112 IF{RSHAPE.NE.ARBI) GO TO 114 CONC0136
PDENT ~ PDEN CONC0076 DO 113 N=l, NPPT CONC0139
IF{PDENT.LE.O.) PDENT = 150. CONC0077 READ(S,lOOl) ASI(N),ASO(N),TBI(N),TBO(N),PTV(N) CONC0140
IF{PCE.EQ.O.) PCE - 33.*PDENT**1.5*SQRT(PFPC) CONC0078 IF(TBI(N) .LE.O.O) TBI(N)=1.25 CONCOl41
IF(PNU . EQ.O.) PNU=XNU CONC0079 IF{TBO(N) .LE.O.O) TBO{N)=1.25 CONC0142
IF{PFSY.EQ.O.) PFSY=FSY CONC0080 IF(PTV(N) .LE.O . O) PTV(N)=PT CONC0143
IF(PSE.EQ.O.) PSE=SE CONC0081 113 CONTINUE CONC0144
IF{PSNU.EQ.O . ) PSNU=SNU CONC0082 GO TO 118 CONC0145
IF(SL . EQ.O . O) SL=SLS CONC0083 C CONC0146
IF(PDIA.LT.O.O) WRITE(6,2001) CONC0084 C READ BOX CULVERT SECTION PROPERTIES FOR LEVEL 2-BOX AND RSHAPE=STDCONC0147
WRITE(6,2000) PDIA,PFPC,PCE,PNU,PDEN,PFSY,PSE,PSNU CONC0085 C CONC0148
C CONC0086 114 IF{LEVEL.NE.2) GO TO 960 CONC014<;
PCENU = PCE/(1.-PNU**2) CONC0087 READ(S,lOOl) PTT,PTS,PTB,HH,HV CONC0150
READ(5,10011 ASl,AS2,AS3,AS4,XLl,TC CONC01Sl IF(TBI(l).LE.O.O) TSI(1) 1.2S CONC0214
IF(PTT.LE.O . O) PTT- PT CONC01S2 IF(SRATIO.LE.O.O) SRATIO 0.75 CONC02lS
IF(PTS.LE.O . O) PTS-PT CONC01S3 00 130 I~l, NFS CONC02I6
IF(PTB.LE . O. O) PTB~PT CONC01S4 IF(PFS(I) .GT . O.O) GO TO 130 CONC0217
IF(XLl.LE . O. O) XL1~1.0 CONC015S PFS(I)=PPFS(I) CONC02I8
IF(TC.LE.O.O) TC=1.25 CONC01S6 130 CONTINUE CONC02I9
C CONC01S7 C CONC0220
C SET UP BOX SECTION PROPERTIES FOR LEVEL 2-BOX CONCOlS8 C NGOAL = 1, IMPLIES OPTIMUM WALL DESIGN CONC022I
C (FIRST UNIFORM COVER) CONC01S9 C NGOAL = 2, IMPLIES STANDARD WALL DESIGN CONC0222
C CONC0160 C NGOAL = 3, IMPLIES FIXED WALL THICKNESS CONC0223
DO 115 N=1, NPPT CONC0161 C CONC0224
TBI (N)=TC CONC0162 NGOAL = CONC022S
115 TBO(N)-TC CONC0163 IF(GOAL.EQ.OPT) NGOAL ~ 1 CONC0226
C CONC0164 IF(GOAL.EQ.FIX . AND. PT . GT . O.O) NGOAL = 3 CONC0227
C DETERMINE NODES FOR OUTER STEEL ON TOP AND BOTTOM CONC0165 IF(NGOAL.EQ.O) GOAL = STD CONC0228
C CONC0166 IF(NGOAL.EQ.O) NGOAL ~ 2 CONC0229
NDAS= FLOAT(NDTOP-1)'XL1+1 CONC0167 WRITE(6,2100) (PFS(I),I=l,NfS) CONC0230
NDAS=NDTOP-NDAS CONC0168 IF(ALCW.NE.O.) WRITE(6,210l) ALCW CONC023I
C CONC0169 IF(ALCW.EQ.O . ) ALCW ~ 1000000. CONC0232
C LOOP THROUGH FOR TOP AND BOTTOM NODE PROPERTIES CONC0170 WRITE(6,2102) RSHAPE,TBI(l),GOAL CONC0233
C CONCOl71 IF(NGOAL.EQ.3) WRITE(6,2103) PT CONC0234
LIMl-NDTOP-l CONC01n IF(RSHAPE.EQ.CIRC) WRITE(6,2104) SRATIO CONC0235
DO 116 N~1, LIMI CONC0173 PFSC = CWOI/ALCW CONC0236
ASOUT=O.O CONC0174 C CONC0237
IF(N.GT . NDAS) ASOUT~ASI CONC0175 C ASSIGN MINIMUM WALL THICKNESS FOR DESIGN CONC0238
ASO (NI =ASOUT CONC0176 C IF THICKNESS IS SPECIFIED IT WILL REMAIN CONSTANT CONC0239
ASI (N)=AS2 CONCOl77 C IF IT IS ADEQUATE CONC0240
PTV(N)=PTT CONC0178 C CONC0241
NBOT~NPPT+1-N CONC0179 IF(NGOAL.EQ.3) GO TO 160 CONC0242
ASO(NBOT)=ASOUT CONC0180 141 GO TO (lSl,1S2),NGOAL CONC0243
ASI(NBOT)~AS3 CONC0181 151 PT = . OS'PDIA CONC0244
.- 116 PTV(NBOT)= PTB CONC0182 GO TO 160 CONC0245
~ CONC0183 lS2 CONTINUE CONC0246
~ C
C LOOP THROUGH FOR SIDE WALL (NEGLECTING CORNER NODES) CONC0184 ISIZE ~ PDIA/3 -3 CONC0247
C CONC0185 IF(ISIZE.GE.l . AND.ISIZE.LE.33) GO TO ISS CONC0248
LIM2-NDSIDE+NDTOP-2 CONC0186 IS3 NGOAL = 1 CONC0249
NTOPl=NDTOP+l CONC018? WRITE(6,2018) CONC0250
DO 117 N~NTOP1,LIM2 CONC018B GO TO 141 CONC02S1
ASO(N)=AS1 CONC01B9 ISS PT-WALLA(ISIZE) CONC0252
ASI(N)=AS4 CONC0190 If(PT.LE.O.1 PT - WALLB(ISIZEI CONC02S3
117 PTV(N)~PTS CONC0191 IF(PT.LE.O.I PT = WALLC(ISIZE) CONC02S4
C CONC01n IF(PT.LE.O.) GO TO lS3 CONC02S5
C LASTLY CONSIDER CORNER NODES CONC0193 160 PTMIN = PT CONC0256
C CONC0194 C CONC02S7
ASO(NDTOP) - ASI CONC019S C ASSIGN MINIMUM STEEL AREA SASED ON HANDLING DEFLECTION, CONC02S8
ASI (NDTOP)=O.S* (AS2+AS4) CONC0196 C TEMPERATURE STEEL, OR MINIMUM PRACTICAL REINFORCEMENT CONC02S9
PTV(NDTOP) - O.S*(PTT+PTS+HH+HV) CONC0197 C CONC0260
PTV(NDTOP+NDSIDE-l)=0 . 5*(PTB+PTS+HH+HV) CONC0198 AS = (.13'PDIA""3 + 130 . *PDIA**2) I ( . 49*PSE*PT**2) - .0184*PT/PN CONC026l
ASO(NDTOP+NDSIDE-l)~ASI CONC0199 IF(AS . LT .. 0014'PT) AS - . 0014*PT CONC0262
ASI(NDTOP+NDSIDE-1)=0.S*(AS3+AS4) CONC0200 IF(AS.LT . . 00583) AS = .00S83 CONC0263
C CONC0201 I<SMIN - AS CONC0264
C WRITE SECTION PROPERTIES CONC0202 C CONC026S
C CONC0203 C ESTABLISH RELATIVE DESIGN PROPORTIONS OF STEEL FOR CIRCULAR AND CONC0266
118 CONTINUE CONCD204 C ELLIPTICAL CAGES CONC026?
WRITE(6,2009) (N,ASI(N),ASO(N),TBI(N),TBO(N),PTV(N),N~l,NPPT) CONC020S C CONC0268
GO TO 16S CONC0206 IF(RSHAPE.EQ.ELLI) GO TO 161 CONC0269
C CONC0207 ASI(l) = ASMIN CONC0270
C READ OR DEFAULT SAFETY FACTORS, ALLOWABLE CRACK WIDTH, AND CONC0208 ASO(l) = SRATIO*ASMIN CONC027I
C DESIGN GOAL FOR WALL THICKNESS CONC0209 TSO(l) = TSI(l) CONC0272
C •• CRACK WIDTH IS A DESIGN CRITERIA ONLY WHEN THE ALLOWABLE CONC0210 GO TO 165 CONC0273
C VALUE IS SPECIFIED *. CONC0211 161 ASI (1) = ASMIN CONC0274
C CONC0212 I<SO(l) - 0.0 CONC0275
120 READ (5, 1003) (PFS (I) , 1=1, NFS) ,ALCW, GOAL, TBI (1) ,SRATIO CONC0213 TSO(l) - 0.0 CONC0276
C CONCOZ?? PIPMAT (2, N) PNU CONC0340
C DESIGN ANO ANALYSIS ... ASSIGN CIRCULAR OR ELLIPTICAL STEEL CAGES.CONC02?8 PIPMAT(3,N) 0.S*(RESULT(14,N)+RESULT(14,Nl)) CONC0341
C NOTE THIS SECTION IS RE-ENTERED FOR EACH TRIAL DESIGN. CONC02?9 PIPMAT (4, N) 0.S*(RESULT(15,N)+RESULT(1S,N1» CONC0342
C CONCOZ80 PIPMAT(S,N) PDEN*PTll728. CONC0343
165 IF(PDIA.LT.O.O) GO TO 181 CONC0281 195 CONTINUE CONC0344
IF(RSHAPE.EQ.ARBI) GO TO 180 CONC0282 NTIMES = 0 CONC0345
DELTB ; 0.0 CONC0283 RETURN CONC0346
IF(RSHAPE.NE.ELLI) GO TO 168 CONC0284 C CONC0347
XPPT z NPPT CONC028S C CONC0348
XPMAT = NPMAT CONC0286 C SECOND ENTRY ... (I) RE-EVALUATE SECTION PROPERTIES BASED ON CONC0349
DELTS - (PT-2.*TBI(1))/(XPMAT/Z.) CONC028? C CURRENT VALUES OF THRUST AND MOMENT. (2) EVALUATE STRUCTURAL CONC0350
168 CONTINUE CONC0288 C RESPONSES IN TERMS OF DESIGN CRITERIA. (3) IN DESIGN MODE CONC03S1
DO 170 N=2, NPPT CONC0289 C DETERMINE NEW STEEL AREA AND/OR CONCRETE THICKNESS AS REQUIRED. CONC035Z
ASI(N) - ASI(N-1) CONCOZ90 C CONC03S3
ASO(N) = ASO(N-1) CONC0291 200 CALL CONMAT(NPMAT,NPPT, ICON,ASI,ASO,TSI,TBO,RESULT,PIPMAT,STNMAT, CONC03S4
SIGN e 1.0 CONCOZ92 X PSTRNI,PSTRNO,PT,PN,PCENU,PSENU,NONLIN,PDIA,PTV,NTlMES,SL) CONC03S5
IF(RSHAPE.NE.ELLI) GO TO 169 CONC0293 IF(ICON.EQ.l) GO TO 500 CONC0356
XN ; N CONC0294 IF(NTIMES.GE.NTMAX) GO TO 500 CONC035?
TERM = XPPTfZ. - XN + 1. CONC029S NTlMES = NTIMES + 1 CONC0358
IF(TERM.EQ.O.O) SIGN = 0 . 0 CONC0296 IEXIT = -1 CONC0359
IF(TERM.LT.O.O) SIGN=-l . CONC0291 WRITE(6,')NTIMES CONC0360
169 TBI(N) - TBI(N-1) + DELTS"SIGN CONC0298 RETURN CONC0361
TBO(N) = TBO(N-1) CONC0299 C CONC0362
170 CONTINUE CONC0300 C CHECK IF NONLINEAR SOIL MODEL HAS CONVERGED CONC0363
C CONC0301 C CONC0364
C CALCULATE INTIAL SECTION PROPERTIES BASED ON UNCRACKED SECTION. CONC0302 500 NTIMES ~ 0 CONC036S
C (GENERALLY THIS WILL PRODUCE MAXIMUM MOMENT AND THUST) CONC0303 IF(NINC.GT.O) GO TO 505 CONC0366
C CONC0304 IEXIT - -1 CONC036?
180 IF(ICOME . EQ.1) PDIA = PDIA + PT CONC030S RETURN CONC0368
181 CONTINUE CONC0306 C CONC0369

-
"VI
"'-
DO 190 N-LNPPT
IF(PDIA.LT.O.O) PT=PTV(N)
APNI = ASI(N)"(PN-1.)
APNO = ASO(N)*(PN-1.)
CONC030?
CONC0308
CONC0309
CONC0310
C
C
505
SAVE INNER AND OUTER PIPE STRAINS OF CONVERGED SOLUTION

DO 507 N-l, NPPT


PSTRNI(N) RESULT(19,N)
CONC0370
CONC0371
CONC0372
CONC0373
YTI = TSI(N) CONC0311 50? PSTRNO(N) = RESULT(20,N) CONC0374
YTO = PT - TBO(N) CONC0312 C CONC03?5
PA = PT + APNI + APNO CONC0313 C EVALUATE STRUTURAL RESPONSES. (IN DESIGN MODE ONLY ON LAST STEP) CONC0376
YSAR = (0.5'PT"PT + APNI"YTI + APNO*YTO)/PA CONC0314 C CONC0377
PI = 0.3333*PT*'3 - PT'PT'YBAR + PT'YeAR'YBAR CONC031S C SSMAX = MAX TENSILE STRESS IN STEEL CONC03?6
PI = PI +APNI*(YTI-YBARj'*Z + APNO*(YTO-YBAR)**Z CONC0316 C SCMAX = MAX COMPRESSIVE STRESS IN CONCRETE CONC0379
RESULT(14,N) - PA CONC031? C VMAX = MAX SHEAR STRESS ON GROSS SECTION CONC0360
RESULT(lS,N) = PI CONC0318 C DISP - MAX RELATIVE DISPLACEMENT CONC0361
RESULT(16,N) = YeAR CONC0319 C CRWD = MAX CRACK WIDTH CONC0382
PSTRNI (N) 0.0 CONC0320 C CONC0383
PSTRNO(N) - 0.0 CONC0321 IF(XMODE.EQ.ANALYS) GO TO 510 CONC0384
C CONC0322 IF(IA.EQ.NINC) GO TO 510 CONC038S
C INITIAL VALUES FOR MAX. STRAINS AND STRESSES CONC0323 IEXIT = 0 CONC0386
C CONC0324 RETURN CONC0367
DO 188 IL=l,Z CONC0325 C CONC0388
PTSN(N,IL)=O.O CONC0326 510 SSMAX = O.OOOOOI*PFSY CONC0389
188 PTSS(N,IL)=O.O CONC032? BCMAX - -O.OOOOOl*PFPC CONC0390
DO 189 II=l,l1 CONC0328 VMAX = O.OOOOOOI*PFPC CONC0391
STNMAX(N,II)--O.OOOOOl/PCENU CONC0329 UYMAX - RESULT(4,1)+0.OOOOOOI*PT CONC0392
189 STSMAX(N,II)=-O.OOOOOI CONC0330 UYMIN = RESULT(4,1) CONC0393
190 CONTINUE CONC0331 CRWD ~ 0.0 CONC0394
C CONC0332 DO 540 N=l,NPPT CONC039S
C AVERAGE AREA AND MOMENT OF INERTIA AT ELEMENT CENTERS FOR INPUT CONC0333 IF(ASS(RESULT(10,N») .GT.BSMAX) SSMAX - ABS(RESULT(lO,N») CONC0396
C INTO SOLUTION THEORIES. CONC0334 IF(ABS(RESULT(11,N)) .GT.BSMAX) SSMAX = ABS(RESULT(ll,N) CONC0397
C CONC033S IF(RESULT(12,N) . LT. BCMAX) BCMAX - RESULT(12,N) CONC0398
DO 195 N=l,NPMAT CONc0336 VN ~ ABS(RESULT(13,N)) CONC0399
N1 = N+l CONC033? IF(VN.LT.VMAX) GO TO 520 CONC0400
IF(N1 . GT.NPPT) N1-1 CONC0338 VMAX - VN CONC0401
PIPMAT(l,N) = PCE CONC0339 520 IF(RESULT(17,N) .GT.CRWD) CRWD RESULT(l?,N) CONC040Z
IF(RESULT(4,N).GT.UYMAX) UYMAX RESULT(4,N) CONC0403 C REVISE CONCRETE WALL THICKNESS CONC0466
IF(RESULT(4,N) .LT.UYMIN) UYMIN ~ RESULT(4,N) CONC0404 C CONC0467
540 CONTINUE CONC04 05 555 ICHKC = 1 CONC0468
DISP = UYMAX-UYMIN CONC0406 IF(NGOAL.EQ.3) GO TO 510 CONC0469
BCMAX = ABS(BCMAX) CONC0407 CONC0470
IF(CRWD.EQ.O.O) CRWD =0.000001 CONC0408 Revise intrinsic function to generic form. SCM 3-10-90 CONC0471
C CONC0409 CONC0472
C COMPUTE ACTUAL SAFETY AND PERFORMANCE FACTORS, THE CRITERIA IS . .. CONC0410 SMIN = MIN(SAFE(2),SAFE(3)) CONC0473
C CONC0411 CONC0474
C (1) STEEL YIELD STRESS (PFSY) CONC0412 IF(ABS(SMIN-1 . 0) .LT.0.05) GO TO 510 CONC0475
C (2) CONCRETE COMPRESSIVE STRENGTH (PFPC) CONC0413 PTNEW = PT/SMIN CONC0476
C (3) SHEAR STRENGTH=TENSILE STRENGTH (VUzPFPT) CONC0414 IF(PTNEW.LT.PTMIN) PTNEW = PTMIN CONC0477
C (4) ALLOWABLE CRACK WIDTH, 0.01 INCHES OR USER DEFINED, (ALCW) CONC0415 IF(PT . EQ.PTNEW) GO TO 570 CONC0478
C (5) ALLOWABLE DISPLACEMENT, FROM LUM,NCHRP-116,PAGE 21. (DISLUM)CONC04I6 GO TO (561,562) , NGOAL CONC0479
C CONC0417 561 IF(ITER.LE.2) PT = PTNEW CONC0480
VU PFVT CONC0418 PT - 0.5'(PT+PTNEW) CONC0481
C CONC0419 ICHKC = 0 CONC0482
C DETERMINE RADIAL STRESS FOR BOW STINGING CONC0420 GO TO 570 CONC0483
C CONC0421 C CONC0484
BOWSTR = 10.*BSMAX*ASI(I)/(PDIA/2 . 0) CONC0422 562 IF(PTNEW.GT.WALLA(ISIZE)) GO TO 563 CONC0485
IF(BOWSTR.LE.O.O) BOWSTR = 0.001 CONC0423 PTNEW = WALLA(ISIZE) CONC0486
C CONC0424 GO TO 568 CONC0487
DISLUM = (PDIA-PT)*·2/(1200.*PT) CONC0425 563 IF(PTNEW.GT.WALLB(ISIZE)) GO TO 564 CONC0488
C CONC0426 PTNEW = WALLB(ISIZE) CONC0489
C ACTUAL SAFETY FACTORS AND PERFORMANCE FACTORS CONC0427 GO TO 568 CONC0490
C CONC0428 564 IF (PTNEW.GT.WALLC (ISIZE) . AND. ITER .GT. 4) GO TO 565 CONC0491
FSST = PFSY/BSMAX CONC0429 PTNEW = WALLC(ISIZE) CONC0492
FSCC = PFPC/BCMAX CONCOOO GO TO 568 CONC0493
FSV = VU/VMAX CONCOOI C CONC0494
FSCW = CW01/CRWD CONC002 565 WRITE(6,2016) CONC0495
FSDIS = DISLUM/DISP CONC0433 NGOAL = 1 CONC0496
FSBOW = PFPT/BOWSTR CONC004 GO TO 561 CONC0497
~ CONC0435 C CONC0498
0\ C
C DESIGN UPDATE CONC006 568 IF(PT.EQ.PTNEW) GO TO 570 CONC0499
C CONC0437 ICHKC = 0 CONC0500
IF (XMODE.EQ . ANALYS) GO TO 900 CONCOOS PT = PTNEW CONC050l
ITER = ITER + 1 CONC0439 C CONC0502
IF(ITER.GT.9) WRITE(6,2200) ITER,PT,ASI(l),ASO(l) CONCO 44 0 C TEST FOR CONVERGENCE OF BOTH STEEL AND CONCRETE SECTIONS . .. CONC0503
IF(ITER.GT.9) GO TO 900 CONC0441 C CONC0504
CONC0442 570 IF(ICHKS*ICHKC.EQ.1) GO TO 800 CONC0505
C
C COMPUTE RATIOS OF ACTUAL TO DESIRED SAFETY FACTORS. CONC0443 IEXIT = -2 CONC0506
C CONC0444 GO TO 165 CONC0507
SAFE (1) FSST/PFS(I) CONC0445 C CONC0508
SAFE(2) = FSCC/PFS (2) CONC0446 C PRINT DESIGN RESULTS CONC0509
SAFE(3) FSV/PFS(3) CONC0447 C CONC0510
SAFE(4) FSCW/PFSC CONC0448 800 WRITE(6,23I0) ITER,PT,ASI(I),ASO(l) CONC0511
CONC0449 C CONC0512
C
REVISE STEEL AREA CONC0450 C PRINT STRUCTURAL RESULTS AND EVALUATION CONC0513
C
CONC045I C CONC0514
C
Revise intrinsic funtion to generic form. SCM 3-10-90 CONC0452 900 CONTINUE CONCOS15
CONC0453 IF (LEVEL .EQ. 1) GO TO 350 CONC0516
SMIN = MIN(SAFE(1),SAFE(4)) CONC0454 ICOME - 3 CONC0517
CONC0455 CALL PRHERO(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA,PIPMAT, CONC05l8
ICHKS = 1 CONC0456 1 RESULT,SK,SM) CONC0519
IF(ABS(SMIN-l.O) .LT . 0 . 05) GO TO 555 CONC0457 ICOME = 2 CONC0520
ASNEW = ASI(l)/SMIN CONC0458 350 CONTINUE CONC0521
IF(ASNEW.LT.ASMIN) ASNEW = ASMIN CONC0459 WRITE(6,2800) lA, (J,RESULT(1,J),RESULT(3,J),RESULT(B,J), CONC0522
IF(ASI(l) .EQ.ASNEW) GO TO 555 CONC0460 X RESULT(5,J) ,RESULT(7,J) ,RESULT(2,J) ,RESULT(4,J) ,RESULT (9,J), CONC0523
ICHKS = 0 CONC046I X RESULT(6,J),RESULT(l8,J),J=I,NPPT) CONC0524
RATIO = ASNEW/ASI(l) CONC0462 WRITE(6,2810) lA, (J,RESULT(10,J) ,RESULT(ll,J) ,ReSULT(12,J) , CONC0525
ASI(l) RATIO'ASI(l) CONC0463 X RESULT(13,J),J=1,NPPT) CONC0526
ASO(l) = RATIO'ASO(I) CONC0464 WRITE(6,2820) (J,PSTRNI(J),PSTRNO(J),J=1,NPPT) CONC0527
C CONC0465 IF(PDIA.LT.O.O) GO TO 580 CONC0528
WRITE(6,2900) IA,FSST,FSCC,FSV,FSCW,FSDIS,FSBOW CONC0529 X lSX,36H CONCRETE SHEAR fAILURE ............ , FlS . 4 ) CONCOS92
GO TO 581 CONC0530 2101 FORMAT(/1SX,36H ALLOWABLE CRACK WIDTH (IN) ...•... , F15 . 4 CONC0593
5BO WRITE( 6,2901) IA,FSST,FSCC.FSV,FSCW CONC0531 2102 FORMAT(/15X , 36H SHAPE OF REBAR CAGE(S) .. ....... . .. ,11X,A411 CONCOS94
C CONCOS32 X lSX,36H MIN. COVER TO CENTER OF REBAR .... . ,FlS . 4 II CONC0595
581 IEXIT CONCOS33 X lSX,36H DESIGN GOAL FOR WALL THICKNESS ... . ,12X,A3) CONCOS96
IF(IA.NE . NINC) IEXIT - 0 CONCOS34 2103 FORMAT (/lSX, 36H FIXED WALL THICKNESS •. ............ ,FlS.4) CONCOS97
RETURN CONCOS35 2104 FORMAT{/1SX,36H OUTER-TO-INNER STEEL RATIO ........ , F15.4) CONCOS98
C CONC0536 2200 FORMAT(lHl,ll/ 10X,SOH DESIGN ITERATIVE PROCEDURE DID NOT CONVERGECONC0599
C FATAL ERROR EXITS CONCOS37 X AFTER ,131 10X,5SH ITERATIONS. THE LAST SOLUTION IS PRINTED AND ECONC0600
C CONCOS3S XVALUATED, I 10X,37H WHERE THE SECTION PROPERTIES ARE II CONC0601
950 WRITE(6,2013) CONC0539 X 15X,36H WALL THICKNESS . .......... . . . . .. . . . , E15.5 II CONC0602
IEXIT ~ 1 CONCOS40 X 15X,36H INNER CAGE STEEL AREA (OR ELLIPSE) • E15.5 II CONC0603
RETURN CONCOS41 X lSX,36H OUTER CAGE STEEL AREA . ... ...... .... , ElS.S ) CONC0604
960 WRITE(6.2014) CONCO S42 2310 FORMAT(lHl,11 10X,19H DESIGN RESULTS AT ,I2,11H ITERATIONS II CONC060S
IEXIT - 1 CONCOS43 X lSX,36H WALL THICKNESS ..........•. . ... FIO.5 II CONC0606
RETURN CONCOS44 X l5X,36H ••• INNER CAGE STEEL AREA (OR ELLI) , FlO.S II CONC0607
C CONCOS45 X lSX,36H *** OUTER CAGE STEEL AREA . . . •.. . .. , FlO.S ) CONC0608
C FORMATS CONCOS46 2800 FORMAT(lHl,I/10X,32H STRUCTURAL RESPONSE OF CULVERT, CONC0609
C CONC0547 X 20H FOR LOAD INCREMENT ,151/1 CONC0610
1000 FORMAT{2FlO.0, lX,A4, IS, 3FlO . O I BFlO . O) CONC0548 X S8H COORDINATES, DISPLACEMENTS AND CRACK DEPTHS ARE IN INCHES I CONC0611
1001 FORMAT (6FlO.0) CONCOS49 X 26H PRESSURES ARE IN LB / IN**2 / 28H MOMENTS ARE IN IN . 'LB/IN. CONC0612
1003 FORMAT(4FIO.0,7X,A3,2FlO.0) CONCOSSO X 31H THRUST AND SHEAR ARE IN LB/IN. III CONC06l3
2000 FORMAT(lHllll lOX,3SH PIPE PROPERTIES ARE AS FOLLOWS . _. I CONCOSSI X SH NPPT,6X,9H X-COORD . ,7X,8H X-DISP . ,7X,8H N-PRES.,8X,7H MOMENT, CONC06l4
X lOX, 38H (UNITS ARE INCH-POUND SYSTEM) II CONCOS52 X 9X,6H SHEAR/llX,9H Y-COORD.,7X,8H Y-DISP.,?X,8H S-PRES.,8X, CONC061S
X l5X,36H NOMINAL PIPE DIAMETER ............ . FlS.4 II CONCOSS3 X 7H THRUST,3X,12H CRACK DEPTH, (1II5.FlS.2,4ElS.S/SX,FlS. 2,4E1S.S))CONC0616
X l5X,36H CONCRETE COMPRESSIVE STRENGTH . . ... , F15.4 II CONC05S4 28 10 FORMAT(lHl,l/ 10X,33H STRESSES IN CULVERT WALL (PSI) , CONC06l7
X lSX,36H CONCRETE ELASTIC MODULUS . .. .. .. ... F15.4 I I CONCOSS5 X 20H FOR LOAD INCREMENT ,151/1 CONC06l8
X 15X,36H CONCRETE POISSON RATIO .. . .... .... . FlS.4 I I CONCOS56 X 9X, llH ELLIP. OR I CONC0619
X 15X,36H DENSITY OF PIPE (PCF)..... . ... .. . .. F15 . 4111 CONCOS57 X SH NPPT.4X,11H INNER CAGE ,4X,11H OUTER CAGE ,6X,9H CONCRETE CONC0620
X 15X,36H STEEL YIELD STRENGTH ..... . ... .. ... , FlS.4 11 CONC05S8 X 9X,6H SHEAR 114X,6H STEEL ,9X,6H STEEL ,3X,12H COMPRESSION, CONC0621
X 15X,36H STEEL ELASTIC MODULUS ........ .. . . . , FlS.4 11 CONCOSS9 X 8X,7H STRESS II CONC0622
...- X 15X,36H STEEL POISSON RATIO ........ .. . . . .. FlS.4) CONC0560 X (IS, 4ElS.S)) CONC0623
.j::>.
-....l 2001 FORMAT(II I IIOX,88H***NEGATIVE PIPE DIAMETER IMPLIES NEW CANDE OPTICONC0561 2820 FORMAT(lHO,111112X,'STRAINS IN THE INNER AND OUTER FIBER OFCONC0624
XON FOR VARIABLE CONCRETE THICKNESS. '** ,I I IOX,7SH***OPTION IS RECONCOS62 X THE CULVERT WALL',112X,' (ONLY STRAINS FOR COMPRESSION ZONES HAVCONC062S
XSTRICTED TO ANALYSIS ONLY WITH LEVEL 2-BOX, OR LEVEL 3. . . . ) CONC0563 XE PHYSICAL MEANING) ',II I , • NPPT INNER STRAIN OUTER STRAIN',/CONC0626
2002 FORMAT{1I15X,36H NONLINEAR CODE (1,2,OR 3) .. ....... , 10X,IS II CONCOS64 X/{IS,2ElS . S)) CONC0627
X l5X,36H CONC . CRACKING STRAIN (1,2,3) .. .. . ,FlS . 6 I I CONC0565 2900 FORMAT{lHl,11 11 SX, 26H CALCULATED SAFETY FACTORS, CONC0628
X lSX,36K CONC. YIELDING STRAIN (2,3) . ... . .. ,Fl5.6 II CONCOS66 X 20K FOR LOAD INCREMENT ,151/1 CONC0629
X l5X,36H CONC. CRUSHING STRAIN (2,3) .. .... . ,Fl5. 6 II CONC0567 X 10X,SOH STEEL YIELD STRESS I MAX. STEEL STRESS . . ..... . . ,FlO.3 1ICONC0630
X lSX,36H STEEL YIELDING STRAIN (3) .... .. . . . ,F15.6 IIII CONC0568 X 10X,50H CONCRETE STRENGTH I MAX. COMPRESSIVE STRESS .. . . ,FlO.31ICONC0631
X l5X,36H SPACING LONGITUDINAL REINFORCEMENT ,F15.2) CONC0569 X 10X,SOH WALL SHEAR CAPACITY I MAX. SHEAR ............... ,FlO.31ICONC0632
2005 FORMAT(/I lSX, 36H WALL THICKNESS ... .....• ........... ,F15.411 CONC0570 X SX,20H PERFORMANCE FACTORS II CONC0633
X15X,36H SHAPE OF REBAR CAGES ............ . . ,11X,A4 I) CONCOS71 X 10X,SOH 0 . 01 INCH I MAX . CRACK WIDTH .... .. . .. . ... .. . ... ,FIO.31ICONC0634
200 9 FORMAT(lHl,5X, 'NODE *
X',8X, 'THICKNESS (IN) ',II'
STEEL AREAS (IN2) ',13X, 'STEEL COVERS (IN)CONCOS72
N ASI(N) ASO(N) CONCOS73
X 10X,SOH ALLOWABLE DISPLACEMENT(LUM) I MAX. DISP . . .. . ... • f10 . 31 I CONC063S
X 10X,50H TENSILE STRENGTH I STRESS FROM BOW STRING .. . .. . ,FIO.3 ) CONC0636
X TBI(N) TBO(N) PTV{N)', I I(I6,SFlS.4)) CONCOS74 290 1 FORMAT{lHl,1111 SX,26H CALCULATED SAFETY FACTORS, CONC0637
2010 FORMAT(lSX,36H INNER CAGE STEEL AREA ... .. . . ...... , F15 . 4 II CONC0575 X 20H FOR LOAD INCREMENT ,151/1 CONC0638
X 15X,36H OUTER CAGE STEEL AREA ......... .. .. , F15.411 CONC0576 X 10X,50H STEEL YIELD STRESS I MAX. STEEL STRESS ..... . . .. ,FlO.31ICONC0639
X lSX,36H COVER TO CENTER OF INNER REBAR . ... , F15.411 CONCOS77 X 10X,SOH CONCRETE STRENGTH I MAX. COMPRESSIVE STRESS .. .. ,FlO.31ICONC0640
X lSX,36H COVER TO CENTER OF OUTER REBAR . ... , FlS.4/) CONCOS78 X 10X,SOH WALL SHEAR CAPACITY / MAX. SHEAR ...•........ ... ,FIO.3/ICONC064l
2011 FORMAT(15X,36H ELLIPTICAL CAGE STEEL AREA . .. ..... , F15 . 4 II CONC0579 X 5X,20tl PERFORMANCE FACTORS II CONC0642
X lSX,36H MIN. COVER TO CENTER OF REBAR . •.. . ,F15.4 I) CONCOS80 X 10X , SOH 0.01 INCH. I MAX. CRACK WIDTH .......... .. ... .. .. ,FlO . 3 )CONC0643
2012 FORMAT(lSX,36H REINFORCEMENT AREA AND COVER DEPTH II CONCOS81 END CONC0644
X 15X,36H INNER A. OUTER A. INNERC . OUTER C. 1{15X,4F9 . 4)) CONC0582 CONMOOOI
2013 FORMAT(52H PIPE DIAMETER WAS NOT SPECIFIED PROGRAM TERMINATED) CONCOS83 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM CONM0002
2014 FORMAT(lHO,SX,47H WRONG LEVEL WAS SPECIFIED, PROGRAM TERMINATED CONCOS94 VERSION 1.0, MARCH 1990 CONM0003
20 16 FORMAT(49H WALL THICKNESS GREATER THAN WALL C IS REQUIRED I CONCOS8S PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY CONM0004
X 34H DESIGN WILL PROCEED IN OPTION OPT ) CONCOS86 THE FEDERAL HIGHWAY ADMINISTRATION CONMOOOS
2018 FORMAT(/1141H NO STANDARD WALLS FOR THIS PIPE DIAMETER I CONC058? • * * • * * • * * * * * * * * * • • ~ * * * * • * * * * * * CONM0006
X 34H DESIGN WILL PROCEED IN OPTION OPT ) CONC058S SUBROUTINE CONMAT(NPMAT,NPPT,ICON,ASI,ASO,TBI,TBO,RESULT,PIPMAT, CONM0007
210 0 FORMAT{/ I 10X,43H DESIRED SAFETY FACTORS FOR PIPE DESIGN . . . I I CONCOSS9 X STNMAT,PSTRNI,PSTRNO,PT,PN.PCE,PSE,NONLIN.PDIA,PTV,NOLIT,SL) CONM0008
X lSX,36H STEEL YIELDING .. . . . . ....... ... .. .. Fl5.4 /I CONCOS90 C CONM0009
X 15X,36H CONCRETE CRUSHING ...•.. .. .. . .. .... , FlS.4 I I CONCOS9l C THIS ROUTINE IS ENTERED WITH THE TOTAL MOMENT AND THRUST ON EACH CONMOOIO
C PIPE NODE. THE OBJECTIVE IS TO DETERMINE THE FOLLOWING RESPONSES CONM0011 PDENOM ~ PSTRNO(N)-PSTRNI(N) CONM0074
C CONSISTANT WITH THIS LOADING ... CONM0012 C CONM0075
C CONM0013 C DETERMINE DISTANCE TO CENTER OF REBARS AND SET INNER LOOP COUNTER.CONM0076
C (1) INNER AND OUTER FIBER STAINS ASSUMING LINEAR DISTRIBUTION. CONM0014 C CONM0077
C (2) DEPTH OF CRACKING, DISTANCE TO BENDING AXIS. CONM0015 YTI ~ TBI (N) CONM0078
C (3) EFFECTIVE THRUST AREA AND EFFECTIVE MOMENT OF INERTIA. CONM0016 YTO - PT-TBO (N) CONM0079
C (THESE ARE AVERAGED INTO PIPMAT VECTOR FOR NEXT SOLUTION) CONM0017 NTIMES - 0 CONM0080
C (4) STEEL STRESSES, CONCRETE COMPRESSIVE STRESS, AND SHEAR STRESS.CONM0019 C CONM0081
C (5) CRACK WIDTH ESTIMATE. CONM0019 C BEGIN INNER LOOP ... DETERMINE INNER AND OUTER STRAINS OF PIPE. CONM0082
C CONM0020 C CONM0083
C THE ABOVE RESPONSES ARE STORED IN THE VECTOR RESULT FOR EACH NODE CONM0021 1 THETA = DELM/(PI*PCE) CONM0084
C POINT AS DEFINED BELOW... CONM0022 STNORM ~ DELN/(PA*PCE) CONM0085
C CONM0023 STRNI = STNORM + THETA*YBAR + PSTRNI(N) CONM0086
C RESULT(10,N) INNER CAGE STEEL STRESS CONM0024 STRNO = STNORM + THETA*(YBAR-PT) + PSTRNO(N) CONM0087
C RESULT(11,N) OUTER CAGE STEEL STRESS. CONM0025 IF (DELM .EQ. 0.0 .AND. DELN .EQ. 0.0) GO TO 99 CONM0088
C RESULT(12,N) MAX CONCRETE COMPRESSIVE STRESS. CONM0026 DENOM = STRNO - STRNI CONM0089
C RESULT(13,N) ~ MAX SHEAR STRESS IN CONCRETE. CONM0027 IF(DENOM.EQ.O.O) DENOM~0.OOOOl*STNMAT(2) CONM0090
C RESULT(14,N) ~ EFFECTIVE AREA OF SECTION CONM0029 STRNEG~STRNI CONM0091
C RESULT(15,N) MOMENT OF INERTIA ABOUT YBAR. CONM0029 IF(STRNEG.GT.STRNO)STRNEG~STRNO CONM0092
C RESULT(16,N) DISTANCE TO BENDING AXIS (YBAR). CONM0030 C CONM0093
C RESULT(17,N) WIDTH OF CRACK. CONM0031 C DETERMINE FE(I) AT INTEGRATION POINTS CONM0094
C RESULT(19,N) LENGTH OF CRACK. CONM0032 C CONM0095
C RESULT(19,N) MOMENT INCREMENT, OR CURRENT INNER STRAIN CONM0033 NINT=10 CONM0096
C RESULT(20,N) THRUST INCREMENT, OR CURRENT OUTER STRAIN CONM0034 NINTP=l1 CONM0097
C PSTRNI(N) INNER WALL STRAIN OF PREVIOUS CONVERGED STEP . CONM0035 DY=PT/FLOAT(NINT) CONM0098
C PSTRNO(N) ~ OUTER WALL STRAIN OF PREVIOUS CONVERGED STEP . CONM0036 YY~O.O CONM0099
C CONM0037 DO 135 I~l,NINTP CONM0100
Uncornment this statement in all program modules for double CONM0038 PSTAIN=PSTRNI(N)+PDENOM*YY/PT CONM0101
precision version. SCM 3-10-90 CONM0039 C CONM0102
CONM0040 C SET MAX. VALUE OF STRESS AND STRAIN AT EACH POINT CONMOI03

-
.J:>.
00
IMPLICIT DOUBLE PRECISION (A-H,O-Z)

Revise pipe dimension statements from 30 to 99 .


SCM 5-22-89
CONM0041
CONM0042
CONM0043
CONM0044
C
SSM=-ABS(STSMAX(N,I))
SNM~STNMAX(N,I)
IF(NOLIT.GT.O) GO TO 34
CONM0104
CONMOI05
CONM0106
CONM0107
CONM0045 IF(PSTAIN.GT.SNM) GO TO 27 CONM0108
DIMENSION ASI(NPPT),ASO(NPPT),TBI(NPPT),TBO(NPPT),RESULT(20,NPPT),CONM0046 IF(PSTAIN.LT.SNM) STNMAX(N,I)~PSTAIN CONM0109
X PIPMAT(5,NPMAT) ,STNMAT(5) ,PSTRNI(99),PSTRNO(99),PTV(99),FE (11), CONM0047 IF(SNM.LT.SM3)GO TO 33 CONMOllO
X CMOM(99),CTHR(99) CONM0048 IF(SNM.LT.SM2)GO TO 32 CONMOlll
CONM0049 PSTESS~(PSTAIN-SNM)*PCE+SSM CONM01l2
COMMON IPEDROI STSMAX(30,11),STNMAX(30,11),SM1,SM2,SM3,PCE2,FTC, CONM0050 IF(PSTESS.GT.FYC) GO TO 31 CONMOl13
X FYC,FCC,FSY,SM5,PTSN(30,2),PTSS(30,2) CONM0051 PSTESS=(PSTAIN-SM2) *PCE2+(SM2-SNM) *PCE+SSM CONM01l4
DATA LIMIT,TOLERl,TOLER2/3,0.01,0.031 CONM0052 IF(PSTESS.GT.FCC) GO TO 31 CONM01l5
C CONM0053 GO TO 33 CONM01l6
C SET OUTER LOOP CONVERGENCE CODE, (FOR ITERATIONS WITHIN LOAD STEP)CONM0054 32 PSTESS=(PSTAIN-SNM)*PCE2+SSM CONMO 11 7
C CONM0055 IF(PSTESS.GT.FCC)GO TO 31 CONM0118
ICON CONM0056 33 PSTESS~FCC+(PSTAIN-SM3)*0.OOOOl CONM0119
C CONM0057 31 IF(PSTESS.LT.SSM .AND. STSMAX(N,I) .LT.O.O) GO TO 29 CONM0120
C BEGIN NODE LOOP TO CONSIDER EACH NODE INDIVIDUALLY CONM0058 IF(PSTESS.LT.SSM) STSMAX(N,I)~-PSTESS CONM012 1
C CONM0059 GO TO 34 CONM0122
DO 100 N~l,NPPT CONM0060 29 STSMAX(N,I)~PSTESS CONM0123
IF(NOLIT.GT.O) GO TO 81 CONM0061 GO TO 34 CONM0124
CDELM~O.O CONM0062 27 PSTESS~(PSTAIN-SNM)'PCE + SSM CONM0125
CDELN~O.O CONM0063 IF (PSTESS .GT. FTC) STSMAX (N, I) =ABS (STSMAX (N, I) ) CONM0126
GO TO 92 CONM0064 IF(PSTESS.GT.O.O .AND. STSMAX(N,I) .GT.O.O) STSMAX(N,I)~ABS(STSMAX(CONM0127
81 CDELM~CMOM(N) CONM0065 XN,I)) CONM0128
CDELN~CTHR(N) CONM0066 34 FE(I)~1.0 CONM0129
82 CONTINUE CONM0067 ICK~l CONM0130
IF(PDIA.LT.O.O) PT~PTV(N) CONM0068 IF(STSMAX(N,I) .GT.O.O) ICK~O CONM0131
PA ~ RESULT(14,N) CONM0069 C CONM0132
PI ~ RESULT(15,N) CONM0070 C COMPUTE STRAINS OF THE POINT YY CONM0133
YBAR ~ RESULT(16,N) CONM0071 C CONM0134
DELM ~ RESULT(19,N) + CDELM CONM0072 STAIN~STRNI+DENOM*YY/PT CONM0135
DELN ~ RESULT(20,N) + CDELN CONM0073 IF(NONLIN.LT.2) GO TO 43 CONM0136
C CONM0137 IF(FE(I) .EQ.O.O) STSMAX(N,I)~ABS(STSMAX(N,I» CONM0200
C MAX . COMPRESSION STRESS AND STRAIN OF THE POINT YY CONM0138 35 CONTINUE CONM0201
C CONM0139 C CONM0202
SSM~-ABS(STSMAX(N,I» CONM014 0 C DETERMINE CRACK DEPTH USING STRESSES CONM0203
SNM-STNMAX(N, I) CONM014 1 C CONM0204
C CONM0142 IF(I.GT.l) GO TO 12 CONM0205
C CHECK IF THE POINT IS UNLOADED CONM0143 C CONM0206
C CONM0144 C COMPUTE INITIAL VALUES OF STRESSES CONM0207
IF(STAIN.LT.PSTAIN) GO TO 36 CONM0145 C CONM0208
IF(SSM.LT.FYC) GO TO 37 CONM0146 ICRK~O CONM0209
STESS~(STAIN-SM2)*PCE+FYC CONM0147 IF(FE(I).GT.O . O) ICRK-l CONM0210
GO TO 38 CONM0148 KV=O CONM0211
37 STESS=(STAIN-SNM)*PCE+SSM CONM0149 IF(ICRK.EQ.l) GO TO 10 CONM0212
38 IF(STESS.GT.O . O .AND. ICK.EQ . O) FE(I)=O.O CONM0150 HI=O.O CONM0213
IF(STESS.GT.FTC) FE(I)=O.O CONM0151 STSHI=STESS CONM0214
IF(I . EQ.l) STSIN~STESS CONM0152 GO TO 135 CONM0215
IF(I . EQ.NINTP) STSOU~STESS CONM0153 10 HF=O.O CONM0216
PSTESS=(PSTAIN-SNM)*PCE + SSM CONM0154 STSHF~STESS CONM0217
FSl=PSTESS CONM0155 GO TO 135 CONM0218
IF(FSl.GT.FTC) FSl=O.O CONM0156 12 IF(KV.EQ.l) GO TO 135 CONM0219
IF(FSl.GT.O.O .AND. ICK.EQ . O) FSl=O.O CONM0157 IF(ICRK.GT.O) GO TO 13 CONM0220
GO TO 35 CONM0158 IF(FE(I) .EQ.O . O) GO TO 14 CONM0221
C CONM0159 HF= (I-I) *DY CONM0222
C THE POINT IS LOADED CONM0160 STSHF-STESS CONM0223
C CONM0161 SLIM=FTC CONM0224
C COMPUTE THE NEW STRESS CONM0162 IF(STSMAX(N,I) .GT.O.O) SLIM=O.O CONM0225
C CONM0163 HK=HI+((SLIM-STSHI)/(STSHF-STSHI»*DY CONM0226
36 IF(STAIN.GT.SNM) GO TO 44 CONM0164 XKD=HK CONM0227
IF(SNM.LT.SM3) GO TO 39 CONM0165 Yl=HK CONM0228
IF(SNM.LT.SM2) GO TO 40 CONM0166 Y2=PT CONM0229
STESS-(STAIN-SNM)*PCE+SSM CONM0167 KV=l CONM0230
...- IF(STESS.GT.FYC) GO TO 41 CONM0168 C CONM0231
+>- STESS~(STAIN-SM2)*PCE2+(SM2-SNM)*PCE.SSM CONM0169 C WE KNOW XKD AND HK CONM0232
\0
IF(STESS.GT.FCC) GO TO 41 CONM0170 C CONM0233
STESS=FCC+(STAIN-SM3) *0.00001 CONMOI71 GO TO 135 CONM0234
41 PSTESS-(PSTAIN-SNM)*PCE+SSM CONMOln 14 HI=(I-I)*DY CONM0235
GO TO 42 CONMOI73 STSHI=STESS CONM0236
40 STESS=(STAIN-SNM)*PCE2+SSM CONM0174 GO TO 135 CONM0237
IF(STESS.GT.FCC) GO TO 41 CONM0175 13 IF(FE(I) .GT.O.O) GO TO 16 CONM0238
STESS=(SM3-SNM)*PCE2+(STAIN-SM3)*0 . 00001+SSM CONM0176 HI-(I-l)*DY CONM0239
GO TO 41 CONM0177 STSHI=STESS CONM0240
39 STESS~(STAIN-SM3)*0.00001+FCC CONM0178 SLIM=FTC CONM0241
GO TO 41 CONM0179 IM1=I-l CONM0242
44 STESS~(STAIN-SNM)*PCE+SSM CONM0180 IF(STSMAX(N,IMl) .GT.O.O) SLIM-O.O CONM0243
IF(STESS.GT.O.O .AND. ICK.EQ.O) GO TO 45 CONM0181 HK=HI-((SLIM-STSHI)/(STSHF-STSHI»*DY CONM0244
IF(STESS.GT.FTC) GO TO 45 CONM0182 XKD=PT-HK CONM0245
GO TO 41 CONM0183 n=o .0 CONM0246
45 FE(I) - O.O CONM0184 Y2=HK CONM0247
GO TO 35 CONM0185 KV-l CONM0248
42 FSl~PSTESS CONM0186 C CONM0249
IF(I.EQ.l)STSIN~STESS CONM0187 C WE KNOW XKD AND HK CONM0250
IF(I.EQ.NINTP) STSOU~STESS CONM0188 C CONM0251
IF(PSTESS.GT.FTC) FSl~O.O CONM0189 GO TO 135 CONM0252
IF(PSTESS.GT.O.O .AND. ICK.EQ . O) FSl~O.O CONM0190 16 HF=(I-1)*DY CONM0253
FEl=(SNM*PCE-SSM+FSl)/PCE CONM0191 STSHF-STESS CONM0254
FE2~STAIN CONMOI92 135 YY-YY+DY CONM0255
FS2-STESS CONM0193 IF(KV.EQ.O .AND. ICRK.EQ.l) GO TO 18 CONM0256
FE(I)=((FS2-FSl)/(FE2-FEl»* (FEZ-FEI)/(FE2-PSTAIN) CONM0194 IF(KV.EQ.O .AND. ICRK.EQ.O) GO TO 19 CONM0257
FE(I)-FE(I)/PCE CONM0195 GO TO 20 CONM0258
IF(FE(I) .LT.O.OOOOOOl) FE(I)=O.OOOOOOI CONM0196 19 XKD=PT CONM0259
GO TO 35 CONM0197 HK=PT CONM0260
43 IF(STAIN.GT.SMl) FE(I)=O.O CONM0198 naHK CONM0261
IF(STAIN.GT.O.O .AND. ICK.EQ.O) FE(I)=O.O CONM0199 Y2=PT CONM0262
GO TO 20 CONM0263 C CONM0326
18 XKD~O.O CONM0264 SUM1=0.0 CONM03Z7
HK-O.O CONM0265 SUM2=0.0 CONM0328
Yl=O.O CONM0266 SUM3-0.0 CONM0329
Y2-HK CONM0267 yy=O.O CONM0330
20 CONTINUE CONM0268 DO 55 I=1,NINT,2 CONM0331
C CONM0269 12-H1 CONM0332
C DETERMINE EFFECTIVE STEEL AREA CONM0270 13-1+2 CONM0333
C CONM0271 SUM1=FE(I)+4.0·FE(I2)+FE(I3)+SUM1 CONM0334
IF(NOLIT.GT.O) GO TO 60 CONM0272 YYl=H CONM0335
C CONM0273 YY2=YY+DY CONM0336
C COMPUTE PREVIOUS STRESSES AND STRAINS CONM0274 YY3=YY+2.0*DY CONM0337
C CONM0275 SUM2=FE(I)*YYl+4.0*FE(I2)*YY2+FE(I3)*YY3+SUM2 CONM0338
PTSNI=PSTRNI(N)tPDENOM*YTI/PT CONM0276 SUM3=FE(I)*YYl**2+4.0*FE(I2)*YY2**2+FE{I3)*YY3*·Z+SUM3 CONM0339
PTSNO=PSTRNI(N)tPDENOM*YTO/PT CONM0277 55 YY=YY3 CONM0340
PTSSI=(PTSNI-PTSN(N,l))*PSEtPTSS(N,lJ CONM0278 C CONM0341
IF(ABS(PTSSI) .LE.FSY) GO TO 61 CONM0279 C COMPUTE PA, YBAR, PI CONM0342
PTSSI=PTSSI*FSY/ABS(PTSSI) CONM0280 C CONM0343
61 PTSN(N,l)=PTSNI CONM0281 PAP=PA CONM0344
PTSS(N,l)-PTSSI CONM0282 PA-DY*SUMl/3.0+APNI+APNO CONM0345
PTSSO=(PTSNO-PTSN(N,2))*PSE+PTSS(N,2) CONM0283 YBAR={DY*SUM2/3.0+APNI*YTI+APNO*YTO)/PA CONM0346
IF(A8S(PTSSO).LE.FSY) GO TO 62 CONM0264 PI-(DY/3.0) * (SUM3-2.0*YBAR*SUMZ+YBAR*YBAR*SUMI) CONM0347
PTSSO=PTSSO*FSY/ABS(PTSSO) CONM0265 PI=PI+APNI* (YTI-YBAR) **2+APNO* (YTO-YBAR)'*2 CONM0348
62 PTSN(N,2)=PTSNO CONM0266 PAMIN=O.OOOOl*PT CONM0349
PTSS(N,2J=PTSSO CONM0287 PIMIN=O.OOOOl*PT CONM0350
60 PNI=PN CONM026B IF(PA.LT.PAMIN)PA=PAMIN CONM0351
PNO = PN CONM0269 IF(PI.LT.PIMIN)PIapIMIN CONM0352
IF(YTI.GT.Y1 .AND. YTI.LT.Y2) Pi'll PN-1. CONM0290 C CONM0353
1F(YTO.GT.Y1 .AND. YTO.LT.Y2) PNO PN-1 . CONM0291 C CHECK INNER LOOP EXIT CONDITIONS. CONM0354
WSI = 1. 0 CONM0292 C CONM0355
WSO - 1. 0 CONM0293 NTIMES = NTIMES + 1 CONM0356
..- TSNI - STRNI + DENOM*YTI/PT CONM0294 IF(NTIMES.GT.LIMIT) GO TO 50 CONM0357
VI CONM0295 ERR = A8S(PA-PAP)/PT CONM0358
o TSNO = STRNI + DENOM*YTO/PT
IF(NONLIN.LT.3) GO TO 63 CONM0296 IF(ERR.LT.TOLER1) GO TO 50 CONM0359
C CONM0297 GO TO 1 CONM0360
C COMPUTE STRESSES OF STEEL CONM0296 C CONM0361
C CONM0299 C END INNER LOOP. CONM0362
TSSI=(TSN1-PTSN(N,l))*PSE+PTSS(N,l) CONM0300 C CONM0363
TSSO-(TSNO-PTSN(N,2))*PSE+PTSS(N,2) CONM0301 C CONM0364
IF (ABS (TSSI J . LE. FSY) GO TO 64 CONM0302 C COMPUTE CORRECTIONS OF MOMENTS AND THRUSTS FOR NEXT ITERATION CONM0365
TSSI=TSS1*FSY/ABS(TSSI) CONM0303 C CONM0366
64 1F(ABS(TSSO) .LE.FSY) GO TO 65 CONM0304 50 YY=O.O CONM0367
TSSO=TSSO*FSY/ABS(TSSO) CONM0305 CORRM=O.O CONM0368
65 DFSTSI-ABS(TSSI-PTSS(N,l)) CONM0306 CORRN=O.O CONM0369
IF(DFSTSI.GT . O.OOOI .OR. ABS(TSSI) .LT.FSY) GO TO 66 CONM0307 DO 136 I=I,NINTP CONM0370
I'ISI=O.O CONM0306 IRAJP=O CONM0371
GO TO 67 CONM0309 IRAJ=O CONM0372
66 WSI=(TSSI-PTSS(N,1))/(TSNI-PTSN(N,1)) CONM0310 SSM=-ABS(STSHAX(N,I)) CONM0373
WSI=WS1/PSE CONM0311 SNM-STNMAX (N, I) CONM0374
67 DFSTSO=ABS(TSSO-PTSS(N,2)) CONM0312 PSTAIN=PSTRNI(N)+PDENOM*YY/PT CONM0375
IF(DFSTSO.GT.0.0001 .OR. ABS(TSSOJ .LT.FSY) GO TO 68 CONM0313 STAIN=STRNI+DENOM*YY/PT CONM0376
WS<PO.O CONM0314 IF(STAIN.LT.PSTAIN) GO TO 136 CONM0377
GO TO 69 CONM0315 IF(SSM.LT.FYC) GO TO 137 CONM0378
WSo-(TSSO-PTSS(N,2)J/(TSNO-PTSN(N,2)) CONM0316 STESS=(STAIN-SM2)*PCE+FYC CONM0379
68
WSO=WSO/PSE CONM0317 GO TO 138 CONM0380
69 CONTINUE CONM0316 137 STESS=(STAIN-SNM)*PCE+SSM CONM038 1
IF(WSI.LT.O.OOOOOOI) WSI=0.0000001 CONM0319 138 1F(STESS.GT.O.O .AND. STSMAX(N,I) .GT.O.O) lRAJ=1 CONM038Z
IF(WSO.LT.0.0000001) WSO=O.OOOOOOl CONMO 32 0 1F(STESS.GT.FTC) I RAJ= 1 CONM0383
63 CONTINUE CONM0321 PSTESS=(PSTAIN-SNM)*PCE+SSM CONM0384
APN1 = ASI(N)*PNI*WSI CONM0322 IF(PSTESS.GT.FTC) lRAJP=1 CONM0385
APNO = ASO(N)*PNO*WSO CONM0323 IF(PSTESS.GT.O.O .AND. STSMAX(N,I) .GT.O.O) lRAJP=l CONM0386
C CONM0324 IF(IRAJP.EQ.1) GO TO 136 CONM0387
C INTEGRATE BASIC FUNCTIONS CONM0325 IF(IRAJ.EQ . O) GO TO 136 CONM0388
HDY~DY CONM0389 IF(CRWD.LT.O . O) CRWD=O.O CONM0452
If(l.EQ.I) HDY-DY/2.0 CONM0390 GO TO 74 CONM0453
If(I . EQ.NINTP) HDY-DY/2.0 CONM0391 71 CRWD-O . O CONM0454
HYY-YY CONM0392 74 RESULT (17,N)=CRWD CONM0455
IF(I.EQ.I) HYY-HDY CONM0393 C CONM0456
If(I.EQ.NINTP) HYY-YY-DY/2.0 CONM0394 C SAVE INNER AND OUTER STRAINS AND CRACK LENGTH CONM0457
CORRN-PSTESS*HDY+CORRN CONM0395 C CONM0458
CORRM-PSTESS'HDY'(YBAR-HYY)+CORRM CONM0396 RESULT (18,N) = XKD CONM0459
136 YY-YY+DY CONM0397 99 CONTINUE CONM0460
CMOM(N)=CORRM CONM0398 RESULT(19,N) - STRNI CONM0461
CTHR(N)=CORRN CONM0399 RESULT(20,N) STRNO CONM0462
C CHECK fOR CONVERGENCE OF LOAD STEP LOOP . THAT IS, FOR ITERATIONS CONM0400 100 CONTINUE CONM0463
C WITHIN THE LOAD STEP , THE MOMENT AND THRUSTS WILL CONVERGE WHEN CONM0401 C CONM0464
C THE MATERIAL PROPERTIES HAVE CONVERGED . CONM0402 C AVERAGE PIPE PROPERTIES AT ELEMENT CENTERS fOR INPUT TO SOLUTIONS CONM0465
C CONM0403 C CONM0466
ERROR - ABS(YBAR-RESULT(16,N»/PT CONM0404 DO 150 N=I,NPMAT CONM0467
IF(ERROR . GT.TOLER2) ICON = 0 CONM0405 N1 - N+l CONM0468
ERROR - ABS(PA-RESULT(14,N» iPT CONM0406 IF(Nl.GT.NPPT) Nl ~ 1 CONM0469
If(ERROR.GT.TOLER2) ICON= 0 CONM0407 PIPMAT(3,N) 0 . 5*(RESULT(14,N)+RESULT(14,Nl» CONMOnO
If(NOLIT.EQ.O .AND. ABS(CMOM(N» .GT.O.O) ICON=O CONM0408 150 PIPMAT(4,N) - 0 . 5*(RESULT(15,N)+RESULT(15,Nl» CONM0471
IF(NOLIT.EQ.O .AND. ABS(CTHR(N» . GT.O.O) ICON-O CONM0409 C CONM0472
C CONM0410 RETURN CONM0473
C SAVE NEW ESTIMATES OF SECTION PROPERTIES . CONM0411 C CONMOn4
C CONM0412 C" FORMATS CONM0475
RESULT (14, N) PA CONM0413 C CONMOn6
RESULT(15,N) PI CONM0414 END CONMO 47 7
RESULT(16,N) YBAR CONM0415 * * ... ... .. .. .. ... .. .. .. .. ... .,. ... .. ... .. ... .. ... .. * ... It- .. ... .. .. .. ... CONVOOD}
C CONM0416 CANDE-89 (C)ULVERT {AN)ALYSIS AND (DE)SIGN PROGRAM CONV0002
C SAVE STEEL STRESSES CONM0417 VERSION 1.0, MARCH 1990 CONV0003
C CONM041B PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY CONV0004

----
RESULT(10,N) = TSSI CONM0419 THE FEDERAL HIGHWAY ADMINISTRATION CONV0005
... CONY0006
RESULT(ll,N) = TSSO CONM0420 ............. .,.. .... .,.. .... .,.. .... " ........ .,.. .. ft .,.. .,.. tr ..........
Ul
IF(ASI(N) .EQ.O.O) RESULT(IO,N) $ 0 . 0 CONM0421 SUBROUTINE CONVT(Dl,D2) CONV0007
IF(ASO(N) . EQ.O.O) RESULT(ll, N) = 0 . 0 CONM0422 C CONV0008
C CONM0423 C THIS SUBROUTINE EXPRESSES ISOTROPIC PROPERTIES IN ANISOTROPIC FORMCONV0009
C COMPUTE CONCRETE MAX COMPRESSION CONM0424 C CONVOOI0
C CONM0425 Uncomment this statement in all program modules for double CONVOOll
RESULT(12,N) = PCE'STRNEG CONM0426 precision version. SCM 3-10-90 CONV0012
IF(NONLIN.LT.2) GO TO 57 CONM0427 CONV0013
RESULT(12,N)=STSIN CONM0428 IMPLICIT DOUBLE PRECISION (A-H,O-Z) CONV0014
IF(STSIN.GT.STSOU)RESULT(12,N)-STSOU CONM0429 CONVOOt5
IF(RESULT(12,N) .GT.FTC) RESULT(12,N)~FTC CONM0430 COMMON lMATERLI CP{3,3),DEN(10),E(10,10),GNU(10,10),H(10,10), CONV0016
C CONM0431 1 ITYPE(10),NON(10) CONV0017
C COMPUTE MAX SHEAR CONM0432 DO 10 I I, 3 CONV0018
C CONM0433 DO 10 K - I, 3 CONV0019
57 SHAREA- PT-(PT-YTO+YTl)/2.0 CONM0434 10 CP(I,K) = 0.0 CONV0020
RESULT(13,N)~RESULT(7,N)/SHAREA CONM0435 IF(D2 . EQ . 0 . 5)D2~.49S CONV002I
C CONM0436 CP(3,3)-Dl*0 . 5/(1.0+D2) CONV0022
C COMPUTE CRAC WIDTH. BASED ON GERGELY AND LUTZ FORMULA CONM0437 DI-Dl/«1.0+02)'(1 . 0-2.0*D2 » CONV0023
C CONM043B CP(I,2)-D2*D1 CONV0024
TS ~ O . O CONM0439 CP(2,l)-CP{1.2) CONV002 5
TB=O.O CONM0440 Dl~Dl'(1.0-D2) CONV0026
IF(ASI(N) .LE.O.O) GO TO 70 CONM0441 CP(I,l)-Dt CONV0027
IF(TS.GT.TSSI) GO TO 70 CONM0442 CP{2,2)-Dl CONV0028
TS =TSSI CONM0443 RETURN CONV0029
TB~TBI(N) CONM0444 END CONV0030
GO TO 72 CONM0445 .,. .,. .,. .. .. .,. .. .,. * .. .. .. .. .. .. .. .. .,. .. .. .. .. .. .. • .. • • • DUNCOOOI
70 IF(ASO(N) .LE.O.O) GO TO 71 CONM04 4 6 CANDE-89 (C)ULVERT {AN)ALYSIS AND (DE)SIGN PROGRAM DUNC0002
72 IF(ASO(N) .LE.O.O) GO TO 73 CONM04 47 VERSION 1.0, MARCH 1990 DUNC0003
IF(TS.GT.TSSO) GO TO 73 CONM0448 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY DUNC0004
TS=TSSO CONM0449 THE FEDERAL HIGHWAY ADMINISTRATION DUNCOOOS
TB=TBO(N) CONM0450 .. .. .. * .. .. ft .. .. .. .. .. .. .. .. .. .,.. .,.. .. .. .. ft ... .. .,.. • 9 • 9 • DUNC0006
73 CRWD- (.091'1.34'(TS-5000.0)'(2.0*TB'TB*SL ) **0.333)/I000000 . 0 CONM0451 SUBROUTINE DUNCAN{ST,STHARD,NEL,ICON,ITER,MN,NELEM,IA) DUNC0007
C DUNC0008 C DUNC0071
C THIS SUBROUTINE GENERATES AN INCREMENTAL PLANE STRAIN DUNC0009 C FOR FIRST ITERATION OF A NEW ELEMENT ENTERING SYSTEM, DUNC0072
C CONSTITUTIVE MATRIX BASED ON THE HYPERBOLIC SOIL MODEL DUNC0010 C ASSIGN INITIAL GUESS-VALUES DUNC0073
C or DUNCAN DUNCOOll C DUNC0014
C DUNC0012 IF(E1.NE.0.0) GO TO S DUNCOO?S
SELIG HYPERBOLIC BULK MODULUS OPTION ADDED IN 1989 . DUNC0013 POISI ~ VT(MN) DUNC0076
C DUNC0014 IF(POIS1.EQ.0.0) POIS1 = 0.33 DUNC0077
Uncomment this statement in all program modules for double DUNCOOlS S3 - o. l'PATM DUNCOO?8
precision version. SCM 3-10-90 DUNC0016 51 ~ S3*(1.0-POISl)/POISI DUNC0019
DUNC0017 C DUNC0080
IMPLICIT DOUBLE PRECISION (A-H,O-Z) DUNC0018 C RECALL PREVIOSLY CONVERGED PARAMETERS ON SUBSEQUENT ITERATIONS DUNC0081
DUNC0019 C DUNC0082
DIMENSION ST(6,NELEM),STHARD(6,NELEM) DUNC0020 IF(ITER.EQ.1) GO TO 10 DUNC0083
COMMON lMATERLI CP(3,3),DEN(10),E(10,10),GNU(10,10),H(lO,lO), DUNC0021 E1 STHARD(1,NEL) DUNC0084
S ITYPE(10) ,NON(10) DUNC0022 B1 - STHARD(2,NEL) DUNC0085
DUNC0023 C DUNC0086
Add IBULK(10) to COMMON IHYPER/. MGK 9-29-88 DUNC0024 C SET WEIGHTING RATIOS FOR AVERAGING ENEW FROM El AND E2, DUNC0087
DUNC0025 C AND BNEW rROM Bl AND B2 DUNC0088
COMMON IHYPERI C(10),PHIO(10),DPHI(10),ZK(10),ZN(10),RF(10), DUNC0026 C DUNC0089
S VT(10),BK(10),BM(10),RATIO(10),IBULK(10) DUNC0027 10 liTE - O.S DUNC0090
DUNC0028 IF(El.EQ.O.O) WTE RATIO(MN) DUNC0091
Add common statement for output control. SCM 3-18-89 DUNC0029 C DUNC0092
DUNC0030 WTP = O.S DUNC0093
COMMON 10UTPUTI IWRT,IPLOT,MAXIT,JCON DUNC0031 IF(El.EQ.O.O) WTP RATIO(MN) DUNC0094
DUNC0032 C DUNC009s
DATA TOLER,PATM 10.05,14.11 DUNC0033 C SET LOWER LIMIT FOR S3PA DUNC0096
C DUNC0034 C DUNC0097
C STHARD(l,NEL)~TANGENT YOUNG'S MODULUS OF PREVIOUS LOAD STEP DUNC003S S3PA=S3/PATM DUNC0098
C DUNC0036 IF(S3PA.LT.0.l) S3PA=0.1 DUNC0099
C DUNC0037 C DUNC0100
STHARD(2,NEL)~TANGENT BULK MODULUS OF PREVIOUS LOAD STEP DUNC0038 C TENSION FAILURE CHECK DUNCOI0l
...... C
C DUNC0039 C DUNCOI02
VI IF(Sl.GT.O.O) GO TO 20 DUNCOI03
tv STHARD (4, NEL) Convergence flag. SCM 3-11-89 DUNC0040
-1.0 (Not converged) DUNC0041 E2=0.0025*ZK(MN)*PATM*S3PA**ZN(MN) DUNCOI04
1. 0 (Converged) DUNC0042 POIS=0.40 DUNCOIOS
C DUNC0043 IF(VT(MN) .GT.O.O) POIS-VT(MN) DUNC0106
C STHARD(5,NEL)~TANGENT YOUNG'S MODULUS OF LAST ITERATION DUNC0044 B2-E2/(3.0-6.0*POIS) DUNCOI0?
C DUNC0045 E2P=STHARD(5,NEL) DUNCOI08
C DUNC0046 ETCHEK=(E2-E2P)/E2 DUNCOI09
C STHARD(6,NEL)~TANGENT BULK MODULUS OF LAST ITERATION DUNC0047 STHARD(5,NEL)-E2 DUNCOllO
C DUNC0048 STHARD(6,NEL)-82 DUNCOlll
C DUNC0049 GO TO 30 DUNC0112
C RECOVER CURRENT STRESSES AND CONVERT TO PRINCIPAL DUNC0050 20 CONTINUE DUNCO 11 3
C DUNCOOS1 c DUNCO 11 4
SXX ~ -ST(4,NEL) DUNCOOS2 C COMPUTE YOUNGS TANGENT MODULUS E2, THEN ETNEW DUNCOl1s
SYY ~ -ST(s,NEL) DUNCOOS3 C DUNCOll6
SXY = ST(6,NEL) DUNCOOS4 XS3-PATM*S3PA DUNCOlll
C DUNC0055 DUNC01l8
CENTR = (SXX + SYY)/2.0 DUNC0056 Revise intrinsic function to generic. form. SCM 3-10-90 DUNC01l9
RADIUS ~ SQRT(SXY**2 + ((SXX - SYY)/2.0)**2) DUNC0057 DUNC0120
Sl - CENTR + RADIUS DUNCOOS8 PHI PHIO(MN) - DPHI(MN) * LOG10(S3PA) DUNC0121
53 ~ CENTR - RADIUS DUNC0059 DUNC0122
C DUNC0060 RFF - RF(MN) * (1.0 - SIN(PHI»I DUNC0123
C ON FIRST ITERATION OF EACH STEP UPDATE PARAMETERS DUNC0061 1 (2.0 * C(MN) * COS(PHI) + 2.0 * XSJ * SIN(PHI» DUNC0124
C DUNC0062 DEV = RFF • (Sl - S3) DUNC0125
IF(ITER.NE.l) GO TO DUNC0063 IF (DEV.LT.O.O) DEV = 0.0 DUNC0126
E2 = STHARD(5,NEL) DUNC0064 IF(DEV.GT.0.9S) DEV = 0.95 DUNC0127
El - E2 DUNC006S EINIT = ZK(MN) * PATH * S3PA**ZN(MN) DUNC0128
STHARD(I,NEL) = El DUNC0066 E2 = (1.0 - DEV)**2*EINIT DUNC0129
C DUNC0067 E2A~E2/3.0 DUNC0130
B2-STHARD(6,NEL) DUNC0068 E2B=E2*8.0 DUNC0131
Bl=B2 DUNC0069 C DUNC0132
STHARD(2,NEL)=B1 DUNC0070 C USE UNDER RELAXATION FOR E2 WHEN ITER .GT . 2 DUNC0133
c DUNC0134 DUNC0197
EZP STHARD(5,NEL) DUNC0135 IF(ITER.GT.2) B2 0.50*B2 + 0.50*B2P DUNCOl98
DUNC0136 DUNCOl99
Revise relaxation function. SCM 1-15-89 DUNC0l37 IF(ITER.GT.Z) BZ = BZ**Z/(B2+B2P) + B2P**2/(BZ+B2P) DUNCOZOO
DUNC0138 IF(ITER.GT.Z .AND. IBULK(MN) .EQ.1) BZ=0.5*B2+0.S*BZP DUNCOZ01
IF(ITER.GT.Z) EZ O.50*EZ + O.50*EZP DUNC0139 DUNC0202
DUNC0140 C DUNC0203
IF(ITER.GT.Z) EZ = EZ**Z/(EZ+EZP) + EZP**Z/(E2+E2P) DUNCOl41 C DUNC0204
IF(ITER.GT.2 .AND. IBULK(MN) .EQ.l) E2=O.5*E2+0.5*E2P DUNC014Z STHARD(6,NEL) B2 DUNCOZ05
DUNCOl43 C DUNC0206
C DUNC0144 C AVERAGE LOAD STEP MODULI DUNC0207
C DUNC0145 C DUNC0208
STHARD(5,NEL) = E2 DUNC0146 30 ETNEW=(1.0-WTE)*E1+WTE*EZ DUNCOZ09
ETCHEK = (E2 -E2P)/E2 DUNC0147 IF(VT(MN).GT.O.O) GO TO 40 DUNC02l0
DUNC0148 BNEW=(1.0-WTP)*B1+WTP*B2 DUNC0211
•• **********************************************************************DUNC0149 C DUNC021Z
Replace algorithm for calculation of tangent DUNC0150 C FIND EQUIVALENT POISSON'S RATIO DUNC02l3
bulk modulus with option for hyperbolic form. DUNC0151 C DUNC0214
MGK 9-29-88 DUNC0152 PNEW=(3.0*BNEW-ETNEW)/(6.0*BNEW) DUNC02l5
C DUNC0153 IF(PNEW.LT.O.O) PNEW=O.O DUNC0216
C COMPUTE TANGENT BULK MODULUS B2 IF VT=O DUNC0154 IF(PNEW.GT.0.48) PNEW=0.48 DUNC02l7
C DUNC0155 GO TO 50 DUNCOZl8
IF(VT(MN).GT.O.O) GO TO 30 DUNC0156 C DUNCOZl9
B2=BK(MN)*PATM*S3PA**BM(MN) DUNC0157 C CHECK FOR CONVERGENCE (ASSUME B2 CONVERGES WHEN E2 DOES) DUNC0220
IF(B2.LT.E2A) B2=E2A DUNC0158 C DUNC0221
IF(B2.GT.E2B) B2=E2B DUNC0159 40 PNEW=VT(MN) DUNCOZ22
DUNC0160 8NEW=ETNEW/(3.0-6.0*PNEW) DUNC02Z3
IF POISSONS RATIO 0, COMPUTE TANGENT BULK MODULUS, B2 DUNC0161 DUNC0224
DUNC0162 Revise logic to force iteration if arbitrary elemen~ has not DUNC0225
IF (VT(MN) .GT. 0.0) KTYPE = 3 DUNC0163 converged. SCM 3-10-89 DUNC0226
IF (VT(MN) .GT. 0.0) GO TO 30 DUNC0164 DUNC0227
....... DUNC0165 50 IF(ABS(ETCHEK) .GT.TOLER) ICON 0 DUNC0228
Vl
Vol IF IBULK = 0, COMPUTE B2 BY POWER LAW DUNC0166 DUNC0229
DUNC0167 50 IF(ABS(ETCHEK).GT.TOLER) THEN DUNC0230
IF (IBULK(MN) .NE. 0) GO TO 25 DUNC0168 STHARD(4,NEL) = -1.0 DUNC0231
KTYPE = 1 DUNC0169 ELSE DUNC023Z
B2 = BK(MN)*PATM*S3PA**BM(MN) DUNC0l70 STHARD(4,NEL) 1.0 DUNC0233
GO TO 28 DUNCOl71 END IF DUNC0234
DUNCOl72 DO 55, NNEL=l,NELEM DUNC0235
IF IBULK > 0, DETERMINE MEAN STRESS AND COMPUTE B2 DUNC0173 IF(STHARD(4,NNEL) .LT.O.O) ICON DUNC0236
BY HYPERBOLIC LAW DUNC0l74 55 CONTINUE DUNC0237
DUNC0l75 DUNC0238
25 KTYPE = 2 DUNC0176 IF(ITER.EQ.1) ICON = 0 DUNC0239
B2P = STHARD(6,NEL) DUNCOl77 JCON = ICON DUNC0240
IF (BZP .EQ. 0.0) B2P = BK(MN)*PATM DUNC0178 IF(IABS(NON(MN)) .GT.MAXIT) MAXIT = IABS(NON(MN)) DUNC0241
E2P = STHARD(5,NEL) DUNC0179 IF(ITER.GE.IABS(NON(MN))) ICON = 1 DUNC0242
POISX = 0.5 - E2P/(6.0*B2P) DUNC0180 DUNC0243
SM = (1.0 + POISX)*(Sl+S3)/3.0 DUNC0181 Calculate stress level. MGK 2-16-89 DUNC0244
B2 = BK(MN)*PATM*(1.0 + SM/(BK(MN)*PATM*BM(MN)))**2 DUNC0182 DUNC0245
DUNC0183 SLEV < -1.0; Tension failure, (Complete) DUNC0246
SET LIMITS ON B2 SO THAT THE NEXT POISSON RATIO REMAINS DUNC0184 DUNC0247
BOUNDED BETWEEN 0.0 AND 0.48 DUNC018S SLEV > 1.0; Shear failure DUNC0248
DUNC0186 DUNC0249
28 IF (B2 .LT. E2A) B2 E2A DUNC0187 IF(Sl.LT.O.O) SLEV = -1 . 0 + Sl DUNC0250
IF (B2 .GT. E2B) B2 E2B DUNC0188 IF(Sl.LT.O.O) GO TO 60 DUNC0251
~**~************************************************** ******************DUNC0189 SHEAR = RF(MN)/RFF DUNC0252
DUNC0190 SLEV = (Sl-S3)/SHEAR DUNC0253
C DUNC0191 60 CONTINUE DUNC0254
C USE UNDER RELAXATION FOR B2 WHEN ITER .GT. 2 DUNC0192 DUNC0255
C DUNC0193 C DUNCOZ56
B2P STHARD(6,NEL) DUNC0194 C CONVERT TO PLANE STRAIN MATERIAL MATRIX DUNCOZ57
DUNC0195 C DUNC0258
Revise relaxation function. SCM 1-15-89 DUNC0196 CHOD ETNEW DUNCOZ59
CALL CONVT(CI-IOD,PNEW) DUNC0260 C RESULT(17,N) - MAX BENDING STRESS ABOVE YIELD EMOD002l
DUNC0261 C RESULT(18,N) MAXIMUM FIBER STRAINI YIELD STRAIN EMOD0022
MATNO MN DUNC0262 C RESULT(19,N) - MOMENT INCREMENT, OR CURRENT INNER STRAIN EMOD0023
DUNC0263 C RESULT(20,N) THRUST INCREMENT, OR CURRENT OUTER STRAIN EMOD0024
C DUNC0264 C PSTRNI(N) INNER WALL STRAIN OF PREVIOUS CONVERGED STEP EMOD0025
C PRINT-OUT RECORD 0, NONLINEAR I-IODULI (NON(MN) .LT.O) DUNC0265 C PSTRNO(N) OUTER WALL STRAIN OF PREVIOUS CONVERGED STEP EMOD0026
C DUNC0266 C YEPR(l,N) DISTANCE TO BOTTOM OF ELASTIC ZONE (PRE. CON. STEP)EMOD0027
Revise unit numbers, variables and formats for soil modulus DUNC0267 C YEPR(2,N) DISTANCE TO TOP OF ELASTIC ZONE (PRE. CON. STEP) EMOD0028
output. SCI-I 1-9-89 DUNC0268 C EMOD0029
DUNC0269 Uncomment this statement in all program modules for double EM000030
IF(IWRT.LE.1) GO TO 100 DUNC0270 precision version. SCM 3-10-90 EMOD003l
IF(ITXX.NE.ITER) WRITE(16,6000) IA,ITER DUNC0271 EMOD0032
IF(ITXX.NE.ITER) WRITE(16,6020) DUNC0272 IMPLICIT DOUBLE PRECISION (A-H,O-Z) EMOD0033
DUNC0273 EMOD0034
ITXX = ITER DUNC0274 Add XMOMPR and DELNM arrays to dimension statement. EM000035
DUNC0275 MGK 2-19-89 EMOD0036
WRITE(16,6030) NEL,MATNO,KTYPE,JCON,ETCHEK,SLEV, DUNC0276 EMOD0037
X ETNEW, BNEW, PNEW, CMOD DUNC0277 Revise dimensions of PSTRNI, PSTRNO, YEPR, YMOMPR and DELNM EMOD0036
DUNC0278 arrays from 30 to 99. SCM 4-30-89 EM000039
100 CONTINUE DUNC0279 EMOD0040
RETURN DUNC0280 DIMENSION PIPMAT(5,NPMAT) ,RESULT (20,NPPT) ,PSTRNI (99) ,PSTRNO(99) , EMOD0041
C DUNC0281 X YEPR(4,99),XMOMPR(99),DELNM(99) EMOD0042
C FORMATS DUNC0282 EMOD0043
C DUNC0283 DATA LIMIT,TOLER/lO,O.OSI EMOD0044
DUNC0284 GO TO (1,1,200),ICOME EMOD0045
6000 FORMAT(lHl,II,6X,23HCONSTRUCTION INCREMENT ,I2,5X, DUNC0285 C EMOD0046
X 10HITERATION ,12) DUNC0286 C ON FIRST ITERATION OF FIRST LOAD STEP, COMPUTE CONSTANTS EMOD0047
6020 FORMAT(lHO,15x, 47H' •• ELASTIC MODULI AND CONVERGENCE PARAMETERS, DUNC0287 C EMOD0048
X28H FOR DUNCAN SUBROUTINE' , ',I DUNC0288 1 IF(IA.GT.l) GO TO 10 EMOD0049
X22X,69H(CONVERGENCE ERRORS (ERROR-EMOD) ARE RATIOS GIVEN BY, (NEW-DUNC0289 IF(ICON . GT . l) GO TO 10 EMOD0050
XOLD)/NEW),I DUNC0290 POlS l.-PNU'PNU EMOD0051
.- X22X,42HK-TYPE = 1 DUNCAN POWER LAW BULK MODULUS, DUNC0291 PSE1 = PE1/POIS EMOD0052
v-. X10X,45HSTRESS-LEV <= -1.0 ; COMPLETE TENSION ,AlLURE, I DUNC0292 PSE2 = PE2IPOIS EMOD0053
~ EMOD0054
X22X,42HK-TYPE = 2 ; SELIG HYPERBOLIC BULK MODULUS, DUNC0293 IF(PSE2.EQ.0 . 0) PSE2 PSEll (1.E+10)
XlOX, 34HSTRESS-LEV >= +1.0 ; SHEAR FAILURE,I DUNC0294 RATIO - PSE2/PSE1 EMOD0055
X22X,37HK-TYPE = 3 ; CONSTANT POISSON'S RATIO,II DUNC0295 EPSY PYIELD/PSEI EMOD0056
X3X,5HELE-N,4X,5HMAT-N,4X,6HK-TYPE,4X,4HICON,4X, DUNC0296 YTOP = 2.0'PI/PS EMOD0057
XlOHERROR-EMOD,4X,10HSTRESS-LEV,4X,10HYOUNGS-MOD,6X,BHBULK-MOD, DUNC0297 C EMOD0058
X4X,10HPOIS-RATIO,4X,12HCONFINED-MOD,II) DUNC0298 C INITIALIZE PREVIOUS CONVERGED STEP RESPONSES EMODOOS9
6030 FORMAT(3X,I4,5X,I4,7X,I2,7X,I2,5X,F10.4,4X,F10.4,2X,E12.5, DUNC0299 C EMOD0060
X 2X,E12.5,7X,F5.3,6X,E12.5) DUNC0300 DO 5 N=l, NPPT EMOD0061
DUNC0301 EMOD0062
END DUNC0302 Initialize new array XMOMPR. MGK 2-19-89 EMOD0063
. * * ** ** .. '*. ** *~ . * * * * * * . * ** ** ...... EI-IODOOOI
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM EI-IOD0002 XMOMPR(N) 0.0
EMOD0064
EMOD0065
VERSION 1.0, MARCH 1990 mOD0003 EMOD0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY mOD0004 YEPR(l,N) 0.0 EMOD0067
THE FEDERAL HIGHWAY ADMINISTRATION EI-IOD0005 YEPR(2,N) YTOP EMOD0068
_ ... * . * * * * * * * * * * * * * * * * " , * * ... * * * * * * mOD0006 PSTRNI(N) = 0.0 EMOD0069
SUBROUTINE EMOD (IA,ICON,NPMAT,NPPT,PA,PEl,PE2,PESUM,PI, EI-IOD0007 5 PSTRNO(N) 0.0 EMOD0070
1 PIPMAT,PNU,PS,PYIELD,RESULT,ICOME) EI-IOD0008 C EMOD0071
EI-IOD0009 C BEGIN OUTER LOOP ITERATION FOR MCMENT AND THRUST CONVERGENCE EMOD0072
C
THIS ROUTINE DETERMINES NONLINEAR BENDING PROPERTIES FOR A EI-IOD0010 C EMOD0073
C
HOMOGENOUS MATERIAL WITH A BILINEAR STREES-STRAIN CURVE. THE EI-IOD0011 10 ERRSUM = 0.0 EMOD0074
C
C FOLLOWING RESULT MATRIX IS IDENTIFIED ... EI-IOD0012 DO 100 N-1,NPPT EMOD0075
EI-IOD0013 PASTAR = RESULT(14,N) EMOD0076
C
C RESULT(lO,N) BENDING STRESS IN OUTER FIBER EI-IOD0014 PISTAR = RESULT(lS,N) EMOD0077
C RESULT (11, N) THRUST STRESS (AVERAGE OVER SECTION) EI-IOD0015 YBAR = RESULT(16,N) EMOD0078
C RESULT(12,N) SHEAR STRESS (AVERAGE OVER SECTION) EI-IOD0016 DELM - RESULT(19,N) EMOD0079
C RESULT(13,N) - FRACTION OF SECTION YIELDED EI-IOD0017 DELN - RESULT(20,N) EMOD0080
C RESULT (14, N) MODIFIED THRUST AREA (PASTAR) EMOD0018 PDENOM = PSTRNO(N)-PSTRNI(N) EMOD0081
C RESULT(15,N) MODIFIED MOMENT OF INERTIA (PISTAR) EI-IOD0019 YTI YEPR(l, N) EMOD0082
RESULT (16, N) DISTANCE TO BENDING AXIS (YBAR) EMOD0020 YT2 - YEPR(2,N) £MOD0083
C
YEI = YTl EMOD0084 WTl - (EPSY-EPMINI + RATIO*(EPMAXI-EPSY))/DIFFI EMOD0147
YE2 - YT2 EMODOOSS END IF EMOD0148
NTIMES - 0 EMOD0086 EMOD0149
EMODOOB7 IF(WTl.LT.O.O) WTl = 0.0 EMODOI50
Revise moment summation logic. MGK 2-19-89 EMOD0088 IF(WTl.GT.l.O) WTl 1.0 EMODOI5I
EMOD0089 C EMOD0152
DELNM(N) ~ DELN*(YTOP/2.0 - YBAR) EMOD0090 YAVG2 = (YE2+YT2)/2.0 EMODOI53
RESULT(S,N) ~ RESULT(S,N) + XMOMPR(N) + DELNM(N) EMOD0091 EPMAX2 - ABS(STANITDENOM*YAVG2/YTOP) EMODOl54
EM000092 EPMIN2 = ABS(PSTRNI(N)+PDENOM*YAVG2/YTOP) EMODOl55
C EMOD0093 DIFF2 - ABS(EPMAX2-EPMIN2) EMODOI56
C BEGIN INNER LOOP FOR DETERMINING PASTAR,PISTAR AND YBAR BASED ON EMOD0094 EMOD0157
C CURRENT ASSUMED VALUES Of MotlENT AND THRUST. EMOD0095 Add logic to avoid division by zero. SCM 12-14-89 EMODOI58
C (FIRST DTERMINE TOTAL STRAIN DISTRIBUTION) EMOD0096 EMODOI59
C EMOD0097 IF(DIF'2.EO.0.0) THEN EMODO 16 0
20 THETA = DELM/(PISTAR*PSE1) EMOD0098 WT2 = 0.0 EMODOI6I
STNORM = DELN/(PASTAR*PSEl) EMOD0099 ELSE EMODOl62
STRNI = STNORM + THETA*YBAR + PSTRNI(N) EMOD0100 WT2 D (EPSY-EPMIN2+RATIO*(EPMAX2-EPSY»)/DIFF2 EMODOI63
STRNO = STNORM + THETA*(YBAR-YTOP) + PSTRNO(N) EMODOIOI END IF EMODOI64
DENOM ~ STANO-STANI EMODOI02 EMOD0165
If(DELM . EO.O.O .AND. DELN.EO.O.O) GO TO 60 EMODOI03 IF(WT2.LT.0.0) WT2 - 0 .0 EMOD0166
C EMODOl04 IF(WT2.GT.l.0) WT2 1. 0 EMOD0167
C COMPUTE CURRENT ELASTIC ZONE DEFINED BY YEI AND YE2 . EMODOI05 C EMOD0168
C EMODOI06 C DETERMINE PAS TAR BASED ON CONTRIBUTIONS FROM ELASTIC ZONE, EMODOI69
IF(DENOM.EO.O.O) DENOM ~ O.OOOOOl*STNORM EMODOI07 C TRANSITION ZONES AND YIELDING ZONES. EMOD0l70
YE2 = YTOP*(EPSY-STRNI)/DENOM EMODOI08 C EMODOI71
YEI = YTOP*(-EPSY-STRNI)/DENOM EMODOI09 PAPR= PASTAR EMODOl72
IF(YE2.GT.YEl) GO TO 25 EMODO 11 0 PASTAR - (YE2-YEl) + RATIO*(YTOP-YT2+YTl) EMOD0l73
TEMP = YEI EMODOlll PASTAR D PAS TAR + WTl*(YE1-YTl) + WT2*(YT2-YE2) EMOD0l74
YE1 = YE2 EMOD01l2 PASTAR = PASTAR*PA/YTOP EMOD0l75
YE2 - TEMP EMOD01l3 C EMOD0l76
25 CONTINUE EMOD01l4 C DETERMINE YBAR FROM ALL ZONE CONTRIBUTIONS. EMOD0l77
....... IF(YEl.GT.YTOP) YEI = YTOP EMOD01l5 C EMOD0l78
VI
VI IF(YE2.GT.YTOP) YE2 = YTOP EMOD01l6 IF(PASTAR.LE.O.O) GO TO 40 EMOD0l79
IF(YEl.LT.O.O) YEI 0.0 EMOD01l7 YBAR - (YE2**2-YEI**2) + RATIO* (YTOP**2-YT2'*2 + YTI**2) EMOD0180
IF(YE2.LT.0.0) YE2 = 0.0 EMODO 11 8 YBAR YBAR + WT1*(YEl**2-YTl**2) + WT2*(YT2**2-YE2**2) EMODOl81
C EMOD01l9 YBAR YBAR*PA/ (2. *YTOP*PASTAR) EMOD0182
C COMPARE SIZE OF PREVIOUS ELASTIC ZONE WITH CURRENT ELASTIC ZONE. EMOD0120 C EMODOI83
C IF NEW ZONE IS NOT SMALLER ASSUME ELASTIC RESPONSE. EMOD0121 C DETERMINE PISTAR FROM ALL ZONE CONTRIBUTIONS EMOD0184
C ( NOTE THIS ALSO IMPLIES ELASTIC UNLOADING) EMODOl22 C EMOD0185
C EMOD0123 YEBI ~ (YEI-YBAR)**3 EMODOl86
IF(YT2-YTI .GE. YE2-YE1) GO TO 30 EMODOl24 YEB2 (YE2-YBAR) **3 EMOD0187
If (YT2-YTl .EO. 0.0) GO TO 30 EMODOl2S YTBl - (YTI-YBAR)**3 EMOD0188
PASTAR = PA EMODOl26 YTB2 (YT2-YBAR)"3 EMODOI89
YBAR D YTOP/2. EMOD0127 YTOPB - (YTOP-YBAR)**3 EMOD0190
PISTAR - PI EMOD0128 PISTAR ~ (YEB2-YEB1) + RATIO*(YTOPB-YTB2+YTBI+ YBAR*'3) EMOD019I
YE2 - YTOP EMOD0129 PISTAR = PISTAR + WTl'(YEBI-YTBl) + WT2*(YTB2-YEB2) EMODOI92
YEI = 0.0 EMOD0130 PISTAR ~ PISTAR*PA/ (3. *YTOP) EMODOI93
GO TO 50 EMOD0l31 C EMOD0194
C EMOD0l32 C PROPERTIES FOR COMPLETE PLASTIC ZONE WHEN PASTAR - 0.0 E:MODOI95
C DETERMINE UPPER AND LOWER TRANSITION ZONE WEIGHTING FACTORS EMOD0l33 C EMOD0196
C EMODOl34 GO TO 45 EMODOI97
30 IF(YT2.LT.YE2) YT2 = YE2 EMODOl35 40 PASTAR - PA*RATIO EMOD0198
IF(YTl.GT.YEI) YT1 = YEI EMOD0136 YEAR = YTOPI2.0 EMODOI99
YAVGl ~ (YTl+YEl) /2.0 EMOD0137 PISTAR - PI*RATIO EMOD0200
EPMAXI = ABS(STRNI+DENOM*YAVGl/YTOP) EMOD0138 45 CONTINUE EMOD020I
EPMINI = ABS (PSTRNI (N) + PDENOM*YAVGl/YTOP) EMOD0139 C EMOD0202
DlfFl = ABS(EPMAXI-EPMINl) EMOD0140 C CHECK INNER LOOP EXIT CONDITIONS EMOD0203
EMOD0141 C EMOD0204
Add logic to avoid division by zero. SCM 12-14-89 EMOD0142 NTIMES = NTIMES + 1 EMOD0205
EMODOl43 IF (NTIMES .GT. 10) GO TO 50 EMOD0206
IF(DIFFl.EO.O.O) THEN EMOD0144 ERR = ABS(PASTAR-PAPR)/PASTAR EMOD0207
IITl - 0.0 EMOD0l45 IF(ERR.LT.TOLER) GO TO 50 EMOD0208
ELSE EMOD0146 GO TO 20 EMOD0209
C EMOD0210 C EMOD0273
C END INNER LOOP EMOD0211 C SECOND ENTRY, SAVE CONVERGED STRAINS AND ELASTIC ZONE MEASURES EMOD0274
C EMOD0212 C EMOD0275
C SUM ERROR BETWEEN SUCCESSIVE SOLUTIONS, THAT IS, FOR ITERATIONS EMOD0213 200 DO 115 N=l,NPPT EMOD0276
C WITHIN A LOAD STEP, MOMENT AND THRUST WILL CONVERGE WITH YBAR. EMOD0214 EMOD0211
C EMOD0215 Save accumulated moment correction. MGK 2-19-89 EMOD0278
50 ERROR - ABS(PASTAR-RESULT(14,N))/PASTAR EMOD0216 EMOD0219
ERRSUM ~ ERRSUM + ERROR EMOD0211 XMOMPR(N) XMOMPR(N) + DELNM(N) EMOD0280
C EMOD0218 EMOD0281
C SAVE NEW ESTIMATES OF SECTION PROPERTIES EMOD0219 PSTRNI(N) RESULT(19,N) EMOD0282
C EMOD0220 PSTRNO(N) ~ RESULT(20,N) EMOD0283
60 RESULT(14,N) PASTAR EMOD0221 YEPR(l,N) YEPR(3,N) EMOD0284
RESULT(15,N) PISTAR EMOD0222 115 YEPR(2,N) YEPR(4,N) EMOD0285
RESULT(16,N) YBAR EMOD0223 C EMOD0286
RESULT(19,N) STRNI EMOD0224 C RETURN TO PIPE SUBROUTINE EMOD0287
RESULT(20,N) STRNO EMOD0225 C EMOD0288
YEPR(3,N) ~ YE1 EMOD0226 RETURN EMOD0289
YEPR(4,N) = YE2 EMOD0221 C EMOD0290
C EMOD0228 EMOD0291
C COMPUTE NONLINEAR CHARACTERISTICS (PRINTED OUT ON CONVERGENCE) EMOD0229 Revise wording of message to include "PIPE WALL" to avoid EMOD0292
C (I) FRACTION OF SECTION YIELDED EMOD0230 confusion with other nonlinear models. SCM 3-18-89 EMOD0293
C (21 BENDING STRESS ABOVE YIELD STRESS (AVERAGE) EMOD0231 EMOD0294
C (3) MAXIMUM FIBER STRAIN/YIELD STRAIN EMOD0232 6500 FORMAT(lHl,111158(2H *)111112H NONLINEAR PIPE WALL MODULUS DID NOTEMOD0295
C EMOD0233 X CONVERGE, SOLUTION WILL CONTINUE WITH A RATIO OF ERROR IN THE MODEMOD0296
ELAST = (YE2-YEl)/YTOP EMOD0234 XULU5 OF ,E15.511161H IF ERROR RATIO IS LE5S THAN 0.1, SOLUTIONEMOD0291
IF(ELAST.GT.0.999) ELAST 1.0 EMOD023S X MAY BE ACCEPTABLE 11158(2H *)) EMOD0298
RESULT(13,N) = 1.-ELAST EMOD0236 END EMOD0299
C EMOD0237 * • * * * • * + * • * * * * * * ESTBOOOl
RESULT(11,N) = 0.0 EMOD0238 CANDE-89 (ClULVERT (AN)ALY5IS AND (DE)SIGN PROGRAM E5TB0002
DSTRN = O.S*ABS(STRNO-STRNI)-EPSY EMOD0239 VERSION 1. 0, MARCH 1990 ESTB0003
IF(DSTRN.GT.O.O) RESULT(17,N) - DSTRN*PSE2 EMOD0240 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY ESTB0004
........ C EMOD0241 THE FEDERAL HIGHWAY ADMINISTRATION E5TB0005
Vl EMOD0242 * • * • • * • • • * • • * • * * * • * * • • * * * • * • * * ESTB0006
0\ Revise intrinsic function to generic form. SCM 3-10-90
EMOD0243 SUBROUTINE ESTAB ESTB0001
STNMAX = MAX(ABS(STRNI),ABS(STRNO)) EMOD0244 C ESTB0008
EMOD0245 C TRANSFORMATION RELATIONSHIPS BETWEEN ELEMENT AND SUB-ELEMENT ESTB0009
RESULT(18,N) STNMAX/EPSY EMOD0246 C UNKNOWNS ESTABLISHED E5TB0010
C EMOD0241 ESTB0011
100 CONTINUE EMOD0248 Uncomrnent this statement in all program modules for double ESTB0012
EMOD0249 precision version. SCM 3-10-90 ESTB0013
C
C CHECK ON OUTER LOOP CONVERGENCE EMOD0250 ESTB0014
C EMOD02S1 IMPLICIT DOUBLE PRECISION (A-H,O-Z) ESTB0015
IF (ERRSUM.LT.TOLER) ICON= -1 EMOD02S2 E5TB0016
IF(ICON.GT.LIMIT) WRITE(6,6500) ERRSUM EMOD02S3 COMMON IELEMNTI AS(3),BS(3),Cl(17,11l,EST(4,3l,RQ(4),RT(3l, ESTB0017
IFIICON.GT.LIMIT .AND. ERRSUM.LE.O.l) ICON = -1 EMOD02S4 1 STORE(11), Z4 (12), ZQ(4), ZT(3), ZY(17), Jl,RO ESTB0018
IFIICON.GT.LIMIT .AND. ERRSUM.GT . 0.1) ICON=-2 EMOD025S COMMON IESTABLI ITRW(28,2l,NETCL(11,2),T(28,2) ESTB0019
EMOD02S6 DO 55 1=1,2 ESTB0020
C
C AVERAGE PIPE PROPERTIES AT ELEMENT CENTERS FOR INPUT TO NEXT EMOD025? DO 50 J=l,28 ESTB0021
C SOLUTION AND GET EFFECTIVE MODULUS FOR BUCKLING THEORY EMOD0258 ITRWIJ,I)~l ESTB0022
EMOD0259 50 T(J,I)=1.0 ESTB0023
C
PESUM = 0.0 EMOD0260 DO 55 J=l,l1 EST80024
DO 150 N~l, NPMAT EMOD0261 55 NETCL(J,I)=l ESTB0025
Nl = N+l EMOD0262 DO 57 I~l,3 E5TB0026
IF(N1.GT.NPPT) Nl = 1 EMOD0263 ITRW(I+ 8,1)-1+6 E5TB0021
PIPMAT(3,N) = 0.S*IRESULT(14,N)+RESULT(14,Nl)) EMOD0264 ITRW(I+12,l)=I+9 ESTB0028
PIPMAT(4,N) = 0.S*(RESULT(lS,N)+RESULT(15,Nl)) EMOD0265 ITRW(I+18,l)~I+6 E5TB0029
150 PESUM ~ PESUM + PIPMAT(4,N) EMOD0266 ITRW(I+21,ll=I+9 EST80030
XMAT = NPMAT EMOD0267 ITRW(I+24,l)=I+6 ESTB0031
PESUM = PESUM*PEl/(XMAT*PI) EMOD0268 ITRW(I+ 9,2)=1+6 ESTB0032
EMOD0269 ITRW(I+13,2)=I+9 EST80033
C
C RETURN TO PIPE ROUTINE EMOD0210 ITRW(I+19,2)-I+9 ESTB0034
EMOD0211 ITRWII+22,2)=I+6 ESTB0035
C
EMOD0212 57 ITRW(I+25,2l=I+9 E5TB0036
RETURN
NETCL( 9,1)=3 ESTB0037 DO 20 NE = l,MAXEL GENL0030
NETCL (11,1) =3 EST80038 20 LGEN(1,NE) = 0 GENL0031
NETCL(15,1)=6 EST80039 40 IF (LIMIT . EQ. L1H) RETURN GENL0032
NETCL(16,l)=3 E5T80040 READ (LUPREP,S015) LIMIT, NE, (IX(K), K = 1,7), KINDLG GENL0033
NETCL (10, 2 ) =3 ESTB0041 IF (NE . LE. NUMEL .OR . NE .GT. MAXEL) GO TO 520 GENL0034
NETCL (12,2) =3 ESTB0042 IF (NUMEL .EQ. 0 .AND. (NE .NE. 1 .OR . IX(l) .EQ. 0)) GO TO 540 GENL0035
NETCL(16,2)=3 ESTB0043 C GENL0036
NETCL(17,2)-6 ESTBOOH C" STORE DATA RELATING TO MATERIAL OR INCREMENT CHANGES GENL0037
ITRW (2,1) =4 ESTB0045 C GENL0038
ITRW(3,1) =2 EST80046 IF (IX(l) .NE. 0) GO TO 60 GENL0039
ITRW(4,l) =5 ESTB0047 LGEN(l,NE) = NE GENL0040
ITRW(7,l) - 3 ESTB0048 LGEN(2,NE) = IX(S) GENL0041
ITRW(B,1)=6 EST80049 LGEN(3,NE) = IX(6) GENL0042
ITRW(17,l)-7 EST800S0 LGEN(4,NE) = IX(7) GENL0043
ITRW (lB, 1) - 10 ESTBOOS1 IF (LIMIT .EQ. L1H) GO TO 560 GENL0044
T(5,1)-0.0 ESTBOOS2 GO TO 40 GENL0045
T(6,1)=0 . 0 E5TB0053 C GENL0046
T(12,1)=0 . 0 ESTBOOS4 C" SETUP PARAMETERS FOR ELEMENT GENERATION GENL0047
T(16,l) -0. 0 ESTB0055 C GENL0048
T(28,1)=0.0 ESTBOOS6 60 INTRAL KINDLG(1) GENL0049
ITRW(3,2) =2 ESTBOOS7 NUMLAY - KINDLG(2) GENL0050
ITRW(4,2) =S ESTBOOS8 INTERL KINDLG(3) GENLOOSl
ITRW(5,2)-3 ESTBOOS9 IF (INTRAL .EQ. 0) INTRAL = 1 GENL0052
ITRW (6,2) =6 ESTB0060 IF (NUMLAY .LE. 1) GO TO 80 GENL0053
ITRW(B,2) =4 ESTB0061 LINLAY - (NE-LPRIOR +NUMLAY-l)/ NUMLAY GENL0054
ITRW(17 , 2)=9 ESTB0062 C GENL0055
ITRW (18,2)=12 ESTB0063 C" DETERMINE TYPE OF GENERATION TO ACCOMPLISH GENL0056
T(l,2) - 0 . 0 ESTB0064 C GENL0057
T(2,2)=0 . 0 ESTB0065 80 NUMEL = NUMEL +1 GENL0058
T( 9,2) - 0.0 ESTB0066 IF (NE .GT. NUMEL) GO TO 140 GENLOOS9
T(13,2) - 0 . 0 ESTB0067 C GENL0060
...... T(19,2)=0.0 ESTB0068 C" INITIALIZE PARAMETERS FOR LAST CARD READ IX(I) . NE. 0 GENL0061
VI
'-l RETURN ESTB0069 C GENL0062
END ESTB0070 KGEN = IlH GENL0063
. . . . . . . . . . . * . . . . . . . . * • • • " • • ** . .. GENLOOOI IF (IX(S) + IX(6)+IX(7) .EQ. 0) KGEN = N1H GENL0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM GENL0002 IF (IX(S) .EQ. 0) IX(S) = MPRIOR GENL006S
VERSION 1 . 0, MARCH 1990 GENL0003 IF (lX(6) .EQ. 0) IX(6) IPRlOR GENL0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY GENL0004 IF (IX(7) .EO. 0) IX(7) = JPRIOR GENL0067
THE FEDERAL HIGHWAY ADMINISTRATION GENL0005 MPRIOR = IX (5) GENL0068
* * . " * . 1 r * * • • • ***" GENL0006 IPRIOR = IX(6) GENL0069
SUBROUTINE GENEL (NOD, LGEN, NUMNP, NUMEL, MAXEL, KPUTCK, GENL0007 JPRIOR - IX(7) GENL0070
MGENPR, MBAND, LSTOP, LUPREP) GENL0008 LPRIOR = NUMEL GENL0071
GENL0009 C GENL0072
Uncomment this statement in all program modules for double GENL0010 C" DETERMINE BAND WIDTH GENL0073
precision version. SCM 3-10-90 GENLOOl! C GENL0074
GENL0012 MB = 0 GENL0075
IMPLICIT DOUBLE PRECISION (A-H,O-Z) GENL0013 DO 120 K - 1,4 GENL0076
GENL0014 DO 120 L = K,4 GENL0077
DIMENSION NOD (LSTOP, 1) , LGEN(4,l) GENL0015 IF (IX(K) .EQ. 0 .OR. IX(L) .EO. 0) GO TO 120 GENL0078
DIMENSION IX(7),KINDLG(3),ETYPE(5) GENL0016 M = lABS (IX (K) -IX (L) ) GENL0079
DATA ETYPE/4HQUAD,4HTRI.,4HBEAM,4HFACE,4HBAD GENL0017 IF (M .GT. MB) MB = M GENL0060
DATA L1H, I1H, NIH, IBLANK, M1H/1HL,lHI,1HN,1H ,1HM/ GENL001B 120 CONTINUE GENL0081
C GENL0019 NDF = 2 GENL0082
C" INITIALIZE PARAMETERS, READ AND CHECK ELEMENT CARDS GENL0020 IF(IX(3) .EO.O) NDF = 3 GENL0083
C GENL002l MB - NDF' (MB+ 1) GENL0084
IF (MGENPR .GE. 2) WRITE (6,600S) GENL0022 IF (MB . GT. MBAND) MBAND MB GENL008S
MAXEL = NUMEL GENL0023 C GENL0066
LIMIT - 0 GENL0024 C" PLACE CONNECTIVITY INPUT INTO NOD ARRAY GENL0087
MBAND = 0 GENL0025 C GENLOOB8
NUMEL - 0 GENL0026 DO 130 K = l,LSTOP GENL0089
MPRIOR ~ 1 GENL0027 130 NOD(K,NE) = IX(K) GENL0090
IPRIOR - 1 GENL002B GO TO 170 GENL0091
JPRlOR = 0 GENL0029 C GENL0092
C" GENERATE AN ELEMENT GENL0093 6030 FORMAT ( 103HOFATAL DATA ERROR ON FOLLOWING ELEMENT CARD . THE FIGENL0156
C GENL0094 1RST ELEMENT CARD MUST HAVE NE = 1 AND IX(I) .NE. 0/) GENL0151
140 KGEN = IBLANK GENL0095 6035 FORMAT ( 94HOFATAL DATA ERROR ON FOLLOWING ELEMENT CARD . IT IS GENL0158
DO 150 K ~ 1,4 GENL0096 1ILLEGAL TO SPECIFY LIMIT - L IF IX(l) = 0/) GENL0159
NOD (K,NUMEL) = NOD(K,NUMEL-1) +INTRAL GENL0097 6040 FORMAT ( 117HOFATAL DATA ERROR ON FOLLOWING ELEMENT CARD. A NODEGENL0160
IF (NUMLAY .LE. 11 GO TO 145 GENL0098 1 OF A CONNECTIVITY BEING GENERATED AS SPECIFIED IS OUT OF BOUNDS/)GENL0161
IF (MOD (NUMEL-LPRIOR,LINLAY) .NE. 0) GO TO 145 GENL0099 END GENL0162
NOD (K,NUMEL) = NOD(K,LPRIOR) + INTERL*(NUMEL-LPRIOR)/LINLAY GENL0100 * * * * • * * * * * * * * * * * * * * * * * * * * * * * GENNOOOI
145 CONTINUE GENL0101 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM GENN0002
IF (NOD(K,NUMEL) .LT. 0 .OR. NOD(K,NUMEL) .GT. NUMNP) GO TO 580 GENL0102 VERSION 1. 0, MARCH 1990 GENN0003
150 IF (NOD(K,NUMEL-1) .EQ. 0) NOD (K,NUMEL) = 0 GENL0103 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY GENN0004
C GENL0104 THE FEDERAL HIGHWAY ADMINISTRATION GENN0005
C*- MAKE MATERIAL CHANGE fOR GENERATED ELEMENTS WHERE SPECIFIED GENLOl05 ............ * .. * * .. * .... * ...... * * * ............ * * .. GENN0006
C GENLOl06 SUBROUTINE GENEND (X, Y, NOD, NODB, BIV, KODE, NODTYP, XYGEN, GENN0007
IF (LGEN(l,NUMEL) .NE. NUMEL) GO TO 160 GENLOl07 1 NUMNP, NUMEL, NBPTC, MAXBC, KPUTCK, MGENPR, NSMAT , LSTOP, GENN0008
IF (LGEN(2,NUMEL) .GT. 0) MPRIOR = LGEN(2,NUMEL) GENLOlOB 1 NUMLI, LUPREP,MAXMAT,NXMAT) GENN0009
IF (LGEN(3,NUMEL) .GT. 0) IPRIOR = LGEN(3,NUMEL) GENLOl09 GENN0010
IF (LGEN(4,NUMEL) .GT. 0) JPRIOR - LGEN(4,NUMEL) GENL0110 Uncomment this statement in all program modules for double GENNOOll
KGEN z M1H GENL0111 precision version. SCM 3-10-90 GENN0012
160 NOD(5,NUMEL) : MPRIOR GENL0112 GENN0013
NOD (6,NUMEL) IPRIOR GENL0113 IMPLICIT DOUBLE PRECISION (A-H,O-Z) GENN0014
NOD (7,NUMEL) JPRIOR GENLO 11 4 GENN0015
GENL0115 DIMENSION X(l), Y(l), NOD (LSTOP, 1) , NODB(l), BIV(3,1), KODE(l), GENN0016
c··
C

C
PRINT ELEMENT DATA GENL01l6
GENLOll1
1 NODTYP(I) , XYGEN(3, 1) GENN0017
GENN0018
170 IF (MGENPR .LT . 2) GO TO 190 GENL011B Revise array dimension from AN(2) to AN(3) for extended boundary GENN0019
ELM - ETYPE(5) GENL0119 condition option . SCM 10-25-89 GENN0020
IF(NOD(4,NUMEL) .NE.O) ELM - ETYPE(l) GENL0120 GENN0021
IF(NOD(4,NUMEL) .EQ.O) ELM = ETYPE(2) GENL0121 DIMENSION NAMEG (33) ,AREA(4) ,IX (4) ,ANI (2) ,AN (3) , IIFLG (3) ,BlVD (3) GENN0022
IF(NOD(3,NUMEL).EQ.0) ELM = ETYPE(3) GENL0122 DIMENSION RBC(2) GENN0023
IF(NOD(l,NUMEL) .NE.O) ELM = ETYPE(4) GENLOl23 GENN0024
...-. IF (KGEN.EQ.I1H.OR.KGEN.EQ.NIH)WRITE(6,6015) KGEN,NUMEL, GENLOl24 COMMON IAFCALCI XX(4), YY(4) GENN0025
VI DATA IBLANK ,LIH I1H , 1HLI GENN0026
00 1 (NOD (K, NUMELI ,K:l, 6) , ELM, MS, (KINDLG (K) ,K~l, 3) GENL0125
IF (KGEN .EQ. IBLANK . OR. KGEN .EQ. MIH) WRITE(6,6015) KGEN,NUMEL,GENL0126 DATA NAMEG /4HNOT ,4*4HSTRA,4HLAPL,4HINPU,2*4HSTRA,2'4HCURV GENN0027
1 (NOD(K,NUMEL),K=l,6),ELM GENL0121 1 4HUSED,4'4HIGHT,4HACE ,4HT ,2*4HIGHT,4HE (A,4HE (E,GENN0028
190 IF (NE .EO. NUMEL) GO TO 40 GENL012B 3 4H****,8*4H ,4HRC) ,4HLIP) / GENN0029
GO TO 80 GENL0129 DATA ANI,SAFE 14HF = ,4HD = ,l.E-61 GENN0030
C GENL0130 GENN0031
C.* WRITE ERROR MESSAGES FOR ELEMENT INPUT GENL0131 Add data statement for extended boundary condition option. GENN0032
C GENL0132 SCM 10-25-89 GENN0033
520 WRITE (6,6025) GENL0133 GENN0034
GO TO 600 GENL0134 DATA RBC 14H F ,4H 0 GENN0035
540 WRITE (6,6030) GENL0135 GENN0036
GO TO 600 GENL0136 C GENN0037
560 WRITE (6,6035) GENL0131 C** GENERATE COORDINATES FOR UNSPECIFIED NODES USING LAPLACE SCHEME GENN0038
GO TO 600 GENL0138 C GENN0039
580 WRITE (6,6040) GENL0139 C*- INITIALIZE PARAMETERS GENN0040
600 MB = 0 GENL014 0 C GENN0041
ELM = ETYPE (5) GENL0141 NMISNG - 0 GENN0042
WRITE (6,6015) KGEN, NE, (IX (K) ,K=l, 6) ,ELM, MS, (KINDLG (K) ,K=l, 3) GENL0142 DO 20 NNP - 3, NUMNP GENN0043
KPUTCK - KPUTCK +1 GENL0143 IF (NODTYP(NNP) .GT. 6) GO TO 20 GENN0044
GO TO 40 GENL0144 IF (NODTYP(NNP)/2 .NE . 2) X(NNP) (X(NNP-2) +X(NNP-l»1 2 . 0 GENN0045
5015 FORMAT (AI, 14, 1015) GENL0145 IF (NODTYP(NNP)/2 .NE. 1) Y(NNP) (Y(NNP-2) +Y(NNP-1) If 2.0 GENN0046
6005 FORMAT (122HIELEMENT NODAL CONNECTIVITY MATERIAL CONSTR. GENL0146 NMISNG ~ NMISNG +6 GENN0047
1 ELEMENT BAND WITHIN LAYER NUMBER OF BETWEEN LAYGENL0141 20 CONTINUE GENN0048
2ERI 120H NUMBER J K L NUMBER INCR. GENL0148 IF (NMISNG .EO. 0) GO TO 220 GENN0049
3 TYPE WIDTH NODE INCR. ELEMENT LAYERS NODE INCR.) GENL0149 IF (NMISNG .GT. NUMLI) NMISNG NUMLI GENNOOSO
6010 FORMAT ( 71HOWARNING ONLY. THE LAST ELEMENT LAYER OF THE FOLLOWIGENL0150 IF (KPUTCK .NE. 0) NMISNG - 30 GENN0051
lNG GENERATION HAS ,IS, 52H ELEMENTS WHILE THE NUMBER OF ELEMENTSGENL0151 C GENN0052
2 IN ALAYER IS ,15/) GENL0152 c·· LAPLACE ITERATION GENN0053
GENN0054
6015 FORMAT(lX,Al,I4,I10,315,I7,I11, 7X,A4,Il1,I10,2I17) GENL0153 C
6025 FORMAT ( 78HOFATAL DATA ERROR ON FOLLOWING ELEMENT CARD. ELEMENGENL0154 DO 10 NM = l,NMISNG GENNOOSS
IT NUMBER IS OUT OF BOUNDS/) GENL0155 FACTOR = 0.0 GENN0056
DO 30 NNP = I, NUMNP GENN0057 IF (NOD(3,NE) .EQ. 0) GO TO 380 GENNOI20
DO 30 K = 1,3 GENN0058 IF(NOD(7,NE).NE.0) GO TO 380 GENN0121
30 XYGEN(K,NNP) = 0.0 GENN0059 LIMIT = 4 GENN0122
C GENN0060 IF (NOD(4,NE) . EQ. 0) LIMIT = GENNOl23
C·· LOOP OVER ELEMENTS TO ESTABLISH MISSING NODAL COORDINATES GENN0061 DO 320 L = I,LIMIT GENNOl24
C GENN0062 K = NOD (L, NE) GENNOl25
DO 50 NE ~ l,NUMEL GENN0063 IX(L) = K GENN0126
LIMIT = 4 GENN0064 XX(L) = X(K) GENNOIZ7
IF (NOD(4,NE) .EQ. 0) LIMIT 3 GENN0065 320 YY(L) = Y(K) GENN0128
IF (NOD(3,NE) .EQ. 0) LIMIT 2 GENN0066 IF (LIMIT .EQ . 4) GO TO 330 GENN0129
DO 40 K ~ I,LIMIT GENN0067 AREA(l) = AF(3,1) +AF(2,3) -AF(2,1) GENN0130
NNP = NOD(K,NE) GENN0068 IF(AREA(l) .GT.SAFE) GO TO 380 GENNOl3l
IF (NODTYP(NNP) .GT. 6 .OR. NODTYP(NNP) .LE. 0) GO TO 40 GENN0069 WRITE(6,6025) NE,AREA(l) GENN0l32
IF (NODTYP(NNP) .EQ. 1) NODTYP(NNP) = 6 GENN0070 KPUTCK = KPUTCK + 1 GENN0l33
L = K-l GENN0071 GO TO 380 GENN0134
IF (K.EQ.l) L = LIMIT GENN0072 C GENN0135
NNPBAC = NOD(L,NE) GENN0073 330 AREA(l) -AF(l, 4) -AF(2,1) +AF(2,4) GENN0136
L=K+l GENN0074 AREA(2) AF(3,4) +AF(2,3) -AF(2,4) GENN0137
IF ( K .EQ. LIMIT) LeI GENN0075 AREA(3) = AF(3,1) +AF(2,3) -AF(2,1) GENN0138
NNPFOR = NOD(L,NE) GENN0076 AREA(4 ) -AF(l, 4) -AF(3,l) +AF(3, 4) GENN0139
XYGEN(I,NNP) XYGEN(I,NNP) +X(NNPFOR) +X(NNPBAC) GENN0077 C GENN0140
XYGEN(2,NNP) XYGEN(2,NNP) +Y(NNPFOR) +Y(NNPBAC) GENN0078 C" CHECK FOR NEGATIVE AREAS OF QUAD SUB ELEMENTS GENN014l
XYGEN(3,NNP) = XYGEN(3,NNP) +2.0 GENN0079 C GENN0142
40 CONTINUE GENN0080 SIGN - 1.0 GENN0143
50 CONTINUE GENN008l SIGNA = 1.0 GENN0144
DO 60 NNP = I, NUMNP GENN0082 IF (AREA(l) . LT. SAFE .OR. AREA(2) .LT. SAFE) SIGN = -SIGN GENN014S
IF (NODTYP(NNP) .GT. 6 .OR. NODTYP(NNP) .EQ. 1) GO TO 60 GENN0083 IF (AREA(3) .LT . SAFE .OR. AREA(4) .LT. SAFE) SIGNA = -SIGNA GENN0146
XPRIOR = X (NNP) GENN0084 IF (SIGN .GT. 0.0 .OR. SIGNA .GT. 0 . 0) GO TO 340 GENNOl47
YPRIOR = Y(NNP) GENN008S WRITE (6,6025) NE, AREA GENN0148
IF (NODTYP(NNP)/2 .NE. 2) X(NNP) e XYGEN(I,NNP)/XYGEN(3,NNP) GENN0086 KPUTCK = KPUTCK +1 GENN0149
IF (NODTYP(NNP)/2 .NE. 1) Y(NNP) = XYGEN(2,NNP)/XYGEN(3,NNP) GENN0087 GO TO 380 GENN0150
-" BETA = ABS«X(NNP)-XPRIOR)/(ABS(XPRIOR)+1.E-20» GENN0088 C GENNOl5l
VI
'0 1 +ABS«Y(NNP)-YPRIOR)/ (ABS(YPRIOR) +1.E-20» GENN0089 C" SWITCH ORIENTATION OF DIAGONAL OF QUAD IF PRODUCES BETTER ELEMENT GENNOlS2
GENN0090 C GENNOl53
Revise intrinsic function to generic form. SCM 3-10-90 GENN0091 340 L ~ 0 GENNOl54
GENN0092 IF (SIGN' ABS(AREA(l) +AREA(Z» .GT. GENN0155
FACTOR = MAX(FACTOR, BETA) GENN0093 SIGNA' ABS(AREA(3) +AREA(4» ) GO TO 360 GENNOl56
GENN0094 NOD(I,NE) = IX(4) GENNOl57
60 CONTINUE GENN009S DO 350 K = 2,4 GENN0158
IF (FACTOR .LE. 0.0001) GO TO 80 GENN0096 350 NOD(K,NE) - IX(K-l) GENNOl59
70 CONTINUE GENN0097 L ~ 2 GENNOl60
NM = NMISNG GENN0098 360 IF (AREA(L+l) .GT. 10.'AREA(L+Z) .OR. GENN016l
80 WRITE(6,6005) NM,NMISNG,FACTOR GENN0099 1 AREA(L+1) .LT. AREA(L+2)/10.) WRITE (6,6030) NE, AREA GENN0162
C GENNOI00 380 CONTINUE GENNOI63
C" SET BOUNDARY CONDITION FOR OMITTED NODES GENNOlOI C GENN0164
C GENNOl02 CO. SET FLAGS FOR OTHER THAN QUAD ELEMENTS GENN0165
220 DO 240 NNP = l,NUMNP GENNOl03 C GENN0166
IF (NODTYP(NNP) .NE. 1) GO TO 230 GENNOl04 DO 400 NE = l,NUMEL GENNOl67
X(NNP) - 0 . 0 GENNOlOS IF (NOD (3, NE) . EQ . 0) NOD (3, NE) NOD(2, NE) GENNOl68
Y(NNP) = 0.0 GENNOl06 400 IF (NOD(4,NE) . EQ. 0) NOD(4,NE) - NOD(3,NE) GENNOl69
KODE (NNP) = 3 GENNOl07 C GENNOl70
230 CONTINUE GENNOl08 C" CHECK MATERIAL DEFINITIONS, AND DETERMINE NUMBER OF MATERIALS. GENN0l71
240 CONTINUE GENNOl09 C GENNOl72
IF (MGENPR . LT. 3) GO TO 260 GENNOllO DO 410 J=l, MAXMAT GENN0173
WRITE(6,60l0) GENNOlll 410 NODTYP(J) = -1 GENN0174
DO 250 NNP = I, NUMNP GENNO 11 2 NSMAT = 0 GENN0175
K =NODTYP (NNP) GENN0113 C GENN0176
250 WRITE(6,6020) NNP,X(NNP) ,Y(NNP),NAMEG(K) ,NAMEG(K+ll),NAMEG(K+22) GENN0114 DO 450 NE=I,NUMEL GENN0177
260 CONTINUE GENN01l5 IF(NOD(2,NE).EQ.NOD(3,NE» GO TO 450 GENN0178
C GENN0116 IF(NOD(7,NE).NE.0) GO TO 450 GENN0179
C" COMPUTE ELEMENT AREAS IF TRIANGLE, CHECK AREA AND RESTART LOOP GENN01l7 MAT = NOD(S,NE) GENNOI80
C GENN0118 C GENNOIBI
DO 380 NE - l,NUMEL GENN01l9 DO 440 J=l,MAXMAT GENN0182
IF(MAT.EQ.NODT¥P(J» GO TO 450 GENN0183 DXF=O.O GENN0246
440 CONTINUE GENN0184 D¥F=O.O GENN0247
NSMAT = NSMAT + GENN0185 IF(L .EQ. NM) GO TO 186 GENN0248
NODTYP(NSMATI = MAT GENN0186 DXF=X(KK+INCR)-X(KK) GENN0249
450 CONTINUE GENN0187 DYF=¥(KK+INCR)-Y(KK) GENN0250
IF (NSMAT .GT .MAXMAT) WRITE (6, 6035) NSMAT ,MAXMAT GENN0188 PK=PJ+DP*(SQRT(DXF*DXF+DYF*DYF» GENN0251
C GENN0189 186 BIV(1,I)-BIVD(I)-(2.0*(DYF+D¥B)*PJ+DYB*PI+DYF*PK) / 6.0 GENN0252
C DETERMINE NUMBER OF INTERFACE MATERIAL-GROUPS. GENN0190 BIV(2,I)=BIVD(2)+(2.0*(DXF+DXB) *PJ+DXB*PI+DXF*PK) 16.0 GENN0253
C GENN0191 DXB-OXF GENN0254
NXMAT GENN0192 DYB=DYF GENN0255
GENN0193 PI=PJ GENN0256
Revise MAXMX f~om 30 to 99. SCM 10-25-89 GENN0194 PJ=PK GENN0257
GENN0195 BIV(3, I) -TH GENN0258
MAXMX = 99 GENN0196 NODB(I)=KK*10000+IIFLG(1)*10+IIFLG(2) +IA*100 GENN0259
GENN0197 DO 187 J-l,2 GENN0260
DO 460 J=l,MAXMX GENN0198 IF (IIFLG(J) .EQ. 0) AN(J) = ANI(l) GENN0261
460 NODTYP(JI - -1 GENN0199 IF (IIFLG(J) .EQ. II AN(J) = ANI(2) GENN0262
C GENN0200 GENN0263
DO 410 NE=l,NUMEL GENN0201 Add extended boundary condition definition. MGK 3-18-89 GENN0264
IF(NOD(1,NEj . EQ.OI GO TO 470 GENN0202 GENN0265
NOD(1,NEI - 1 GENN0203 IF (IIFLG(J) . EQ. 21 AN(J) - ANI(2) GENN0266
MATX = NOD(S,NEI GENN0204 IF (IIFLG(J) .EQ. 3) AN(J) - ANI(l) GENN0267
IF(MATX.GT.O . AND. MATX.LE.MAXMXI GO TO 466 GENN0205 GENN0268
WRITE(6,6050) NE GENN0206 187 CONTINUE GENN0269
KPUTCK = KPUTCK T GENN0207 GENN0270
C GENN0208 Extend boundary condition output for rotational constraints . GENN0271
466 DO 467 J=l,MAXMX GENN0209 SCM 10-25-89 GENN0212
IF(MATX.EQ.NODTYP(J)) GO TO 470 GENN0210 GENN0273
4 67 CONTI NUE GENN0211 IF(IIFLG(1) .EQ.O .AND. IIFLG(2) .EO.O) THEN GENN0274
NXMAT - NXMAT + 1 GENN0212 AN(3) = RBC(l) GENN0275
NODTYP(NXMAT) = MATX GENN0213 ELSE IF(IIFLG(l) .EQ . 2 .AND. IIFLG(2) .EQ.O) THEN GENN0276
...... 47 0 CONTI NUE GENN0214 AN (3) = RBC (1) GENN0277
0'\ GENN0215 ELSE IF(IIFLG(I) .EQ.O .AND . IIFLG(2) .EQ.2) THEN GENN0278
o C
C BOUNDARY CONDITIONS GENN0216 AN(3) = RBC(l) GENN0279
C GENN0217 ELSE IF(IIFLG(l) .EQ . 2 .AND. IIFLG(2) .EQ.21 THEN GENN0280
PI = 0.0 GENN0218 AN(3) = RBC(I) GENN0281
LIMIT ~ IBLANK GENN0219 ELSE GENN0282
IF(MGENPR.GE . 2) WRITE(6,915) GENN0220 AN(3) = RBC(2) GENN0283
I-I GENN0221 END IF GENN0284
180 IF (LIMIT .EQ . LIH) GO TO 195 GENN0222 IF (MGENPR.GE. 2) WRITE (6, 906) KK, IA,AN( 1) ,BIV(l, I) ,AN (2), BIV(2, I I, GENN0285
READ (LUPREP,5005) LIMIT, KK, (IIFLG(N), BIVD(N), N - 1,2), GENN0223 X BIV(3,I),AN(3) GENN0286
1 TH, lA, KKP, INCR, PJ, PK GENN0224 GENN0281
IF (I .GT. MAXBC) GO TO 193 GENN0225 KK=KK+INCR GENN0288
NMIS=O GENN0226 BIV(3,I)-TH*0 . 0174533 GENN0289
IF(KKP .EQ. O)GO TO 182 GENN0227 190 IDI+l GENN0290
IF(INCR .EQ. 0) INCR=l GENN0228 GO TO 180 GENN0291
NM=(KKP-KK)/INCR GENN0229 193 WRITE (6,6045) GENN0292
NMIS=IABS (NM) GENN0230 KPUTCK ~ KPUTCK +1 GENN0293
INCR=INCR*NM/NMIS GENN0231 195 NBPTC~I-l GENN0294
182 IF(IA .EQ. 0) IA=l GENN0232 C GENN0295
NM=l+NMIS GENN0233 RETURN GENN0296
DP=PK-PJ GENN0234 5005 FORMAT (A1,I4,I5,FI0.0,I5,2FI0.0,315 ,2FI0.0) GENN0297
IF(NMIS .EQ. 0) GO TO 185 GENN0235 6005 FORMAT ( 38HlLAPLACE GENERATION HAS BEEN COMPLETED GENN0298
M=KK GENN0236 1 40HONUMBER OF ITERATIONS ------------------,151 GENN0299
XL=O.O GENN0237 2 40HOMAXIMUM NUMBER OF ITERATIONS ALLOWED---, lSI GENN0300
DO 183 L=l, NMIS GENN0238 3 40HOLARGEST LAPLACE ERROR FACTOR---------- ,F15.6) GENN0301
MP=M GENN0239 6010 FORMAT (61HINODE X-COORDINATE ¥-COORDINATE GENEGENN0302
M=M+INCR GENN0240 lRATION 114H NUMBER ,37X,4HT¥PE) GENN0303
183 XL=SQRT«X(M)-X(MP) 1**2+(Y(M)-Y(MP) )**2)+XL GENN0241 6020 FORMAT (lX,I4,8X,E20.4,E15.4,3X,3A4) GENN0304
OP=OP/XL GENN0242 6025 FORMAT ( 131HOFATAL DATA ERROR. NEGATIVE AREA FOR ELEMENT NUMBERGENN0305
185 OXB=O.O GENN0243 1 AREA OF TRIANGLES AS INPUT AREA OF TRIANGLES USING ALTERNGENN0306
OYB=O.O GENN0244 2ATE DIAGONALI 151. 8X,2E12.3, 13X,2E12.3) GENN0307
00 190 L=1. NM GENN0245 6030 FORMAT ( 75HOWARNING ONLY. THE AREA OF ONE SUB ELEMENT IS MUCH GENN0308
1SMALLER THAN THE OTHER/ 97H FOR ELEMENT NUMBER AREA OF TRIANGGENN0309 LGTYPE = MOD (MODEG, 100)/ 10 GEN00044
2LES AS INPUT AREA OF TRIANGLES USING ALTERNATE DIAGONAL/ GENN0310 MODEG = MOD (MODEG, 10) GEN00045
3 Il7, 8X, 2E12. 3, 13X, 2E12. 3/) GENN0311 IF (LGTYPE .NE. 0 .AND. RADIUS .NE. 0.0) GO TO 540 GEN00046
6035 FORHAT(/30H FATAL DATA ERROR. THERE WERE ,13, 14H DECLARED BUT, GENN0312 IF ( (MODEG.EQ.l.0R.MODEG.EQ.3) .AND. NODTYP(NNP) .EQ.l) GO TO 560 GEN00047
X ,13, 12H IS MAXIMUN. ) GENN0313 IF ( (MODEG.EQ.0.OR.MODEG.EQ.2) .AND. NODTYP(NNP) .NE.1) GO TO 580 GEN00048
6045 FORHAT ( 65HOFATAL DATA ERROR. NUMBER OF BOUNDARY CARDS CANNOT GENN0314 IF (MODEG .EQ. 1) GO TO 220 GEN00049
lEXCEED MAXBC) GENN0315 IF (MODEG .EQ . 3) GO TO 50 GEN00050
6050 FORHAT(I/ 62H FATAL DATA ERROR FOR MATERIAL NUMBER OF INTERFACE ELGENN0316 IF (MODEG .EQ. 5) GO TO 240 GEN00051
XEMENT NO. ,IS) GENN0317 C GEN00052

Revise formats for boundary condtion output. SCM 10-25-89


GENN0318
GENN0319
c··
C
SET UP COORDINATES FOR RELATIVELY ADDRESSED NODES GEN00053
GEN00054
GENN0320 IF (KRELAD .NE. 1 .AND. KRELAD .NE. 3) GO TO 30 GEN00055
915 FORHAT(lH1,lX,31H* * • BOUNDARY CONDITIONS' • '/2X, GENN0321 GEN00056
X59H(FORCES = LBS; DISPLACEMENTS = INCHES; ROTATIONS = DEGREES)// GENN0322 Revise intrinsic function to generic form. SCM 3-10-90 GEN00057
X2X,8HBOUNDARY,6X,4HLOAD,6X, 14HX-FORCE OR,6X,14HY-FORCE OR,GENN0323 GEN00058
X6X,12HX-Y ROTATION,6X,15HBEAM ROTATIONAL/6X,4HNODE,6X,4HSTEP,6X, GENN0324 NN - INT(XCOORD) GEN00059
XI4HX-DISPLACEMENT,6X,14HY-DISPLACEMENT,22X, GENN0325 GEN00060
X19HBOUNDARY CONDITIONS//) GENN0326 IF (NN .GT. NUMNP .OR. NN .LE. 0 .OR. NODTYP(NN) .LT. 7) GO TO 600GEN00061
906 FORHAT(5X,I5,5X,I5,4X,A4,E12.4,4X,A4,E12.4,4X,EI2.4,14X,A4) GENN0327 XCOORD - X(NN) GEN00062
END GENN0328 30 IF (KRELAD .NE. 2 .AND. KRELAD .NE. 3) GO TO 40 GEN00063
* * • • * * * • * * • * * • • * * * • * * * • • • * * * * * GENOOOOl GEN00064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM GEN00002 Revise intrinsic function to generic form. SCM 3-10-90 GEN00065
VERSION 1.0, MARCH 1990 GEN00003 GEN00066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY GEN00004 NN INT(YCOORD) GEN00067
THE FEDERAL HIGHWAY ADMINISTRATION GEN00005 GEN00068
• GEN00006 IF (NN .GT. NUMNP .OR. NN .LE. 0 .OR. NODTYP(NN) .LT. 7) GO TO 600GEN00069
SUBROUTINE GENNOD (X, Y, NODGEN, NODTYP, XYGEN, NUMNP, MAXNP, GEN00007 YCooRD - Y(NN) GEN00070
KPUTCK, MGENPR, LUPREP) GEN00008 C GEN00071
GEN00009 C" SET NODE QUANTITIES FOR CURRENT NODE POINT GEN00072
Uncornment this statement in all program modules for double GENOOOI0 C GEN00073
precision version. SCM 3-10-90 GENOOOll 40 X(NNP) = XCOORD GEN00074
..-. GEN00012 Y(NNP) ~ YCOORD GEN00075
0'1
..-. IMPLICIT DOUBLE PRECISION (A-H,O-Z) GEN00013 NODTYP(NNP) - 7 GEN00076
GEN00014 NUMNP = MAXO (NUMNP,NNP) GEN00071
DIMENSION X(l), Y(l), NODGEN(3,1), NODTYP(l) , XYGEN(3,1) GEN00015 IF (MODEG .EQ. 0) GO TO 220 GEN00078
DATA PI /3.1415/ GEN00016 C GEN00079

C
DATA L1H /lHL/ GEN00017
GENOOOIB
c··
C
SET GENERATION PARAMETERS GEN00080
GENOOOBI
C" INITIALIZE PARAMETERS GEN00019 50 IF (NPINCR .EQ. 0) NPINCR GENOOOB2
C GEN00020 IF (SPACNG .EQ. 0.0) SPACNG = 1.0 GENOOOB3
MAXNP = NUMNP GEN00021 IF (MPRIOR .EQ. 5) GO TO 60 GEN00084
LIMIT ~ 0 GEN00022 NMISNG - IABS(NNP-NPRIOR)/ NPINCR GENOOOB5
NPRIOR e 0 GEN00023 IF ( MOD (NNP-NPRIOR, NPINCR) .EQ. 0) NMISNG NMISNG-1 GENOOOB6
NUMNP = 0 GEN00024 IF (NMISNG .LE. 0) GO TO 620 GEN00087
NUMGNP = 0 GEN00025 NPINCR = NPINCR*ISIGN (1, NNP-NPRIOR) GEN00088
MODEG = 5 GEN00026 60 FACTOR = 1.01 FLOAT(NMISNG+l) GEN00089
DO 10 NNP z 1,MAXNP GEN00027 IF (LGTYPE .EQ. 4) GO TO 160 GEN00090
Y(NNP) = 0.0 GEN00028 IF (RADIUS .NE. 0.0) GO TO 130 GEN00091
X(NNP) = 0.0 GEN00029 C GEN00092
10 NODTYP(NNP) = GEN00030 C" GENERATE NODES ALONG A STRAIGHT LINE GEN00093
C GEN00031 C GEN00094
C" READ CURRENT NODE CARD, CHECK PARAMETERS, AND TRANSFER GEN00032 IF (SPACNG.NE.1.0) FACTOR (1.0-SPACNG)/ (1.0-SPACNG·*(NMISNG+1»GEN00095
C GEN00033 N = NPRIOR GEN00096
IF (MGENPR.GE.2) WRITE (6,6005) GEN00034 DX e (X(NNP) -XPRIOR)'FACTOR GEN00097
20 IF (MGENPR .GE. 3 .AND. MODEG .NE. 5) CALL SAVEG (NODGEN, XYGEN, GEN00035 DY = (Y(NNP) -YPRIOR)'FACTOR GEN0009B
1 NUMGNP, NNP, MODEG, X(NNP), Y(NNP» GEN00036 DO 120 NM = 1,NMISNG GEN00099
IF (LIMIT .EQ. LIH ) GO TO 800 GEN00037 NN = NPRIOR +NPINCR'NM GENOOIDO
READ (LUPREP,5010) LIMIT, NNP, MODEG, XCOORD, YCOORD, NPINCR, GEN00038 IF (MPRIOR .EQ. 5) NN = NODGEN(l,NM) GEN00101
1 SPACNG, RADIUS GEN00039 IF (NODTYP(NN) .NE. 1) GO TO 640 GEN00102
IF (MGENPR .GE. 2) WRITE (6,6010) NNP, MODEG, XCOORD, YCOORD, GEN00040 X(NN) - X(N) +DX GEN00103
1 NPINCR, SPACNG, RADIUS GEN00041 Y(NN) = Y(N) +DY GEN00104
IF (NNP .GT. MAXNP .OR. NNP .LE. 0) GO TO 520 GEN00042 IF (MGENPR .GE. 3) CALL SAVEG (NODGEN, XYGEN, NUMGNP, GENOOI05
KRELAD = MODEG/100 GEN00043 1 NN, -1, X(NN), Y(NN» GEN00106

If (SPACNG .EQ. 1.0) NODTYP(NN) ~ a GENOOl07 Y(NNI = (X( NNI-XCENTR) *TJ>JI(THETAI +YCENTR GEN00170
IF (LGTYPE .EQ. 1) NODTYP{NN) ~ NODTYP(NN) -6 GENOOIOa IE (MGENf'R .GE. 3) CALL SAV£G (NODGEN, X'tGEN. NUHGNE', GENOOt7l
IF (SPACNG .NE. 1.0) NODTYP(NN) = 9 GENOOI09 1 NN, - 1 . X(NN). Y{NN» GENOO.L7Z
If (LGTYPE .EQ. 2) NODTYP(NN) = NODTYP(NN) -4 GENOOllO 170 NODTYP(NI;) - 11 GEN0017]
N = NN GENOOlll C GEN00174
DX = DX'SPACNG GENOOll2 C" SET Pl\RAMETERS POR PRIOR ,NODE GEN00115
120 DY ~ DY'SPACNG GENOOll3 C GEN00176
GO TO 220 GENOOll4 220 NPIUOI'. ~ NNP GEN001 77
C GENOOll5 )(PIUOR = X/NNP) GEN0017S
C" GENERATE NODES ALONG AN ARC GENOO1l6 YPRIOR · ,({NNP) GEN00179
C" START BY FINDING COORDINATES OF CENTER OF CURVATURE GENOOll7 NMlSNG· a GENO0 190
C GENOOllS 2)0 MERIOR • MODEG GEN00181
130 DX = X(NNP) -XPRIOR GENOO1l9 GO TO 20 GENOOla2
DY = Y(NNP) -YPRIOR GENOOl20 c GEN0018J
DL ~ SQRT (DX'DX +DY'DY) GEN00121 ~ . SAVE NODES FOR INTERPOLATION (M0DEG • S OPTION) GEN00194
RSIGN = SIGN(l.O, RADIUS) GEN00122 C GEN00195
RADIUS = ABS(RADIUS*1.00000l) GENOOl23 HO NMISNG = HMTSNG H Gt:N00166
IF (DL/RADIUS/2.0 .GT. 1.0 .OR. DL .EQ. 0.0) GO TO 660 GENOOl24 NODGEN (1. NMISNGJ • IINP GEN00197
ASINfK = DL/RADIUS/2.0 GEN00125 GO TO 230 GEN00188
THETA = 2.0'ATAN(1.0)-ATAN(ASINFK/SQRT(1.0-ASINFK"2» GENOOl26 c GENOOIB9
PHI ~ ATAN2 (DY, DX) GENOOln C' • WRITE ERROR MESSAGES FOR NODE Hl PUT AND NODES AS GENERATED LI.ST GE:N00190
ALPHA = PHI +RSIGN'THETA GENOOl2S C GEN00191
XCENTR ~ XPRIOR +COS(ALPHA)*RADIUS GENOOl29 520 ~RITE (6,6015) GEN00192
YCENTR = YPRIOR +SIN(ALPHA)*RADIUS GEN00130 i<PUTCK = Kl.'UTCK + 1 Gt:NOQ 19 3
C GEN0013l GO TO 220 GEN001!)4
C" SETUP GENERATION PARAMETERS AND GENERATE SPECIFIED NODES fOR ARC GEN00132 540 WRITE (G.6020 ) GENOOl95
C GEN00133 KPUTCK - KEUTC~ ~ l GEN00196
OMEGA = FACTOR' (4.0'ATAN(1.0) -2.0*THETA) GEN00134 GO TO 220 GEN00197
BETA = ATAN2 (YPRIOR-YCENTR, XPRIOR-XCENTR) GEN0013S 560 ~lTE (6,60 25) GEN00198
DO 140 NM = 1,NMISNG GEN00136 Kl.'UT<;K • KPUTCK +1 GEII00199
NN = NPRIOR +NPINCR'NM
...... If (MPRIOR .EQ. 5) NN = NODGEN{l,NM)
GEN00137
GEN00138
GO TO 22Q
580 ~1T£ 16,6030)
GEtl00200
GEN00201
0\
N IF (NODTYP{NN) .NE. 1) GO TO 640 GEN00139 KPa.CK • KPUTCK +1 GEN00202
BETA = BETA +RSIGN'OMEGA GEN0014 0 GO TO 220 GE:N00203
X(NN) = XCENTR +COS(BETA)'RADIUS GEN0014 1 600 WRITE (6 .6135) GEN00204
Y(NN) = YCENTR +SIN(BETA) 'RADIUS GEN00142 KPUTCK ~ KPUTCK .1 GEN0020S
If (MGENPR .GE. 3) CALL SAVEG (NODGEN, XYGEN, NUMGNP, GEN00143 GO TO 220 GEN00206
1 NN, -I, X(NN), Y(NN» GEN00144 620 , WRITE 16,6040) GEN00207
140 NODTYP(NN) = 10 GEN0014S KPUTCK • KPU1CK +1 GEN0020a
GO TO 220 GEN00146 GO TO 22 0 GEN00209
C GEN00147 640 WRITE (6.6045) NN GEN00210
C" GENERATE QUADRANTS OF AN ELLIPSE -ALWAYS GENERATE COUNTERCLOCKWISEGEN00148 KPOTCK - KPUTeK +1 GEN00211
e" START BY FINDING CENTER COORDINATES AND ANGLE ALPHA GEN00149 C-O TO 220 GE"N002.12
C GENOOlSO 660 WRITE (6,6050) GEN002 13
160 XAXIS = X(NNP) -X (NPRIOR) GEN0015l K~UICK ~ KPUTCK ·1 GEN0021~
YAXIS = Y(NNP) -Y(NPRIOR) GENOOlS2 GO TO 220 GEN00215
XCENTR = X(NPRIOR) GENOOlS3 BOO IF (MGENPR.GE.3) CALL S)WEG (NODGEN. XYG EN, NUHGNP, 0,0,0.0,0.0) GEN00216
YCENTR = Y(NNP) GEN00154 RETURN GEK00217
IF (XAXIS'YAXIS .LT. 0.0) XCENTR = X(NNP) GENOOISS sello FORMAT ( At. H. IS. 2FlO.0 , IS. 5X, 2 nO.0 ) GEII0021B
IF (XAXIS'YAXIS .LT. 0.0) YCENTR = Y(NPRIOR) GENOOIS6 6005 FORMAT ( 8ZH1I10DE GENERA'I'IOII X-COORDINATE Y-CooRD]NJ\TE GEN002 19
IF (XAXIS .LT. 0.0 .AND. YAXIS .GT. 0.0) ALPHA 0.0 GENOOIS7 1 NOD E SPA.CING ARCI 16B NUMBER MODE,39X ,301lINCREMGENOO:nO
IF (XAXIS .LT. 0.0 .AND. YAXIS .LT. 0.0) ALPHA = PI/2.0 GENOOlS8 ZENT PAAAME:rER RAD lt)S ) GEN0022 1
IF (XAXIS .GT. 0.0 .AND. YAXIS .LT. 0.0) ALPHA = PI GENOOIS9 6010 FOlU-!AI In . ~9. E,1 9.L E1S.4, 19, flE.:l- .Fll.2 ! 61::1100222
IF (XAXIS .GT. 0.0 .AND. YAXIS .GT. 0.0) ALPHA = 3.0'PI/ 2.0 GENOOl60 6015 E"QRMAT ( 7~ liOFATAL DATA ERROR ON ABOVE NODE CARD . NODS POINT NUGEN00223
C GEN0016l IMBER lS OUT OF BOONDS /) GEN00224
C" GENERATE NODES ALONG ELLIPSE CIRCUMFERENCE GEN00162 6020 FOR!1AT ( 78HOFATAL DATA ERROR ON 'ABOVE NODE CARll. a· MODEG .GE . GEK00225
e GEN00163 110. THEN RADIUS MUST - 0) G£N00226
DO 170 NM = 1,NMISNG GENOOl64 6025 E"ORMP.T ( 125RO:'A'tAL DATil ERROR aU ABOVE NODE CARD. A NODE HAS BEG"EN00221
NN = NPRIOR +NPINCR'NM GEN0016S lEII RECALLED 11.E . • MOCEG - 1 OR 3) WKICH HAS NOT PREVIOUSLY BEEN DGEN00228
IF (MPRIOR .EQ. 5) NN = NODGEN(l,NM) GEN00166 2EE'INED /1 G"EN00229
IF (NODTYP(NN) .NE. 1) GO TO 640 GEN00167 ~030 FORMAT ( U7HOFAl'AL DF.TA ERROR ON ABOVE )JODE CAIID. A NODE HAS BEGENOO2JO
THETA = ALPHA +FLOAT{NM)'FACTOR*PI/ 2.0 GEN00168 lEN PRESCRIBED (MODEG ~ 0 OR 2) WHICH HAS PREVIOUSLY B&EN DE:FlNE:DI)GEN00231
X{NN) = 1.0/ SQRT { 1.0/XAXIS"2 +(TAN(THETA)/YAXIS)"2) +XCENTR GEN00169 &135 rOm...T I 83HOFATAL DATA ERROR ON ABOVE NODAL CARD. THE NODE RELGEN0023 2
lATIVELY ADDRESSED IS UNDEFINED) GEN00233 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM HARD0002
6040 FORMAT ( 109HOFATAL DATA ERROR ON ABOVE NODE CARD. INCORRECT GENGEN00234 VERSION 1.0, MARCH 1990 HARD0003
lERATION SPECIFIED (POSSIBLY MODEG OR NPINCR IS IN ERROR) I) GEN00235 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY HARD0004
6045 FORMAT I 80HOFATAL DATA ERROR. GENERATION SPECIFIED BY ABOVE NOGEN00236 THE FEDERAL HIGHWAY ADMINISTRATION HARDOOOS
IDE CARD ~ILL CAUSE NODE (,IS, 20H ) TO BE REDEFINED I) GEN00237 ••••• *11- ••• * * * * * * * * .. * * * * * .,. • • • • * HARDODD6
6050 FORMAT (109HOFATAL DATA ERROR. THE RADIUS SPECIFIED FOR THE ABOVGEN00238 SUBROUTINE HARDIN (ST,STHARD,NEL,ICON,ITER,MN,NELEM) HARD0007
IE ARC GENERATION IS LESS THAN HALF THE DISTANCE BETWEEN I GEN00239 C HARD0008
2 8SH THE CURRENT AND PRIOR NODES OR THE CURRENT AND PRIOR NODESGEN00240 C THIS SUBROUTINE GENERATES AN INCREMENTAL PLAIN STRAIN HARDOOD9
3 HAVE THE SAME COORDINATES I) GEN00241 C CONSTITUTIVE MATRIX BASED ON THE EXTENDED-HARDIN SOIL MODEL . HARD0010
END GEN00242 C REFERENCE ... AFWL-TR-72-201, MARCH 1973, BY B. HARDIN. HARDOOll
GEOMOOOI C HARD0012
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM GEOM0002 Uncomment this statement in all program modules for double KARDOOl3
VERSION 1.0, MARCH 1990 GEOM0003 precision version. SCM 3-10-90 HARD0014
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY GEOM0004 HARDD01S
THE FEDERAL HIGHWAY ADMINISTRATION GEOMOOOS IMPLICIT DOUBLE PRECISION (A-H,O-Z) HARD0016
'* • .. .. * * * * * ." .. ." .. * ." .. .. ." w • .. ." '* ." .. .. .. .. * ." GEOM0006 HARD0017
SUBROUTINE GEOM(AA,D1,D2,D3) GEOM0007 DIMENSION ST(6,NELEM),STHARD(6,NELEM) HARD0018
GEOMOOOB COMMON lMATERLI CP(3,3),DEN(10),E(10,10),GNU(10,10),H(10,10), HARD0019
Uncomrnent this statement in all program modules for double GEOM0009 1 ITYPE(10),NON(10) HARD0020
precision version . SCM 3-10-90 GEOM0010 DATA TOLER 10.051 HARD0021
GEOMOOll C HARD0022
IMPLICIT DOUBLE PRECISION (A-H,o-Z) GEOM0012 C THE FOLLOWING VARIABLES ARE IDENTIFIED . . • HARD0023
GEOM0013 C HARD0024
COMMON IELEMNTI AS(3),BS(3),Cl(17,17),EST(4,3),RQ(4),RT(3), GEOM0014 C NEL = ELEMENT NUMBER HARD002S
1 STORE (I?) ,Z4 (12), ZQ(4), ZT(3), ZY(17), J1,RO GEOM0015 C MN = MATERIAL NUMBER HARD0026
COMMON IESTABLI ITRW(28,2),NETCL(17,2),T(28,2) GEOM0016 C ITER - ITERATION NUMBER WITHIN LOAD STEP HARD0027
DIMENSION IS(S) GEOM0017 C ICON ~ CONVERGENCE CODE, 0 = NO, 1 = YES. HARD0028
DATA IS 11,2,3,1,21 GEOM001B C H(MN,l) - HARDIN SOIL PARAMETER, 1230*F HARD0029
C GEOM0019 C H(MN,2) HARDIN SOIL PARAMETER, Cl HARD0030
C GEOMETRIC PROPERTIES OF ELEMENT CALCULATED GEOM0020 C H(MN,3) HARDIN SOIL PARAMETER, A HARD0031
GEOM0021 C H(MN,4) EXTENDED-HARDIN PARAMETER, MIN POISSON RATIO HARD0032
...... C
AA~O.O GEOM0022 C H(MN,S) EXTENDED-HARDIN PARAMETER, MAX POISSON RATIO HARDDD33
0\ GEOM0023 H(MN,6) - EXTENDED HARDIN CURVE PARAMETER HARD0034
w Dl~O.O C
D2~0.0 GEOM0024 C ST(I,NEL) ~ STRAIN STATE. 1=1,2,3 (XX,YY,XY) HARD003S
D3~0.0 GEOM0025 C ST(I,NEL) = STRESS STATE. 1=4,5,6 (XX,YY,XY) HARD0036
00 110 I~l, 3 GEOM0026 C STHARD(l,NEL) = MAXIMUM SHEAR AT PREVIOUS LOAD STEP HARD0037
J~IS(I+1) GEOM0027 C STHARD(2,NEL) = MAXIMUM SHEAR STRAIN AT PREVIOUS LOAD STEP HARD0038
K~IS(I+2) GEOM002B C STHARD(3,NEL) - AVERAGE PRESSURE AT THE PREVIOUS LOAD STEP HARD0039
04 ~ ZT(J) -ZT(K) GEOM0029 C STHARD(4,NEL) = VOLUME CHANGE AT THE PREVIOUS LOAD STEP HARD0040
05 ~ RT(K) - RT(J) GEOM0030 C STHARD(S,NEL) SECANT SHEAR MODULUS AT LAST ITERATION STEP HARDOD4l
AA ~ AA + RT(I)'D4 GEOM0031 C STHARD(6,NEL) - SECANT BULK MODULUS AT LAST ITERATION STEP HARD0042
01 - 01 + D4*D4 GEOM0032 C HARDOOn
D2~D2+D4*DS GEOM0033 C** RECOVER SYSTEM RESPONSES HARD0044
D3~D3+DS*DS GEOM0034 C HARD004S
BS(I)~D4 GEOM0035 AA ~ ST(1,NEL)'ST(4,NEL)-ST(2,NEL)'ST(S,NEL) HARD0046
110 AS(I)~DS GEOM0036 BB ~ ST(I,NEL)*ST(S,NEL) - ST(2,NEL)*ST(4,NEL) HARDOOn
C GEOM0037 XNU2~ H(MN,4) HARD004B
C CONSTRAINT EQUATIONS NECESSARY FOR CONVERGENCE FORMED GEOM0038 IF(BB.NE . O.O) XNU2= BB/(AA+BB) HARDOD49
C GEOM0039 TEMP = ST(l,NEL) - ST(7,NEL) HARDOOSO
DU~1.0/AA GEOM0040 GAMMA2 = SQRT(TEMP'*2+ST(3,NEL) **2) HARDOOS1
IF(J1 .EQ. 2) GO TO 117 GEOM0041 TEMP 0.5* (ST(4,NEL) - ST(S,NEL) HARDOOS2
00 112 I~l, 3 GEOM0042 TAU2 - SQRT(TEMP**2 +ST(6,NEL)**2) HARD0053
T(1+1B,l ) = ZT(I) • DU GEOM0043 SIGO = -(ST(4,NEL)+ST(S,NEL))*(I.+XNU2)/3.0 HARDOOS4
T(1+24, 1) ~ ZT(I) *DU GEOM0044 IF(SIGO.LE.O.O) SIGO=l . O HARD005S
112 T(I+2l,l) -RT(I) * DU GEOM004S C HARD0056
GO TO 140 GEOM0046 C" COMPUTE HARDIN VARIABLES HARD0057
117 DO 121 I~1,3 GEOM0041 C HARDOOS8
T(I+19,2) - -RT(I) * DU GEOM0048 GMAX = H(MN,l)*SQRT(SIGO) HARDOOS9
T(I+2S,2) = -RT(I) * DU GEOM0049 GAMMAR - GMAX/H(MN,2) HARD0060
121 T(I+22,2) ZT(I)' DU GEOM0050 RATIO = GAMMAZ/GAMMAR HARD0061
140 RETURN GEOM0051 GAMMAP - H(MN,6)*RATIO HARD0062
END GEOM0052 TERM = H(MN,3) / EXP(RATIO··O . 4) HARD0063
1- ..... * . * * * . * * * . " * * * * * . * * * * •• • HARDOOOl GAMMAH = RATIO' (1. + TERM) HARD0064
EKK ST(l,NEL) ~ ST(2,NEL) HARD006S PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY HERC0004
C HARD0066 THE FEDERAL HIGHWAY ADMINISTRATION HERCOOOS
c· · COMPUTE NEW SECANT SHEAR MODULUS HARD006? ............ * * . * * .. * * * . . . . . . . . . . . . ** . . . . .. , HERC0006
C HARD0068 SUBROUTINE HEROIC (BIV,DENSTY,IA,ICOME,IEXIT,LEVEL,NBPTC,MNO, HERC0007
GNEW - GMAXI (1.+GAMMAH) HARD0069 1 NELEM,NINC,NOD,NODB,NPMAT,NPPT,NPT,NQ,NSMAT, HERCODD8
GOLD ~ STHARD(S,NEL) HARD0070 2 NXMXX,PIPMAT,RESULT,SK,SM,ST,STHARD,STPIPE, HERCODD9
GCHECK ~ (GNEW-GOLD)/GNEW HARDOOn 3 U,V,X,Y) HERC0010
GGUESS ~ GNEW HARD0072 C HERCOOll
STHARD(S,NEL) ~ GGUESS HARDOOB C HERCOD12
C HARDOOH C INCREMENTAL PLAIN STRAIN ANALYSIS HERC0013
C" COMPUTE NEW SECANT BULK MODULUS HARD007S C HEROIC - (HER)MANN (O)N (I)NCREMENTAL (C)ONSTRUCTION. HERCOOl4
Co. (BULK MODULUS BASED ON HARDIN POISSON HARD0076 C HERCOOls
C" RATIO AND SHEAR MODULUS) HARD 0 077 C HERC0016
C HARD0078 Uncomment this statement in all program modules for double HERC0017
VNEW ~ (H(MN,4) +GllMMAP'H(MN,S»/(1.+GAMMAP) HARD0079 precision version. SCM 3-10-90 HERC0018
BNEW ~ 2./3.'GGUESS'(1.+VNEW)/(1.-2.*VNEW) HARD0080 HERC0019
BOLD ~ STHARD(6,NEL) HARDOOBI IMPLICIT DOUBLE PRECISION (A-H,O-Z) HERC0020
BCHECK = (SNEW-BOLD)/BNEW HARD0082 HERC0021
BGUESS - BNEW HARD0083 DIMENSION BIV(3,NBPTC) ,MNO(NELEM),NOD(4,NELEM) ,NODB(NBPTC) , HERC0022
STHARD(6,NEL) - BGUESS HARDOOB4 1 NQ(NPT+l),PIPMAT(S,NPPT),RESULT(20,NPPT),ST(6,NELEM), HERC0023
C HARD008S 2 STHARD(6,NELEM),STPIPE(2,NPPT),U(NPT),V(NPT),X(NPT), HERC0024
Co. COMPUTE CHORD VALUES FOR SHEAR AND BULK MODULI HARD0086 3 Y(NPT) HERC002s
C HARD0087 C HERC0026
GCORD ~ GGUESS HARD008B COMMON /SIZEPRI BIVD(3),IX,NINCC HERC0027
DGAMMA = GAMMA2 - STHARD(2,NEL) HARD0089 COMMON IELEMNTI AS(3),BS(3),Cl(17,11),EST(4,3),RQ(4),RT(3), HERC0028
IF (DGAMMA . NE. 0.0) GCORD~(GAMMA2'GGUESS-STHARD(l,NEL) )/DGAMMA HARD0090 1 STORE (17) , Z4 (12) , ZQ (4) , ZT (3) , ZY (17) ,Jl, RO HERC0029
IF(GCORD.LE.O.O) GCORD = GGUESS HARD009l COMMON/SYSTEM/B(240),A(240,120) HERC0030
IF (GCORD .GT. GMAX) GCORD = GMAX HARD0092 COMMON IMATERLI CP(3,3),OEN(10),E(10,10),GNU(10,10),H(10,10), HERC0031
BCORD = BGUESS HARD0093 1 ITYPE(10),NON(10) HERC0032
DEKK ~ EKK - STHARD(4,NEL) HARD0094 HERC0033
IF (DEKK .NE. 0.0) BCORD = (EKK*BGUESS-STHARD(3,NEL»/DEKK HARD009S Expand array dimension statments from 30 to 99. HERC0034
,..... IF(BCORD.LE.O.O) BCORD ~ SGUESS HARD0096 SCM 5-22-89 HERC003S
0\ HARD0097 HERCD036
~ C
CO, STORE PREVIOUSLY CONVERGED SOLUTION ON THE FIRST ITERATION HARD009B COMMON/XFACE/NXMAT,ANGLE(99) ,FCOEF(99) ,TENSIL(99) ,ITMAX HERC0037
C" OF THE fOLLOWING LOAD STEP. (NOTE FIRST ITERATION IS PRIOR TO THE HARD0099 HERC0038
C" APPLICATION OF LOADING) HARDOlOO Add common block. SCM 10-23-89 HERC0039
C HARDOlOl HERCD040
IF (ITER .GT. 1) GO TO 100 HARDOl02 COMMON 10UTPUTI IWRT,IPLOT,MAXIT,JCON HERC0041
STHARD(l,NEL)= TAU2 HARDOl03 HERC0042
STHARD(2,NEL) - GAMMA2 HARDOl04 Revise MAXMAT dimension statement from 30 to 99. HERCODO
STHARD(3,NEL) - -SIGO HARDOlOS SCM 5-22-89 HERC0044
IF (TAU2 .EO. 0.0) STHARD(3,NEL) - 0.0 HARDOl06 HERC004S
STHARD(4,NEL) - EKK HARDOl07 DATA LUDATA,MAXMAT 111,991 HERCD046
ICON ~ 0 HARDOl08 HERcoon
HARDOl09 C HERC0048
C
C" CKECK FOR CONVERGENCE HARDO 11 0 GO TO (100,110), ICOME HERCD049
C HARD 0 1 11 C HERCODSO
100 IF (ABS(BCHECK) .GT. TOLER) ICON 0 HARDO 11 2 C FIRST ENTRY ESTABLISHES CONSTANTS AND READS FINITE ELEMENT DATA. HERCOOSI
IF (ABS(GCHECK) .GT. TOLER) ICON = 0 HARD0113 C HERCOOS2
IF (ITER .GT. NON(MN» ICON - 1 HARDO 11 4 100 CONTINUE HERCOOS3
C HARDO 11 5 NEQ = 1200 HERCOOS4
C" CONSTRUCT NEW INCREMENTAL CONSTITUTIVE MATRIX HARDO 11 6 NXMAT - NXMXX HERCOOSS
HARD 0 11 ? C HERCOOS6
C
VCORD = (3.0*BCORD-2.0*GCORD) I (6.0'BCORD+2.0'GCORD) HARD01l8 C HERCOOS7
IF (VCORD .LT. H(MN,4» VCORD = H(MN,4) HARD01l9 C" ALL INPUT VALUES FROM PREP ARE READ HERE FROM TAPE LUDATA HERCOOSB
IF (VCORD .GT. H(MN,S» VCORD = H(MN,S) HARD0120 C HERCOOS9
ECORD = 2.* (l.+VCORD)*GCORD HARDOl2l HERC0060
CALL CONYT (ECORD, VCORD) HARD0122 Revise 1/0 unit from LUDATA to Unit 14. HERC0061
RETURN HARD0123 SCM 11-22-B8 HERC0062
END HARD0124 HERC0063
• • • • • * * * * . * * * ........ * * * .... • • • • • • • HERCOOOI REWIND 14 HERC0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM HERC0002 READ (14) NPT,NELEM,NBPTC,NINC,NPUTCK HERC006S
VERSION 1.0, MARCH 1990 HERC0003 READ (14) (X(N),Y(N),N=l,NPT), «NOD(K,N),K-1,4),MNO(N), HERC0066
N=I, NELEH) , (NODB (N) , (BIV(K , N) ,K=l, 3) ,N=l, NBPTC) HERC0067 ITER 1 HERC0130
HERC006B C HERC0131
IF (NINC .LE. 0) NINC _ 1 HERC0069 155 CONTINUE HERC0132
C HERC0070 C HERC0133
C HERC0071 C THE EQUATION POSITIONING MATRIX FOR THE SYSTEM MATRIX IS FORMED HERC0134
C** ESTABLISH ORDERING Of PIPE ELEMENTS. HERCOOn C AND THE ELEVATION OF THE TOP Of THE CONSTRUCTION INCREMENT ESTABLIHERC0135
C HERC0073 C HERC0136
CALL RESPIP (HNO,NOD,RESULT,ST,STPIPE,U,V,X,Y,NELEM,NPMAT, HERC0074 DO 160 I=l,NPT HERC0137
1 NPPT, NPT, ITER, 1) HERC0075 160 NQ(I+1)=0 HERC013B
C HERC0076 DO 198 M=l,NELEM HERC0139
C** STOP PROGRAM IF IN DATA CHECK MODE HERC0077 IAC=MOD(HNO(M),1000) 110 HERC0140
C HERC007B IF(IAC.GT.IA) GO TO 198 HERC0141
HERC0079 LS-200 HERC0142
Revise NPUTCK flag for both data check and beam only problems . HERC0080 IF (NOO(2,H) .EQ. NOD(3,M)) LS c 300 HERC0143
HERCOOB1 DO IBO J-l,4 HERC0144
If (NPUTCK . GT . 0) STOP' DATA CHECK STOP' HERCOOB2 I _ NOD(J,M) + 1 HERC0145
IF (NPUTCK . LT . 0) GO TO 130 HERC0083 180 IF(NQ(I).LT . 300)NQ(I)=LS HERC0146
HERCOOB4 198 CONTINUE HERC0147
C HERCOOB5 NQ (1) =100 HERC014B
c··
C
READ MATERIAL PROPERTIES fOR CONTINUUM ELEMENTS. (SOIL-SYSTEM) HERCOOB6
HERCOOB7 200
DO 200 I=l,NPT
NQ(I+l)=NQ(I)+NQ(I+l)
HERC0149
HERC0150
CALL READM(NSMAT,MAXMAT,DENSTY,LEVEL) HERC0088 C HERC015I
C HERCOOB9 C THE BAND WIDTH-NPC- IS COMPUTED HERC0152
C INITIALIZATION Of STORAGE ARRAYS HERC0090 C HERC0153
C HERC009l NPC-O HERCOI54
130 DO 140 I-l,NPT HERC0092 DO 218 I=I,NELEM HERC0155
U(I) - O. O HERC0093 lAC ~ MOD(HNO(I),1000)/10 HERC0156
140 V(I)=O . O HERC0094 IF(IAC.GT.IA) GO TO 218 HERC0157
DO 141 I c 1, NPMAT HERC0095 DO 202 J=I,4 HERC015B
STPIPE(I,I) = 0 . 0 HERC0096 JJ = NOD(J,I) HERC0159
141 STPIPE(2,I) = 0.0 HERC0097 NQ(JJ)=NQ(JJ)+1 HERC0160
...... DO 142 I-1,NELEM HERC009B DO 202 K=I,4 HERC016l
0\ HERC0099 KK a NOD(K,I) + 1 HERC0162
VI DO 142 J = 1, 6
142 ST(J,I) - 0.0 HERC0100 IV-NQ(KK)/I00-NQ(JJ)/100 HERC0163
DO 143 I=l,NPPT HERC0101 If (NPC .LT . IV) NPC=IV HERC0164
DO 143 J=l,9 HERC0102 202 CONTINUE HERC0165
143 RESULT(J,I) = 0.0 HERC0103 218 CONTINUE HERC0166
NINCC = IABS(NINC) HERC0104 C HERC0167
IX=NEQ HERCOI05 C COMPUTE MATRIX SPECIFICATIONS HERC016B
IA=O HERC0106 C HERC0169
IEXIT -0 HERCOl07 If (NPC .LE. NEQ) GO TO 220 HERC0170
If(ICOME.EQ.1) RETURN HERC010B WRITE(6,6010) NPC,NEQ HERCOl71
C HERC0109 RETURN HERCOl72
C SECOND ENTRY SOLVES FOR A SINGLE CONSTRUCTION INCREMENT . HERCOllO 220 NCOL NPC HERCOl73
C THE CONTROL VARIABLE,IEXIT,DEfINED IN THE PIPE LIBRARY CONTROLS HERC01ll NROW=NQ(NPT +1)/100-1 HERCOIH
C ADVANCEMENT OF THE CONSTRUCTION INCREMENT. HERC01l2 C HERC0175
C IF IEXIT .EQ . 0, ADVANCE LOAD STEP HERC01l3 C INITIALIZE SYSTEM MATRIX HERC0176
C IF IEXIT .EQ. -1, REPEAT LOAD STEP HERC 0114 C HERCOI77
C IF IEXIT .EQ. -2, REPEAT ALL LOAD STEPS. HERC0115 MN-2*NEQ HERC017B
C HERC0116 DO 223 N=l,HN HERC0179
C HERC01l7 B(N) _ 0.0 HERCOIBO
110 If(IEXIT.EQ.-2) GO TO 130 HERCOllB DO 223 J=I,NEQ HERC01B1
NINC NINCC HERC01l9 223 A(N,J) = 0.0 HERCOIB2
ICON = 1 HERC0120 c HERCOIB3
HERC0121 C THE STIfFNESS MATRIX IS GENERATED IN BLOCKS AND STORED ON TAPE HERC01B4
Add JCON convergence flag for DUNCAN subroutine . SCM 1-15-89 HERC0122 C HERC0185
HERC0123 HERC01B6
JCON HERC0124 Revise 1/0 unit from LUDATA to Unit 14 . HERCOIB7
HERC0125 SCM 11-22-B8 HERC01BB
IF(IEXIT.NE.-1) GO TO 154 HERC0126 HERC0189
ITER = ITER + 1 HERC0127 REWIND 14 HERC0190
GO TO 155 HERC0128 HERCOl91
154 IA=IA+l HERC0129 LB=O HERC0192
LB1=0 HERC0193 349 CALL STIFNS(BIV,NOD,NODB,NQ,X,Y,MNO,U,V,ST,IA,LB1,MN,IAC,MNX, HERC0256
NELEMTEO HERC0194 X ITER,ICON,NEQ,NBPTC,NELEM,NPT) HERC0257
2BB LB=LB+1 HERC0195 NELEMT=NELEMT+l HERC0258
MB=LB'NEQ HERC0196 NOD(l,I) = -NOD(l, I) HERC0259
C HERC0197 355 CONTINUE HERC0260
C EACH ELEMENT IS EXAMINED TO DETERMINE IF IT CONTRIBUTES TO THE HERC0198 C HERC0261
C BLOCK HERC0199 C IF HAVE LESS THAN 1 BLOCK OF EQUATIONS LEFT NO ADDITIONAL TAPE HERC0262
C HERC0200 C STORAGE IS USED HERC0263
DO 355 I=l,NELEM HERC0201 C HERC0264
IX=I HERC0202 IF(NROW .LE. MB ) GO TO 560 HERC0265
IF (NOD(l,I) . LT. 0) GO TO 355 HERC0203 LBlELB1+1 HERC0266
IAC=MOD(MNO(I),lOOO)/lO HERC0204 C HERC0267
MN=MNO(I) 11000 HERC0205 C THE BLOCK OF EQUATIONS IS REDUCED AND PUT ON TAPE HERC0268
IBEND ~ NOD(2,I) -NOD(3,I) HERC0206 C HERC0269
MNX = MNO(I) - MN'1000 - IAC'lO HERC0207 CALL REDUCI(NEQ,NCOL) HERC0270
IF(IBEND.EQ.O) RO = PIPMAT(5,MN) HERC0208 HERC0271
IF(IBEND.NE.O) RO = DEN(MN) HERC0209 Revise I/O unit from LUDATA to Unit 14. HERC0272
IF(MNX.GT.O) RO = 0.0 HERC02l0 SCM 11-22-88 HERC0273
IF (IAC-IA) 290,292,355 HERC0211 HERC0274
290 RO=O.O HERC02l2 WRITE(14) (B(N), (A(N,M) ,M=1,NCOL) ,N=l,NEQ) HERC0275
292 00 300 L-1,4 HERC0213 HERC0276
KK = NOD(L,I) HERC0214 C HERC0277
K1=NQ(KK)/100 HERC0215 C THE NUMBER TWO BLOCK OF EQUATIONS IS SHIFTED INTO THE NUMBER ONE HERC0278
IF (Kl .LE. MB) GO TO 305 HERC0216 C POSITION HERC0279
300 CONTINUE HERC02l7 C HERC0280
GO TO 355 HERC0218 DO 555 L=1,NEQ HERC0281
C HERC0219 LRH=L+NEQ HERC0282
C CHOOSE APPROPIATE CONSTITUTIVE LAW FOR ELEMENT HERC0220 B(L) = B(LRH) HERC0283
C HERC0221 B(LRH) = 0.0 HERC0284
305 IF(IBEND.EQ.O) GO TO 320 HERC0222 DO 555 M=l,NCOL HERC0285
HERC0223 A(L,M) = A(LRH,M) HERC0286
..... IF(MNX.GT.O) GO TO 349
ITYP = ITYPE(MN) HERC0224 555 A(LRH,M) = 0.0 HERC0287
0'1 HERC0225 GO TO 288 HERC0288
0'1 GO TO (306,306,308,309,310),ITYP
306 L=O HERC0226 560 NT=NROW-LBl*NEQ HERC0289
DO 307 J=l,3 HERC0227 C HERC0290
00 307 K=J,3 HERC0228 C THE FINAL TWO BLOCKS OF EQUATIONS ARE REDUCED AND BACK-SUBSTITUTEDHERC0291
1=L+1 HERC0229 C HERC0292
CP(J,K)- H(MN,L) HERC0230 CALL REDUCI(NT,NCOL) HERC0293
307 CP(K,J)=CP(J,K) HERC0231 CALL BAKSU8(NT,NCOL,LB,NEQ) HERC0294
GC TO 349 HERC0232 IF (L81 .EQ. 0) GO TO 564 HERC0295
C HERC0233 DO 563 J=l,LBl HERC0296
C ••• INSERT NEW SOIL MODELS HERE ••• HERC0234 DO 562 1=1, NEQ HERC0297
HERC0235 LL~L+NEQ HERC0298
C
308 CALL DUNCAN(ST,STHARD,I,ICON,ITER,MN,NELEM,IA) HERC0236 562 8(LL) = B(L) HERC0299
GC TO 349 HERC0237 L -LBI-J+l HERC0300
C HERC0238 c HERC0301
309 CALL INTP1(NOD,ST,X,Y,MNO,EI,GNUI,IX,MN,IA,NELEM,NPT) HERC0239 c ANY BLOCKS ON THE TAPE ARE RECALLED AND BACK-SUBSTITUTED HERC0302
CALL CONVT(EI,GNUI) HERC0240 C HERC0303
GO TO 349 HERC0241 HERC0304
C HERC0242 Revise I/O unit from LUDATA to Unit 14 . HERC0305
310 CALL HARDIN (ST,STHARD,I,ICON,ITER,MN,NELEM) HERC0243 SCM 11-22-88 HERC0306
GO TO 349 HERC0244 HERC0307
C HERC0245 BACKSPACE 14 HERC030B
320 CONTINUE HERC0246 READ(14) (B(N), (A(N,M),M=l,NCOLI.N=l,NEQ) HERC0309
DO 321 J-l,3 HERC0247 8ACKSPACE 14 HERC0310
CP(1,J) = PIPMAT(J,MN) HERC0248 HERC0311
CP(2,J) = 0.0 HERC0249 CALL BAKSUB(NEQ,NCOL,L,NEQ) HERC0312
321 CP(3,J) = 0.0 HERC0250 563 CONTINUE HERC0313
CP(2,1)= PIPMAT(4,MN) HERC0251 564 L=O HERC0314
C HERC0252 DO 566 N:1,LB HERC0315
C CALCULATE THAT PORTION OF THE STIFFNESS MATRIX GIVEN BY A HERC0253 K=NEQ HERC0316
C CONSIDERATION OF ELEMENT I HERC0254 DO 566 KK=1,NEQ HE;RC03l7
C HERC0255 K-K+l HERC031B
L-L+1 HERC0319 C THE FOLLOWING HINGING EVALUATIONS ARE CALCULATED .. . HING0014
566 B(L) 2 A(K,N) HERC0320 C HING0015
C HERC0321 C PHINGE(1) ~ RATIO OF ELASTIC MOMENT TO YIELD MOMENT. HING0016
C RECORD THE STRUCTURAL RESPONSES FOR CONVERGED SOLUTIONS HERC0322 C PHINGE(2) - RATIO OF YIELDED SECTION TO TOTAL SECTION . HING0017
C HERC0323 C PHINGE(3) RATIO OF YIELDED CIRCUMFERENCE TO TOTAL. HINGOOIB
If(IEXIT.EQ.-1) GO TO S80 HERC0324 C PHINGE(4) - RATIO OF PLASTIC DISPLACEMENT TO TOTAL. HING0019
REWIND 13 HERC032S C PHINGE(S) ~ RATIO OF TOTAL STRAIN TO YIELD STRAIN. HING0020
WRITE (13) (U (I) ,V(I) , I-I, NPT) , ( (ST (J, I) ,1=1, NELEM) ,J-l. 6) HERC0326 C HING0021
1 , «STPIPE(J, 1),1=1, NPHAT) , J-l, 2) HERC0327 Uncomrnent this statement in all program modules for double HING0022
GO TO S90 HERC032B precision version. SCM 3-10-90 HING0023
C HERC0329 HING0024
C READ PREVIOUSLY CONVERGED STRUCTURAL RESPONSES IF IEXIT -1 HERC0330 IMPLICIT DOUBLE PRECISION (A-H,O-Z) HING002S
C HERC0331 HING0026
S80 REWIND 13 HERC0332 Revise dimensions of RESULT, DESULT and PIPMAT arrays from HING0027
READ (13) (U (I) ,V (I) , 1=1, NPT) , ( (ST (J, I) , I-I, NELEM) ,J-l, 6) HERC0333 30 to 99. SCM 4-30-89 HING002B
1 ,( (STPIPE(J,I),I=I,NPHAT) ,J~1.2) HERC0334 HING0029
C HERC033S DIMENSION RESULT(20,99),XK(6,6),A(6),U(6,6),DESULT(B,99),FW(7) HING0030
590 CONTINUE HERC0336 X ,PHINGE(S),PIPMAT(S,99) HING0031
C HERC0337 HING0032
C STRESSES AND STRAINS COMPUTED HERC033B C HING0033
C HERC0339 C SET CONSTANTS HING0034
CALL STRESS (BIV,MNO,NOD,NODB,NQ,ST,STPIPE,U,V,IA,NBPTC, HERC0340 C HING003S
1 NELEM,NELEMT,NPHAT,NPPT,NPT,SK,SM) HERC0341 DO SO I~I, NPPT HING0036
C HERC0342 DO 50 J=I,7 HING0037
C PIPE RESULTS COLLECTED HERC0343 50 DESULT(J,I) ~ 0.0 HING0038
C HERC0344 00 55 I~1. 5 HING0039
CALL RESPIP (MNO,NOD,RESULT,ST,STPIPE,U,V,X,Y,NELEM,NPMAT, HERC034S SS PHINGE(I) = 0.0 HING0040
1 NPPT,NPT,IEXIT,2) HERC0346 C HINGOOn
C HERC0347 PE ~ PIPMAT(l,NPMAT) HING0042
IF(ICON.NE.l) NINC = -NINCC HERC0348 PNU ~ PIPMAT(2,NPMAT) HING0043
HERC0349 PA - PIPMAT(3,NPMAT) HING0044
Revise convergence limit and add JeON convergence flag for Duncan HERC03S0 PI - PIPMAT(4,NPMAT) HING0045
0\ HERC03S1 PRAD ~ PDIA/2. HING0046
--..l subroutine. SCM 1-1S-B9
HERC03S2 PC - PI/PS HINGOOn
IF(ITER.LE.20) RETURN HERC03S3 NPO - (NPPT+l)/2 HING0048
HERC03S4 NPI ~ NPO-l HING0049
IF(ITER.LT.MAXIT) RETURN HERC03SS NP2 ~ NPO-2 HINGOOSO
IF(JCON.LT.l) WRITE(6,SOOO) IA,ITER HERC03S6 IF(RESULT(S,NPO) .EQ.O.O) RETURN HINGOOS1
HERC03S7 SIGN ~ RESULT(5,NPO)/ABS(RESULT(S,NPO)) HINGOOS2
RETURN HERC03S8 XMEO ~ RESULT(S,NPO)*SIGN HINGOOS3
C HERC03S9 XMEI ~ RESULT(S,NPl)*SIGN HINGOOS4
C.. FORMATS HERC0360 XME2 ~ RESULT(S,NP2)*SIGN HINGOOSS
C HERC0361 XMYLD ~ YIELD*PI/PC HINGOOS6
6010 fORMAT(IHl,41HFATAL ERROR BANDWIDTH IS TOO LARGE HERC0362 XMULT ~ 1.S*XMYLD HINGOOS7
1 30HBANDWIDTH IS ............... . ,IS HERC0363 PHINGE(I) = XMYLD/XMEO HINGOOS8
2 30HMAXIMUM ALLOWABLE BANDWIDTH IS ,IS HERC0364 PHINGE(S) - XMEO/(PS*YIELD) HINGOOS9
5000 FORMAT(//23H *** WARNING, LOAD STEP,I3,23H DID NOT CONVERGE AFTER,HERC036S IF(XMEO .LT . 1.01*XMYLD) RETURN HING0060
X 13,12H ITERATIONS.,23H PROGRAM WILL CONTINUE. ) HERC0366 SPK ~ SM*(1.-SK)/PRAD HING0061
NINC ~ NINCC HERC0367 ALPHA ~ PRAD**4*SPK*(I.-PNU**2)/(PE*PI) HING0062
END HERC036B SQRAL = SQRT (ALPHA) HING0063
* * * • • • • * * * * * " , * " . . + ... * i r * * * * * * * .. ." .. * ." .. .. HINGOOOl XP ~ O.S*SQRT(2.*SQRAL-1.) HING0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM HINGOOOZ XQ ~ 0.S*SQRT(2.*SQRAL+l.) HING006S
VERSION 1.0, MARCH 1990 HING0003 Cl ~ 1.+SQRAL HING0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY HING0004 C2 ~ -1. +SQRAL HING0067
THE fEDERAL HIGHWAY ADMINISTRATION HING0005 C3 - SQRT(ALPHA-.2S) HING0068
." .. .. .. * .. * .. ." * .,. .. .. .. .. .. • .. .. .. • .. .. .. .. .. .. .. .. .. .. .. .. .. HING0006 C4 O. 5-ALPHA HING0069
SUBROUTINE HINGE(PIPMAT,NPMAT,PS,PDIA,YIELD,SM,SK,RESULT,NPPT, HING0007 F1 = PI/(PA*PRAD**2) HING0070
X PHINGE) HINGOOOB F2 PRAD**2*5PK*(1 . -PNU**2)/(PE*PA) + 1. HING0071
C HING0009 F3 - PE*PI/(PRAD**2*(I.-PNU**2)) HINGOOn
C THIS ROUTINE CALCULATES A CORRECTIONAL SET OF STRUCTURAL RESPONSESHING0010 F4 YIELD*PRAD*(1.-PNU**2)/(PE*PC) HING0073
C TO ACCOUNT FOR PLASTIC YIELDING AT THE QUARTER POINTS OF A HINGOOll HPI = 2.*ATAN(1.0) HING0014
C CIRCULAR CULVERT. HING0012 DTHETA ~ 2.*HPI/(NPPT-l.) HING007S
C HING0013 BE ~ (-3.*XMEO+4.*XME1-XME2)/(2.*DTHETA) HING0076

f' ~
CE (XMEO-2.*XMEl+XME2) I (2.*DTHETA*DTHETA) HING0077 C HING0140
C HING0078 200 DMO = (OMHIGH+DMLOW) 12. HING0141
C ESTABLISH MATRIX,XK, FOR SOLVING SIX UNKNOWN COEFFICIENTS OF HING0079 XMDO --DMO*OESULT(5,NPO) HING0142
C END-MOMENT BOUNDARY VAlUE PROBLEM. HING0080 XMDl ~-DMO*DESULT(5,NPl) HING0143
C HING0081 XMD2 ~-DMO*DESULT(S,NP2) HING0144
CAlL SETU(0.0,Cl,C2,C3,C4,SQRAl,XP,XQ,U) HING0082 BB (-3.* (XMEO+XMDO)+4.* (XMEI+XMDl)-(XME2+XMD2»)/(2.*DTHETA) HING014S
DO 100 I~1,4 HING0083 CC ~ (XMEO+XMDO-2.*(XMEl+XMD1)+XME2+XMD2)/(2.*OTHETA**2) HING0146
XK(l,I) U(S,I) HING0084 C HING0147
XK(3,I) ~ U(4,I) HING008S C COMPUTE LENGTH OF PLASTIC HINGE HING0148
100 XK(S,I) ~ Fl*U(S,I) + F2*U(1,I) HING0086 C HING0149
CAlL SETU(HPI,C1,C2,C3,C4,SQRAl,XP,XQ,U) HING0087 WI (-BB/CC+ SQRT«BB/CC) **2 -4.*(XMEO+XMOO-XMYLD)/CC))/Z.0 HING01S0
DO 110 1-1,4 HING0088 WZ - (-BB/CC- SQRT«BB/CC)**Z -4.*(XMEO+XMDO-XMYLD)/CC))/Z.0 HINGOlSl
XK(Z,I) U(S,I) HING0089 U ~ HINGOlS2
XK(4,I) U(4,I) HING0090 IF(W2.GT.0.0) WP ~ W2 HINGOl53
110 XK(6,I) Fl*U(S,I) + F2*U(1,I) HING0091 C HING0154
C HING0092 C DETERMINE PLASTIC ROTATION OVER HINGE LENGTH WITH 7 POINT SIMPSON HING015S
C SOLVE FOR THE FIRST FOUR UNKNOWN COEFFICIENTS. HING0093 C INTEGRATION FOR PARTl, AND EXACT INTEGRATION FOR PART2. HING0156
C HING0094 C HING0157
CAlL INVER(XK,4) HING009S NWP = 7 HING0158
DO 120 I~l, 4 HING0096 NWPI ~NWP-l HINGOl59
120 A(I) ~ (XK(I,3)-XK(I,4))/F3 HING0097 DW = WP/NWPl HINGOl60
C HING0098 WW 0.0 HINGOl61
C SOLVE FOR THE LAST TWO UNKOWN COEFFICIENTS . HING0099 DO 2S0 I=l,NWP HINGOl62
C HING0100 ARG = l.-(XMEO+XMOO+BB*WW+CC*ww*WW)/XMULT HING0163
TI ~ 0.0 HING0101 IF(ARG.LE.O.O) ARG ~ 0.0000001 HING0164
T2 ~ 0.0 HING0102 FW(I) = 1./SQRT(3.*ARG) HING016S
DO 130 I~l, 4 HINGOI03 250 WW = WW + OW HINGOl66
Tl 2TI + XK(S,I)*A(I) HING0104 SIMP = 0.0 HING0167
130 T2 = T2 + XK(6,I)*A(I) HINGOIOS DO 260 I=1,NWPl,2 HINGOl68
A(S) (TI-T2)/(Fl*HPI) HINGOI06 260 SIMP - SIMP + FW(I) +4.*FW(I+1) + FW(I+2) HINGOl69
A(6) - T1 HING0107 PARTI = SIMP*OW/3 . HING0l70
....... C HINGOI08 PART2 - WP/XMYLO*(XMEO+BE*WP/2.+CE*WP·WP/3.) HING0l71
01 COMPUTE STRUCTURAl RESPONSES FOR A UNIT APLLIED END MOMENTS. HINGOl09 ROTAP F4* (PARTl-PART2) HINGOl72
00 C
C HINGOllO C HING0l73
THETA = HPI HINGOlll C COMPARE ROTATION FROM ELASTIC SOLUTION,ROTAE , WITH THE ROTATION HINGOl74
ROTAT = 0.0 HING01l2 C OF THE PLASTIC HINGE, ROTAP. HING0175
DO 150 N=I,NPO HING01l3 C HINGOl76
DESULT(3,N) = A(S) HING01l4 ROTAE ~ -ROTAT*DMO HINGOl77
DESULT(4,N) -A(S)*THETA*F2 + A(6) HINGOllS RATIO = ROTAE/ROTAP HING0l78
DESULT(S,N) 0.0 HING01l6 IF(ABS(RATIO-l.) .LT.O.Ol) GO TO 300 HING0179
DESULT(6,N) -A(S)*PRAD*SPK HING01l7 IF(ROTAE.LT.ROTAP) DMLOW = DMO HING0180
DESULT(7,N) ~ 0.0 HING01l8 IF (ROTAE.GT.ROTAP) DMHIGH = DMO HINGOl81
DESULT(8,N) -A(S)*SPK HING01l9 KOUNT - KOUNT + 1 HINGOl82
CAlL SETU(THETA,CI,C2,C3,C4,SQRAl,XP,XQ,U) HING0120 IF(KOUNT.GT.30) GO TO 400 HINGOl83
DO 140 1=1,4 HINGOl2l GO TO 200 HING0184
IF(N.EQ.NPO) ROTAT ~ ROTAT + U(3,I)*A(I)/PRAD HING0122 C HING0185
DESULT(3,N) - OESULT(3,N) + A(I)*U(2,I) HINGOl23 C COLLECT CONVERGED SOLUTION AND ADD TO ELASTIC SOLUTION HINGOl86
DESULT(4,N) - DESULT(4,N) - A(I)*(FI*U(S,I)+F2*U(I,I)) HING0124 C HING0187
OESULT(S,N) DESULT(S,N) + A(I)*F3*U(4,I) HING012S 300 CONTINUE HING0188
DESULT(6,N) - DESULT(6,N) - A(I)*(f3/PRAD*U(6,I)+PRAD*SPK*U(2,I)) HING0126 K - NPPT HINGOl89
DESULT(7,N) DESULT(7,N) + A(I)*F3/PRAD*U(S,I) HINGOl27 THETA - HPI HING0190
140 DESULT(8,N) DESULT(8,N) - SPK*A(I)*U(2,I) HINGOl28 DO 350 N=l,NPO HING0191
THETA = THETA-DTHETA HINGOl29 RDISP = DESULT(3,N)*DMO HING0192
150 CONTINUE HING0130 TDISP = DESULT(4,N)*DMO HINGOl93
C HINGOl3l DESULT(3,N) RDISP*COS(THETA) - TDISP*SIN(THETA) HING0194
C COMPUTE PLASTIC HINGE ROTATION FOR THE ASSUMED END MOMENT, DMO . HING0132 DESULT(4,N) ROISP*SIN(THETA) + TDISP'COS(THETA) HING0195
C HING0133 DESULT(3,K) OESULT(3,N) HING0196
DMMAX = XMEO-XMYLD HING0134 DESULT(4,K) -OESULT(4,N) HINGOl97
DMMIN = XMEO-XMULT HING013S THETA = THETA-DTHETA HINGOl98
IF(DMMIN.LT.O.O) DMMIN 0.0
2 HING0136 DO 325 J~S,8 HINGOl99
DMRIGH = DMMAX HING0l37 DESULT (J, N) DESULT(J,N)*DMO HING0200
DMLOW = DMMIN HING0l38 DESULT(J,K) OESULT(J,N) HING020l
KOUNT = 0 HING0l39 325 CONTINUE HING0202
DESULT(7,K) ~ -DESULT(7,K) HING0203 C PLACED ON TOP OF ELEMENT NEL. INTP0032
350 K = K-l HING0204 C INTP0033
C HING0205 DPRES - 0.0 INTP0034
DO 360 N=l,NPPT HING0206 DO 200 I=l,NELEM INTP0035
DO 360 J=3,8 HING0207 lAC - MOD(MNO(I),IOOO)/IO INTP0036
360 RESULT(J,N) = RESULT(J,N) + DESULT(J,N) HING0208 IF(IAC.NE.IA) GO TO 200 INTP0037
C HING0209 MAT = MNO(I)/1000 INTP0038
C EVALUATE HINGE CHARACTERISTICS HING02l0 MNX ~ MNO(I) -MAT*1000-IAC*10 INTP0039
C HING0211 IF(MNX.NE.O) GO TO 200 INTP0040
HLONG = WP*PRAD HING02l2 NDI IABS(NOD(I,I)) INTP0041
HDEEP = PC*(1.-SQRT(3.*(1.-(XMEO+XMDO)/XMULT))) HING0213 NDI lABS (NOD(l, I)) INTP0042
PHINGE (2) HDEEPI (PI/PS) HING0214 ND2 NOD(2, I) INTP0043
PHINGE(3) ~ 2.*HLONG/(HPI*PRAD) HING02l5 ND3 NOD(3, I) INTP0044
PHINGE(4) 2.*DESULT(4,l)/(RESULT(4,l)-RESULT(4,NPPT)) HING02l6 ND4 ~ NOD(4,I) INTP0045
PHINGE(5) ~ 1./SQRT(3.*(1.-ABS(RESULT(5,NPO))/XMULT)) HING0217 IF(ND2.EQ.ND3) GO TO 200 INTP0046
RETURN HING02l8 INTP0047
C HING02l9 Revise intrinsic funtion to generic form. SCM 3-10-90 INTP0048
C EXIT FOR NO SOLUTION, FULL PENETRATION HING0220 INTP0049
C HING0221 XMIN ~ MIN(X(NDl),X(ND2),X(ND3),X(ND4) INTP0050
400 PHINGE(l) ~ -PHINGE(l) HING0222 XMAX = MAX(X(NDl),X(ND2),X(ND3),X(ND4») INTP005l
WRITE(6,2000) PA,PI,PS HING0223 INTP0052
RETURN HING0224 IF(XNEL.LT.XMIN) GO TO 200 INTP0053
C HING0225 IF(XNEL.GE.XMAX) GO TO 200 INTP0054
2000 FORMAT(lHl,lOX,46H FULL PLASTIC PENETRATION OF HINGE HAS FORMED, IHING0226 INTP0055
X 10X,48H AND A CORRECTIONAL SOLUTION CANNOT BE OBTAINED. I HING0227 YMAX - MAX(Y(NDI),Y(ND2),Y(ND3),Y(ND4)) INTP0056
X lOX, 48H (IT IS SUGGESTED TO USE STIFFER SOIL MATERIAL.) I HING0228 INTP0057
X lOX, 53H THE FOLLOWING RESULTS ARE FROM THE ELASTIC SOLUTION, HING0229 IF(YNEL.GT.YMAX) GO TO 200 INTP0058
X lOX, 42H WHERE THE PIPE SECTION PROPERTIES ARE ... II HING0230 C INTP0059
X 15X,36H THRUST AREA PER UNIT LENGTH ....... E15.5 II HING0231 C SUM PRESSURE CONTRIBUTIONS OF EACH NEW ELEMENT ABOVE NEL. INTP0060
X l5X,36H MOM. OF INERTIA PER UNIT LENGTH E15.S II HING0232 C INTP0061
X 15X,36H SECTION MODULUS PER UNIT LENGTH ... E15.5 II) HING0233 YDEPTH ~ 0.5*IABS(YINDl)-Y(ND3») + ABS(Y(ND2)-Y(ND4))) INTP0062
.- END HING0234 IF(I.EQ.NEL) YDEPTH = 0.5*YDEPTH INTP0063
0\ * * ... 1> .. .. .. 1> + * .. .. 1> .. .. * * • • * * * * * * * INTPOOOI GAM = DEN (MAT) INTP0064
\0
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM INTP0002 DPRES - DPRES + GAM*YDEPTH INTP0065
VERSION 1.0, MARCH 1990 INTP0003 200 CONTINUE INTP0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY INTP0004 C INTP0067
THE FEDERAL HIGHWAY ADMINISTRATION INTP0005 C TOTAL PRESSURE ON NEL DURING THIS INCREMENT IS PREVIOUS PRESSURE INTP0068
* •• * * * * • • • • • • • * * * * . . . . . . . . * * * INTP0006 C PLUS ONE-HALF OF CURRENT OVERBURNDEN INCREMENT. INTP0069
SUBROUTINE INTPI(NOD,ST,X,Y,MNO,EI,GNUI,NEL,MN,IA,NELEM,NPT) INTP0007 C INTP0070
C INTP0008 PNEL - ABS(ST(5,NEL)) + O.S*DPRES INTP007l
C THIS ROUTINE CALCULATES YOUNGS MODULUS AND POISSONS RATIO AS A INTP0009 C INTP0072
C FUNCTION OF OVERBURNDEN PRESSURE, I.E. Y-STRESS. INTPOOlO C FIND OVERBURDEN PRESSURE DATA POINTS ON EITHER SIDE OF PNEL. INTP0073
C INTPOOll C INTP0074
Uncomment this statement in all program modules for double INTP0012 Kl - INTP0075
precision version. SCM 3-10-90 INTP0013 K2 ~ INTP0076
INTP0014 00 300 J~2,NOMI INTP0077
IMPLICIT DOUBLE PRECISION (A-H,O-Z) INTP0015 JI ~ J-l INTP0078
INTPOOl6 IF(PNEL.LT.H(MN,Jl)) GO TO 300 INTP0079
DIMENSION NOD(4,NELEM),ST(6,NELEM),X(NPT),Y(NPT),MNO(NELEM) INTP0017 IF(PNEL.GE.H(MN,J)) GO TO 300 INTP0080
COMMON/MATERLI CP(3,3),DEN(10),E(10,lO),GNU(10,lO),H(10,lO), INTP0018 KI = Jl INTP0081
1 ITYPE(10) ,NON(lO) INTPOOl9 K2 ~ J INTP0082
C INTP0020 GO TO 350 INTP0083
C FOR THE ELEMENT NEL FIND COORDINATES OF CENTER, (XNEL,YNEL) INTP002l 300 CONTINUE INTP0084
C INTP0022 IF(PNEL.LT.H(MN,NOMI)) GO TO 350 INTP0085
NOMI ~ NON(MN) INTP0023 KI ~ NOMI-I INTP0086
XNEL = 0.0 INTP0024 K2 NOMI INTP0087
¥NEL = 0.0 INTP0025 350 DH = H(MN,K2)-H(MN,Kl) INTP0088
DO 100 J=l. 4 INTP0026 C INTP0089
ND = NOD(J,NEL) INTP0027 C COMPUTE CHORD MODULUS AND AVERAGE POISSON RATIO INTP0090
XNEL = XNEL + 0.25*X(ND) INTP0028 C INTP0091
100 YNEL = YNEL + 0.25*Y(ND) INTP0029 DHB = H(MN,K2) - H(MN,KI)'E(MN,K2)/E(MN,KI) INTP0092
C INTP0030 IF(DHB . LE.O.O) DHB = O.Ol*DH INTP0093
C FIND THOSE ELEMENTS IN CURRENT CONSTRUCTION INCREMENT BEING INTP003l EI = E(MN,K2)*DH/DHB INTP0094
GNUI = 0.5*(GNU(MN,K2) + GNU(MN,K1» INTP0095 C PREVIOUS CONVERGED LOAD STEP JMOD0030
RETURN INTP0096 C JMOD0031
END INTP0097 Uncomment this statement in all program modules for double JMOD0032
... " .. 'Ir * * ... '* ......... * .. * * * .. * ................. * ...~ , '" INVROOOl precision version. SCM 3-10-90 JMOD0033
CANDE-69 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM INVR0002 JMOD0034
VERSION 1.0, MARCH 1990 INVR0003 IMPLICIT DOUBLE PRECISION (A-H,O-Z) JMOD0035
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY INVR0004 JMOD0036
THE FEDERAL HIGHWAY ADMINISTRATION INVR0005 DIMENSION ANDA1(15),JFLAG(15),ANDA2(15) JMOD0037
INVR0006 COMMON/LIMITS/PSLIP,SSTRN,PFAIL JMOD0038
SUBROUTINE INVER(A,NMAX) INVR0007 ASTRN=ABS(STRN) JMOD0039
C INVR0006 ASTRNP=ABS(STRNPR) JMOD0040
C INVERT MATRIX A INVR0009 ASTRS=ABS(STRES) JMOD0041
C INVR0010 ASTRSP=ABS(STRESP) JMOD0042
Uncornment this statement in all program modules for double INVROOll IFLAG=O JMOD0043
precision version. SCM 3-10-90 INVR0012 C JMOD0044
INVR0013 C CHECK IF UNLOADING IS OCCURING. IF SO, USE ELASTIC MODULUS JMOD0045
IMPLICIT DOUBLE PRECISION (A-H,O-Z) INVR0014 C JMOD0046
INVR0015 IF(ASTRN.LT.ASTRNP)IFLAG=-l JMOD0047
DIMENSION A(6, 6) INVR0016 IF(IFLAG.EQ.O)GO TO 100 JMOD0048
DO 200 N=l, NMAX INVR0017 PENEW=PE JMOD0049
D=A(N,N) INVR0016 RETURN JMODOOSO
DO 100 J =l,NMAX INVR0019 C JMODOOS1
100 A(N,J) = -A(N,J)/D INVR0020 C CHECK IF LOADING IN ELASTIC REGION. IF SO, USE ELASTIC MODULUS. JMOD0052
DO 150 I=l,NMAX INVR0021 C JMOD0053
IF(N-I) 1l0, 150, 110 INVR0022 100 IF(ASTRS.LT.PSLIP) IFLAG=l JMOD0054
110 DO 140 J=l, NMAX INVR0023 IF(IFLAG.EQ.O) GO TO 200 JMODOOS5
IF(N-J) 120,140,120 INVR0024 IF(JFLAG(NJ) .EQ.2)STRES=STRES/ASTRS*PSLIP JMOD0056
120 A(I,J)=A(I,J)+A(I,N)*A(N,J) INVR0025 IF (JFLAG(NJ) .EQ.2)ASTRS=ABS(STRES) JMOD0057
14 0 CONTINUE INVR0026 IF (JFLAG (NJ) .EQ.2) GO TO 200 JMOD0058
150 A(I,N)=A(I,N)/D INVR0027 JFLAG (NJ) =IFLAG JMOD0059
A(N,N) =1.0/D INVR0028 PENEW=PE JMOD0060
...- 200 CONTINUE INVR0029 RETURN JMOD0061
-..J
o RETURN
END
INVR0030
INVR0031
C
C CHECK IF LOADING IN TRANSITION REGION ELASTIC-SLIP.
JMOD0062
JMOD0063
* * * * * * * * ." ...... * .. * ... * * '" .. * ...... '* * ......... .. .. JMODOOOI C IF SO, USE WEIGHTED TRANSITION MODULUS. JMOD0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM JMOD0002 C WEIGHT IS DETERMINED ON FIRST ITERATION SUCH THAT THE JMOD0065
VERSION 1.0, MARCH 1990 JMOD0003 C FIRST GUESS fOR PENEW IS 1.01'PES (THIS WORKS BEST JMOD0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY JMOD0004 C FOR CONVERGENCE) JMOD0067
THE FEDERAL HIGHWAY ADMINISTRATION JMOD0005 C JMOD0068
... ... * ~ ... * ... * * * * * ~ * ... * * * * ... * ... .. ... .. ... ... * ... ... * * * JMOD0006 200 IF(ASTRS.GE.PSLIP .AND. PSLIP.GT.ASTRSP)IFLAG=2 JMOD0069
C JMOD0007 IF(IFLAG.EQ.O) GO TO 300 JMOD0070
C JMOD0006 IF(ASTRN.GT.SSTRN .AND. PSLIP.GT.ASTRSP) GO TO 900 JMOD0071
C * ... ... * ... * * . . SUBROUTINE JMOD ... ... * * * * * ... ... JMOD0009 PENEW=(PE-PES)* (PSLIP-ASTRSP)* (1.-PNU**2)/PE/(ASTRN-ASTRNP)+PES JMOD0072
C NEW ADDITION SUBROUTINE IN 1983 FOR JOINT SLIPPING BEHAVIOR JMOD0010 IF(JCON.NE.1) GO TO 250 JMOD0073
C JMODOOll ANDA=(PEOLD-1.01*PES) 1 (PEOLD-PENEW) JMOD0074
SUBROUTINE JMOD(STRN,STRNPR,PE,PES,PEP,PEF,STRES,STRESP,PEOLD JMOD0012 IF(ANDA.LT.1.0)ANDA=1.0 JMOD0075
',PENEW,PNU,IFLAG,JCON,NJ) JMOD0013 ANDA1(NJ)=ANDA JMOD0076
C JMOD0014 250 PENEW=ANDA1(NJ)*PENEW+(1.0-ANDA1(NJ»*PEOLD JMOD0017
C THE OBJECTIVE OF THIS SUBROUTINE IS TO COMPUTE PENEW AND I FLAG , JMOD0015 IF(PENEW.GT.PE) PENEW=(PE+PEOLD) 12. JMOD0078
C WHERE PENEW IS THE CURRENT EFFECTIVE YOUNGS MODULUS FOR AXIAL JMOD0016 IF(PENEW.LT.PES.AND.JCON.NE.1) PENEW=(PES+PEOLD) 12. JMOD0019
C STRAIN, AND IFLAG IS A CODE FOR IDENTIFYING WHAT REGION CONTROLS JMOD0017 IF(PENEW.LT.PES.AND.JCON.EQ.1)PENEW=1.01*PES JMOD0080
C THE CALCULATIONS OF PENEW JMOD0016 JFLAG(NJ) =1 FLAG JMOD0081
C I FLAG= 0 NO REGION, (ERROR SOMEHOW) JMOD0019 RETURN JMOD0062
C !fLAG=l ELASTIC REGION, (PRE SLIP) JMOD0020 C JMOD0083
C IFLAG=2 TRANSITION , (ELASTIC-SLIP REGION) JMOD0021 C CHECK IF LOADING IN PURE SLIPPING REGION. IF SO,USE SLIPPING JMOD0084
C IFLAG=3 SLIP REGION JMOD0022 C MODULUS PES JMOD0085
C IFLAG=4 TRANSITION ,(SLIP-POSTSLIP REGION) JMOD0023 C JMOD0086
C I FLAG= 5 POST SLIP REGION JMOD0024 300 IF(SSTRN.GT.ASTRN .AND. ASTRSP.GE.PSLIP) IFLAG=3 JMOD0087
C IFLAG=6 TRANSITION, (POSTSLIP-FAILTURE REGION) JMOD0025 IF(IFLAG.EQ.O) GO TO 400 JMOD0068
C IFLAG=7 FAILURE REGION JMOD0026 IF (JFLAG(NJ) .EQ.4 .AND. ASTRN.LT.SSTRN) STRN=STRN/ASTRN*SSTRN JMOD0069
C IFLAG=-l UNLOADING,ELASTIC REGION JMOD0027 IF (JFLAG(NJ) .EQ.4 .AND. ASTRN.LT.SSTRN) ASTRN=ABS(STRN) JMOD0090
C JMOD0026 IF (JFLAG (NJ) .EQ.4) GO TO 400 JMOD0091
C START BY SETTING ABSOLUTE VALUES TO CURRENT STRAIN OF JMOD0029 PENEW=PES JMOD0092
RETURN JMOD0093 C JMOD0156
C JMOD0094 700 IF(ASTRS.GT.PFAIL .AND. ASTRSP.GE.PFAIL)IFLAG=7 JMOD0157
C CHECK IF LOADING IN TRANSITION REGION SLIP-POSTSLIP. IF SO, JMOD0095 IF(IFLAG.EQ.O) GO TO 800 JMOD0158
C USE WEIGHTED TRANSITION MODULUS JMOD0096 IF(JFLAG(NJ) . EQ.4) GO TO 900 JMOD0159
C JMOD0097 PENEW=PEF JMOD0160
400 IF(ASTRN.GE.SSTRN .AND. SSTRN.GT.ASTRNP)IFLAG~4 JMOD0098 RETURN JMOD0161
IF(IFLAG.EQ.O) GO TO 500 JMOD0099 C JMOD0162
JFLAG (NJ) =1 FLAG JMOD0100 C CHECK IF IFLAG STILL EQUAL ZERO. IF SO,WE HAVE AN ERROR, JMOD0163
PENEW=PEOLD*(ASTRN-ASTRNP)/«SSTRN-ASTRNP)*(l.-PES/pEP) JMOD0101 C I . E.,LOAD STEP IS TOO LARGE JMOD0164
* +(ASTRN-ASTRNP)*PEOLD/PEP) JMODOI02 C JMOD0165
JMOD0103 800 WRITE(6,2000) JMOD0166
Revise intrinsic function to generic form. SCM 3-10-90 JMOD0104 GO TO 950 JMOD0167
JMODOI05 900 WRITE(6,2100) JMOD0168
IF(JCON.EQ.1 .AND. PEOLD.EQ.PES)SRATIO=LOG10(PEP/PES)/3 . * JMOD0106 950 STOP JMOD0169
* (SSTRN-ASTRNP) I (ASTRN-SSTRN) JMOD0107 2000 FORMAT(IIII,44H "FATAL ERROR: I.E.OR TOO LARGE LOAD STEP*') JMOD0170
JMOD0108 2100 FORMAT(IIII,20H TOO LARGE LOAD STEP) JMODOl71
IF(PENEW.LT.PEOLD) GO TO 450 JMOD0109 c*************************************************···**********··*******JMOD0172
ANDA=2.*PENEW/pEOLD*SRATIO JMODO 11 0 END JMOD0173
IF(ANDA.LT.l.2)ANDA=1.2 JMOD0111 * • * * * '* * '* .. * * * ...... * * * ..... '* .. * . . . . + ... * ...... .. MOOMODO!
IF«PENEW/PEOLD) .LT.1.01)ANDA=1.0 JMODO 11 2 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM MODM0002
IF(PES.GT . 0 . 0003*PEP)ANDA=1.0 JMOD0113 VERSION 1.0, MARCH 1990 MODM0003
PENEW~ANDA*PENEW+(l.-ANDA)*PEOLD JMOD0114 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY MOOM0004
RETURN JMODO 11 5 THE FEDERAL HIGHWAY ADMINISTRATION MODM0005
450 ANDA=2.*PEOLD/PENEW JMOD0116 * * * ... * * * * * • ~ * • • • • * ~ • • • * • • * • * MODM0006
IF«PEOLD/PENEW) .LT.1.01)ANDA=1.0 JMOD0117 SUBROUTINE MODMSH (BIV,NOD,NODB,X, Y,NBPTC,MAXBC, NELEM,NPT) MODM0007
PENEW=ANDA*PENEW+ (l.-ANDA) *PEOLD JMODO 11 8 C MODM0008
RETURN JMOD01l9 C*- ROUTINE ALLOWS THE USER TO MODIFITY THE LEVEL 2 MESH MODM0009
C JMOD0120 C MODM0010
C CHECK IF LOADING IN POSTSLIP REGION. IF SO, USE POSTSLIP MODULUS JMOD0121 Un comment this statement in all program modules for double MODMOOll
C JMOD0122 precision version. SCM 3-10-90 MODM0012
,..... 500 IF(PFAIL.GT . ASTRS .AND. ASTRNP.GE.SSTRN)IFLAG-5
IF(IFLAG.EQ . O)GO TO 600
JMOD0123
JMOD0124 IMPLICIT DOUBLE PRECISION (A-H,O-Z)
MODM0013
MODM0014
,.....
-..J
IF(JFLAG(NJ) .EQ.6)STRES=STRES/ASTRS*PFAIL JMOD0125 MODM0015
IF(JFLAG(NJ) .EQ. 6) ASTRS-ABS (STRES) JMOD0126 DIMENSION BIV(3,NBPTC), NOD(7,NPT),NODB(NBPTC),X(NPT),Y(NPT) MODM0016
IF (JFLAG(NJ) .EQ.6) GO TO 600 JMOD0127 MODM0017
JFLAG (NJ) =IFLAG JMOD0128 Revise array dimension from AN(2) to AN(3) for generalized MODM0018
PENEW=PEP JMOD0129 boundary condition option. SCM 10-25-89 MODM0019
RETURN JMODO 13 0 MODM0020
C JMOD0131 DIMENSION AN(3),ANI(2),BV(3),IFLAG(2),ND(7) MODM0021
C CHECK IF LOADING IN TRANSITION REGION POSTSLIp-FAILURE. IF SO, JMOD0132 DIMENSION RBC(2) MODM0022
C USE WEIGHTED TRANSITION MODULUS. JMOD0133 MODM0023
C JMOD0134 DATA ANI 14HF ~ ,4HD MODM0024
600 IF(ASTRS.GE . PFAIL .AND . ASTRSP.LT . PFAIL) IFLAG=6 JMOD0135 MOOM0025
IF(IFLAG.EQ . O) GO TO 700 JMOD0136 Add data statement for generalized boundary condition option. MODM0026
IF(JFLAG(NJ) .EQ.4) GO TO 660 JMOD0137 SCM 10-25-89 MODM0027
PENEW1=(PEP-PEF)* (PFAIL-ASTRSP)*(1.-PNU**2)IPEPI(ASTRN-ASTRNP)+PEFJMOD0138 MODM0028
IF(JCON.NE.1) GO TO 650 JMOD0139 DATA RBC 14H F ,4H D MODM0029
ANDA=(PEOLD-1.01'PEF)/(PEOLD-PENEW1) JMOD0140 MODM0030
IF(ANDA.LT.1.0)ANDA~1.0 JMOD0141 C MODM0031
ANDA2(NJ)=ANDA JMOD0142 Co. READ A CONTROL CARD TO DETERMINE WHAT PARAMETERS ARE TO BE CHANGEDMODM0032
650 PENEW=ANDA2(NJ)*PENEW1+(1.-ANDA2(NJ))*PEOLD JMOD0143 C MODM0033
IF(PENEW.LT.PEF.AND.JCON.NE.1)PENEW=(PEF+PEOLD) 12. JMOD0144 READ (5,5010) NEWXY, NEWEL, NEWBD MODM0034
If(PENEW.LT.PEf.AND.JCON.EQ.1)PENEW=1.01*PEF JMOD0145 WRITE(6,6010) NEWXY, NEWEL, NEWBD MODM0035
IF(PENEW.GT.PEP) PENEW= (PEP+PEOLD) 12. JMOD0146 IF (NEWXY + NEWEL+ NEweD .EQ. 0) GO TO 120 MODM0036
JFLAG(NJ)=IFLAG JMOD0147 IF (NEWXY .EQ. 0) GO TO 30 MOOM0037
RETURN JMOD0148 WRITE( 6,6020) MODM0038
C JMOD0149 C MODM0039
660 IFLAG=5 JMOD0150 Co. CHANGE THE NODE COORDINATES MODM0040
JFLAG (NJ) =IFLAG JMOD0151 C MODM0041
PENEW=PEP JMOD0152 DO 20 N = 1, NEWXY MODM0042
RETURN JMOD0153 READ(5,5015) NEWNOD, XCOORD, YCOORD MODM0043
C JMOD0154 IF (NEWNOD .GT. 0 .AND. NEWNOD .LT. NPT) GO TO 10 MODM0044
C CHECK IF LOADING IN FAILURE REGION. IF SO, USE fAILURE MODULUS . JMOD0155 WRITE(6,6030) NEWNOD MODM0045
GO TO 20 MODM0046 ELSE MODM0109
10 WRITE(6,6040) NEWNOD, X(NEWNOD),Y(NEWNOD),XCOORD,YCOORD MODM0047 AN(3) - RBC(2) MODMOllO
X (NEWNOD) XCOORD MODM0048 END IF MODMOlll
Y(NEWNOD) = YCooRD MODM0049 WRITE(6,6080) NU,IA,AN(1),BV(1),AN(2),BV{2), MODM01l2
20 CONTINUE MODM0050 X BV(3) ,AN(3) MODM01l3
C MODM0051 BV(3)=BV(3)'0.0174533 MODM01l4
C' · READ IN MODIFIED ELEMENTS MODM0052 MODM0115
C MODM0053 DO 100 I = 1, 3 MODM0116
30 CONTINUE MODM0054 100 BIV(I,NBPTC) = BV(I) MODM01l7
IF (NEWEL .EQ. 0) GO TO 70 MODM0055 NODB(NBPTC) = NU'10000 + IA'lOO + IFLAG(1)*10+IFLAG(2) MODM0118
WRITE{6,6050) MODM0056 110 CONTINUE MODMOl19
DO 60 N = 1, NEWEL MODM0057 120 CONT INUE MODM0120
READ{5,5030) NE, (ND(I),I=1, 7) MODM0058 RETURN MODMOl21
IF (NE.GT. 0 .AND. NE .LE. NELEM) GO TO 40 MODM0059 5010 FORMAT (315) MODM0122
WRITE(6,6060) NE MODM0060 5015 FORMAT (I5,5X,2FlO.0) MODM0123
GO TO 60 MODM0061 5030 FORMAT (815) MODM0124
40 CONTINUE MODM0062 5040 FORMAT (ZI5,F10.0,I5,F10.0,F10.0,I5) MODM0125
DO 50 K = 1, 7 MODM0063 6010 FORMAT {lH1,10X,47H * * * CHANGES TO STANDARD LEVEL 2 MESH * • * 'MODM0126
IF (ND{K) .EQ. 0) ND{K) = NOD{K,NE) MODM0064 1 110X,40H ' NUMBER OF NODES TO BE CHANGED ------- ,17, MODM0127
IF (ND{K) .EQ. -1) ND(K) = 0 MODM0065 1 1H' 110X,40H • NUMBER OF ELEMENTS TO BE CHANGED ---- ,17, MODM0128
50 CONTINUE MODM0066 1H* 110X,40H • ADDITIONAL BOUNDARY CONDITIONS ------ ,17, MODM0129
WRITE{6,6070) NE, (NOD{I,NE), 1=1, 7), (ND(I), 1=1, 7) MODM0067 4 IH*/IOX,47H * * * * ~ * ... * * * * * ... * * * * * ... *MODM0130
DO 55 K = 1, 7 MODM0068 5 I I II MODM0131
55 NOD(K,NE) = ND{K) MODM0069 6020 FORMAT (lH ,13X,11HNODE NUMBER,13X,15HOLD CooRDINATES,20X, MODM0132
60 CONTINUE MODM0070 1 15HNEW COORDINATES I MODM0133
70 CONTINUE MODM0071 2 40X,lHX,10X,1HY,25X,lHX,10X,lHY) MODM0134
C MODM0072 6030 FORMAT {I1103H • • WARNING NODE NUMBER IS OUTSIDE OF ALLOWABLE RANMODM0135
C'· DEFINE NEW BOUNDARY CONDITIONS MODM0073 IGE (O TO NPT) AND CARD WILL BE SKIPPED NODE READ = ,IS III) MODM0136
C MODM0074 6040 FORMAT (15X,I5,10X,FIO.2,10X,FlO.2,15X,F10.2,10X,F10.2) MODM0137
IF (NEWBD .EQ. 0) RETURN MODM0075 6050 FORMAT (111110X,15H ELEMENT NUMBER,lOX, 19H ELEMENT CONNECTIVE, MODM0138
.....
-...)
WRITE(6,6090)
DO 110 N = 1, NEWBD
MODM0076
MODM0077
1
2
5X,16H MATERIAL NUMBER,2X,19H CONSTRUCTION INCR. ,5X,MODM0139
4HX(7)/33X,lHI,7X,lHJ,7X,lHK,7X,lHL/) MODM014 0
tv READ{5,5040) NU,IFLAG{l),BV{l),IFLAG{2),BV{2),BV{3),IA MODM0078 6060 FORMAT {11110X,46H* , • WARNING ELEMENT NUMBER IS OUT OF BOUNDS. MODM0141
NBPTC = NBPTC + 1 MODM0079 ,40H (1 TO NELEM) ELEMENT NUMBER IS ••••••• ,151/1) MODM0142
IF (NBPTC .LE. MAXBC) GO TO 75 MODM0080 6070 FORMAT{14X,I5,7X,4{4X,I4),7X,I4,15X,I5,12X,I4,5X, MODM0143
WRITE(6,6120) MAXBC,NBPTC MODM0081 1 22HOLD ELEMENT PARAMETERS/26X, 4 {4X,I4),7X,I4,15X,I5, MODM0144
GO TO 110 MODM0082 2 12X,I4,5X,22HNEW ELEMENT PARAMETERS I) MODM0145
75 IF (NU .GT.O.AND. NU .LE. NPT) GO TO 80 MODM0083 MODMOH6
WRITE { 6,6030) NU MODM0084 Revise formats for generalized boundary condition option. MODM0147
STOP 76 MODM0085 SCM 10-25-89 MODMOH8
80 CONTINUE MODM0086 MODMOH9
DO 90 J = 1, Z MODM0087 6090 FORMAT{lH1,lX,31H' • • BOUNDARY CONDITIONS' • '/2X, MODM0150
IF (IFLAG{J) .EQ. 0) AN{J) = ANI(l) MODM0088 X59H{FORCES = LBS; DISPLACEMENTS = INCHES; ROTATIONS = DEGREEs)11 MODM0151
IF (IFLAG(J) .EQ. 1) AN{J) = ANI{Z) MODM0089 XZX,8HBOUNDARY,6X,4HLOAD,6X, 14 HX-FORCE OR,6X,14HY-FORCE OR,MODM015Z
MODM0090 X6X,lZHX-Y ROTATION,6X,15HBEAM ROTATIONAL/6X,4HNODE,6X,4HSTEP,6X, MODM0153
Add extended boundary condition definition. MGK 3-18-89 MODM0091 X14HX-DISPLACEMENT,6X,14HY-DISPLACEMENT,ZZX, MODM0154
MODM0092 X19HBOUNDARY CONDITIONSII) MODM0155
IF (IFLAG(J) . EQ. Z) AN(J) ANI (2) MODM0093 6080 FORMAT(5X,I5,5X,I5,4X,A4,E1Z.4,4X,A4,E12.4,4X,E1Z.4,14X,A4) MODM0156
IF (IFLAG{J) .EQ. 3) AN{J) ANI{l) MODM0094 MODM0157
MODM0095 61Z0 FORMAT (lH1,50H FATAL ERROR MAX. NUMBER OF BOUNDARY POINTS IS ,I5/MODM0158
90 CONTINUE MODM0096 1 SOH NUMBER OF BOUNDARY POINTS REQUIRED BY INPUT ,151 MODM0159
MODM0097 2 50HTO RUN THIS PROBLEM INCREASE SIZE OF BLANK COMMON IMODM0160
Extend boundary condition output for rotational constraints . MODM0098 3 SOH IN SUBROUTINE PREHERO AND RECOMPILE THE ROUTINE ) MODM0161
SCM 10-Z5-89 MODM0099 END MODM016Z
MODM0100 ..... * ... * * ... * ... * * * . . * * * ... * • PLASOOOI
IF(IFLAG{1) .EQ.O .AND. IFLAG(2).EQ.0) THEN MODM0101 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM PLASOOOZ
AN(3) = RBC{l) MODMOl02 VERSION 1.0, MARCH 1990 PLAS0003
ELSE IF{IFLAG(l) .EQ.Z .AND. I FLAG (2) .EQ.O) THEN MODM0103 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY PLAS0004
AN(3) = RBC(l) MODM0104 THE FEDERAL HIGHWAY ADMINISTRATION PLAS0005
ELSE IF{IFLAG{l) .EQ.O .AND. IFLAG{Z).EQ.2) THEN MODM0105 * * * ... ... ... ... * ... * * * * * ... ... ... * * * * * * * ... * • * * * * • * PLAS0006
AN(3) = RBC(l) MODM0106 SUBROUTINE PLASTI(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA, PLAS0007
ELSE IF(IFLAG(l) .EQ.Z .AND. IFLAG{Z) .EQ.Z) THEN MODMOI07 1 PIPMAT,RESULT,SK,SM,XMODE) PLAS0008
AN(3) = RBC(l) MODM0108 C SUBROUTINE FOR PLASTIC PIPE CULVERTS. PLAS0009
C PLASOOIO PIPMAT(3,N) PA PLAS0073
C SUBROUTINE FOR CORRUGATED STEEL CULVERTS. PLASOOll PIPMAT (4, N) PI PLAS0074
C PLAS0012 140 PIPMAT(S,N) ~ PDEN*PA PLAS0075
C THE FOLLOWING ADDITIONS TO THE • RESULT * ARRAY ARE CALCULATED PLAS0013 PDIA = PID + PT PLAS0076
C IN THIS SUBROUTINE. PLAS0014 RETURN PLAS0071
C PLAS0015 C PLAS0078
C RESULT(10,N) BENDING STRESSES IN OUTER FIBERS. PLAS0016 C PLAS0079
C RESULT(ll,N) THRUST STRESS (AVERAGE OVER SECTION) PLAS0017 C SECOND ENTRY DETERMINES MAXIMUM STRUCTURAL RESPONSES FOR PLAS0080
C RESULT(12,N) SHEAR STRESS (AVERAGE OVER SECTION) PLAS0018 C EVALUATING THE PIPE IN TERMS OF FAILURE CRITERIA. IN THE DESIGN PLAS0081
C PLAS0019 C MODE, THE PROGRAM ITERATES TO FIND ADEQUATE SECTION PROPERTIES. PLAS0082
Uncomment this statement in all program modules for double PLAS0020 C PLAS0083
precision version. SCM 3-10-90 PLAS0021 200 IEXIT ~ 0 PLAS0084
PLAS0022 C PLAS0085
IMPLICIT DOUBLE PRECISION (A-H,O-Z) PLAS0023 C CHECK FOR CONVERGENCE OF NONLINEAR SOIL LAW PLAS0086
PLAS0024 C PLAS0087
Revise pipe dimension statements from 30 to 99 . PLAS0025 IF(NINC.GT.O) GO TO 205 PLAS0088
SCM 5-22-89 PLAS0026 IEXIT = -1 PLAS0089
PLAS0027 RETURN PLAS0090
DIMENSION FS(3),PFS(3),PIPMAT(5,99),RESULT(20,99) PLAS0028 C PLAS0091
PLAS0029 C EVALUATE CURRENT MAXIMUM STRESSES, DISPLACEMENTS, AND PRESSURES. PLAS0092
DATA E,XNU,YIELD/1600000 . ,O.3,25000.1 PLAS0030 C PLAS0093
DATA NFS,FS/3,4.,3.,3 . 1 PLAS0031 205 TMAX 0.0 PLAS0094
DATA FF 10.333/ PLAS0032 BMAX = 0.0 PLAS0095
DATA ANALYS, DESIGN I 4HANAL , 4HDESI/ PLAS0033 PAVG = 0.0 PLAS0096
C PLAS0034 UYMAX = RESULT(4,l) PLAS0097
GO TO (100,200),ICOME PLAS0035 UYMIN = RESULT(4,l) PLAS0098
C PLAS0036 C PLAS0099
C FIRST ENTRY ESTABLISHES PIPE PROPERTIES, AND SAFETY FACTORS PLAS0037 DO 210 N=l,NPPT PLAS0100
C PLAS0038 RESULT(10,N) - RESULT(5,N) Ips PLASOIOI
100 READ(5,1000) PID ,PE,PNU,PYIELD,PDEN PLAS0039 RESULT(ll,N) - RESULT(6,N)/PA PLAS0102

--
-....)
W
IF(PE.LE.O.O) PE ~ E
IF(PNU.LE. 0.0) PNU ; XNU
IF(PYIELD.LE.O.O) PYIELD ~ YIELD
PTMIN ~ (12 . 0 * PID •• 2 I (FF • pel) •• 0.333
PLAS0040
PLAS0041
PLAS004Z
PLAS0043
RESULT(12,N) = RESULT(7,N)/PA
IF(ABS(RESULT(lO,N».GT.BMAX) BMAX - ABS(RESULT(lO,N»
IF(ABS(RESULT(ll,N» .GT.TMAX) TMAX - ABS(RESULT(ll,N»
IF(RESULT(4,N) .GT.UYMAX) UYMAX = RESULT(4,N)
PLASOI03
PLAsOI04
PLAS0105
PLAS0106
C PLAS0044 IF(RESULT(4,N) .LT.UYMIN) UYMIN = RESULT(4,N) PLASOI07
WRITE(6,2000) PID ,PE,PNU,PYIELD,PDEN PLAS004S PAVG - PAVG + RESULT(8,N) PLAS0108
IF(XMODE.EQ.DESIGN) GO TO 110 PLAS0046 210 CONTINUE PLAS0109
READ(S,1000) PT PLAS0047 PAVG = ABS(PAVG/NPPT) PLAS0110
IF(PT .LT. PTMIN) WRITE(6, 2001) PTMIN PLAS0048 DISP = UYMAX-UYMIN PLASOl11
PA - PT PLAS0049 IF (SM .EQ. 0.0) SM = 1.0 PLAS0112
PI ~ PT •• 3 I 12.0 PLAS0050 PBUCK ~ PDIA**3/(36.*PE*SM*(1.-SK»*(1.-PNU·*Z) PLASOll3
PS : PT •• 2 I 6.0 PLAS0051 PCRIT = SQRT(PI/PBUCK) PLASO 11 4
WRITE(6,2010) PT, PA, PI, PS PLAS0052 C PLASOllS
GO TO 130 PLAS0053 C DETERMINE THE ACTUAL SAFETY FACTORS PLAS01l6
C PLAS0054 C PLASOll7
110 READ (5, 1000) (PFS(I),I=l,NFS) PLAS0055 DISPSF = 0.2 • PDIA I DISP PLAS01l8
DO 120 I=l,NFS PLAS0056 OUTFSF ~ PYIELD I (TMAX + BMAX) PLASO 11 9
IF(PFS(I) .GT.O.O) GO TO 120 PLAS0057 BUCKSF = PCRIT I PAVG PLAS0120
PFS(I) = FS(I) PLAS0058 IF(XMODE.EQ .ANALYS) GO TO 300 PLAS0121
120 CONTINUE PLAS0059 C PLAS0122
WRITE(6,2100) (PFSII),I-l,NFS) PLAS0060 C ARE ACTUAL SAFETY FACTORS ACCEPTABLE PLAS0123
C PLAS0061 C PLAS0124
PT PTMIN PLAS0062 IF(IA.LT.NINC) RETURN PLAS0125
PA PTMIN PLAS0063 ITER ~ ITER + 1 PLAS0126
PI PTMIN 3 12 . 0 PLAS0064 DISPR : PFS(l) / DISPSF PLAS0127
PS = PTMIN 2 6.0 PLAS0065 OUTFR = PFS(Z) IOUTFSF PLAs0128
ITER ~ 0 PLAS0066 BUCKR = PFS(3) I BUCKSF PLAS0129
C PLAS0067 PLAS0130
C INITIALIZE PIPE PROPERTIES ALL AROUND PIPE TO BE THE SAME PLAS0068 Revise intrinsic function to generic form. SCM 3-10-90 PLAS0131
C PLAS0069 PLAS0132
130 DO 140 N~1, NPMAT PLAS0070 RMAX = MAX(DISPR, OUTFR, BUCKR) PLAS0133
PIPMATll,N) - PE PLAS0071 PLAS0134
PIPMAT(2, N) = PNU PLAS0072 IF(ABS(1.0 - RMAX) .LE. 0.05) GO TO 250 PLAS0135
C PLAS0l36 XVALUATED, I 10X,37H WHERE THE SECTION PROPERTIES ARE II PLAS0199
C DESIGN ... REVISE SECTION PROPERTIES AS REQUIRED PLAS0l37 X 15X, 36H THICKNESS OF PIPEWALL (IN) ........ , FlO.5 II PLAS0200
C PLAS0l38 X 15X,36H THRUST AREA PER UNIT LENGTH .....•. , E15.5 II PLAS0201
PTNEW ~ PT * RMAX PLAS0139 X lSX,36H MOM. OF INERTIA PER UNIT LENGTH ... , E15.S II PLAS0202
IF( PTNEW .LT. PTMIN) GO TO 250 PLAS0l40 X lSX,36H SECTION MODULUS PER UNIT LENGTH ... ElS.S II) PLAS0203
PT ~ PTNEW PLAS0l41 2300 FORMAT(lHl,1110X,19H DESIGN RESULTS AT ,I2,llH ITERATIONS II PLAS0204
PA ~ PT PLAS0142 X 15X, 35H REQUIRED WALL THICKNESS....... FlO.S II PLAS020S
PI PT 12.0 PLASOl43 X ISX, 35H REQUIRED THRUST AREA ...••.... FlO.S II PLAS0206
PS ~ PT 6.0 PLAS0144 X l5X, 3SH REQUIRED MOM. OR INERTIA ..... FlO.S II PLAS0207
C PLAS0145 X 15X, 35H REQUIRED SECTION MODULUS ..... FIO.S III) PLAS0208
C UPDATE SECTION PROPERTIES AND CHECK FOR CONVERGENCE. PLAS0l46 2800 FORMAT(lHl,lllOX,32H STRUCTURAL RESPONSES OF CULVERT, PLAS0209
C PLAS0147 X 3X, 12H LOAD STEP ~ ,12 II PLAS0210
IF(ITER.GT.5) WRITE(6,2200) ITER,PT,PA,PI,PS PLAS0148 X 4X,9H X-COORD.,5X,8H X-DISP.,4X,9H N-PRES.,6X,7H MOMENT,6X, PLAS0211
IF(ITER.GT.5) GO TO 300 PLAS0149 X 7H THRUST,7X,6H SHEAR 14X,9H Y-COORD.,5X,8H Y-DISP.,SX,8H S-PRES.PLAS0212
IEXIT ~ -2 PLAS0150 X ,4X,9H M-STRESS,4X,9H T-STRESS,4X,9H S-STRESS , PLAS02l3
GO TO 130 PLAS0151 X (1IF13.2,SE13.3/F13.2,5E13.3» PLAS0214
250 WRITE(6,2300) ITER,PT,PA,PI,PS PLAS0152 2900 FORMAT(lHl,111110X,34H CALCULATED SAFETY FACTORS AT STEP, 13 III PLAS02l5
C PLAS0153 X15X, SOH DISPLACEMENT ......... (DIAMETER*0.2/MAX-DISP.) =,FIO.21IpLAS0216
C PRINTOUT STRUCTURAL RESULTS AND EVALUATION. PLAS0154 X15X, SOH OUTER-FIBER STRESS ... (ULTIMATE I MAXIMUM) ~,FlO.21IPLAS0217
C PLAS0155 X15X, SOH ELASTIC BUCKLING •...... (P-CRITlCAL/P-AVERAGE) =,FIO.21IPLAS0218
300 CONTINUE PLAS0156 X lOX, 21H PERFORMANCE FACTORS fI PLAS0219
C PLAS0157 X15X, SOH HANDELING ....................... (FF*E*I/D**2) ~,FlO.2) PLAS0220
C PRINT FINITE ELEMENT FIELD RESPONSES. PLAS0158 END PLAS0221
C PLAS0159 • * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * PREPOOOl
IF (LEVEL .EQ. 1) GO TO 350 PLAS0160 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM PREP0002
ICOME ~ 3 PLAS0161 VERSION 1.0, MARCH 1990 PREP0003
CALL PRHERO(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA,PIPMAT, PLAS0162 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY PREP0004
RESULT,SK,SM) PLAS0163 THE FEDERAL HIGHWAY ADMINISTRATION PREPOOOS
ICOME ~ 2 PLAS0164 PREP0006
350 CONTINUE PLAS0165 PREP0007

-
' -l
~
C
WRITE (6,2800) lA, (RESULT (1, J) ,RESULT (3, J) ,RESULT (8, J) ,RESULT (5, J) ,PLAS0166
X RESULT (6,J) ,RESULT(7,J) ,RESULT (2,J) ,RESULT(4,J) ,RESULT (9,J),
X RESULT(10,J),RESULT(11,J),RESULT(12,J),J~l,NPPT)
PLAS0167
PLAS0168
PLAS0169
Add RESULT array and NPPT variable to subroutine parameter list. PREP0008
SCM 5-22-89

SUBROUTINE PREP(FEDATA,PIPMAT,DENSTY,ISIZE,KPUTCH,LCODE,LUDATA,
PREP0009
PREPOOIO
PREPOOll
C PLAS0l70 1 LUPLOT,MAXBD,MAXEL,MAXMAT,MAXNP,NPMAT,NPT,NSMAT, PREP0012
PERFAC ~ (FF * PE * PI) I PDIA ** 2 PLAS0171 2 NXMAT,NBPTC,NELEM,PDIA,RESULT,NPPT) PREP0013
WRITE(6, 2900) lA, DISPSF, OUTFSF, BUCKSF, PERFAC PLAS0172 PREP0014
IEXIT = 1 PLAS0173 Uncomment this statement in all program modules for double PREPOOIS
IF(IA.LT.NINC) IEXIT~ 0 PLAS0l74 precision version. SCM 3-10-90 PREP0016
RETURN PLASOn5 PREP0017
C PLAS0176 IMPLICIT DOUBLE PRECISION (A-H,O-Z) PREP0018
C FORMATS PLAS0177 PREP0019
C PLAS0l78 Add RESULT array to dimension statement. PREP0020
1000 FORMAT (6FlO. 0) PLAsOn 9 SCM 5-22-89 PREP0021
2000 FORMAT (III 10X,35H PIPE PROPERTIES ARE AS FOLLOWS ... II PLAS0180 PREP0022
X 15X,36H AVERP£E PIPE DIAMETER (IN.) ....... Fl1.2 II PLAS0181 DIMENSION FEDATA(ISIZE) ,PIPMAT(S,NPMAT) ,RESULT (20,NPPT) ,TITLE(17) PREP0023
X 15X,36H YOUNGS MODULUS OF PIPE (PSI)....... Fll.2 II PLAS0182 PREP0024
X 15X,36H POISSONS RATIO OF PIPE (-) ........ , Fll. 2 I I PLAS0183 Add common statement for output control. SCM 3-18-89 PREP0025
X 15X,36H YIELD STRESS OF PIPE (PSI) ......... , Fll.2 II PLAS0184 PREP0026
X 15X,36H DENSITY OF PIPE (PCI) .............. Fl1.2 I) PLAS0185 COMMON IOUTPUTI IWRT,IPLOT,MAXIT,JCON PREP0027
2001 FORMAT(I 10X,SOH**** WARNING **** PIPE WALL THICKNESS IS LESS THANPLAS0186 PREP0028
X ,8H ALLOWED, F5.2, 4H IN.) PLAS0187 DATA LSTOP,NUMLI 17,2001 PREP0029
2010 FORMAT(II lOX, 31H SECTION PROPERTIES OF PIPE II PLAS0188 DATA XPREP, XMOD 14HPREP, 4HMOD I PREP0030
X 15X, 36H THICKNESS OF PIPEWALL (IN) ......... , FIO.5 II PLAS0189 PREP003l
X 15X, 36H THRUST AREA (IN**2/IN) ............ FlO.5 II PLAS0190 Add logic for evaluating LCODE parameter. SCM 3-18-89 PREP0032
X l5X, 36H MOM. OF INERTIA (IN**4/IN) ........ FlO.5 II PLAS0191 PREP0033
X l5X, 36H SECTION MODULUS (IN**3/IN) ........ FlO.5 /) PLAS0192 IF(LCODE.GT.O) THEN PREP0034
2100 FORMAT(III 10X,43H DESIRED SAFETY FACTORS FOR PIPE DESIGN .,. III PLAS0193 LEVEL ~ LCODE PREP003S
X l5X, 36H DEFLECTION COLLAPSE, (0.2*D) ..•.... , FlO.5 II PLAS0194 ELSE PREP0036
X 15X, 36H OUTER-FIBER ULTIMATE STRESS ........ , FIO.S II PLAS0195 LEVEL = lABS (LCODE/100) PREP0037
X 15X, 36H ELASTIC BUCKLING .................. , FlO.5 I PLAS0196 NCAN ~ IABS(LCODE + LEVEL*lOO) PREP0038
2200 FORMAT(1H1,111 10X,50H DESIGN ITERATIVE PROCEDURE DID NOT CONVERGEPLAS0197 ENDIF PREP0039
X AFTER ,131 10X,55H ITERATIONS. THE LAST SOLUTION IS PRINTED AND EPLAS0198 PREP0040
C ~REP0041 FEDATA(LOCNTP) ,FEDATA(LOCXYG) ,NPT,MAXNP, KPUTCK, PREPOI04
C" GENERATE THE CANNED MESH ~RE~0042 MGENPR,LUPREP) PREPOIOS
C ~REP0043 C PREPOI06
KPUTCK 0 PREP0044 CALL GENEL(FEDATA(LOCNOD) ,FEDATA(LOCLGN) ,NPT,NELEH,MAXEL,KPUTCK, PREPOIO?
LUPREP PREP0045 1 MGENPR,MBAND,LSTOP,LUPREP) PREPOI0B
IF (LEVEL . EQ. 2) LUPREP s LUDATA PREP0046 C PREPOI09
PREP0047 CALL GENEND(FEDATA(LOCX),FEDATA(LOCY),FEDATA(LOCNOD), PREPOllO
Revise control statements for canned mesh additions. ~RE~0048 I FEDATA(LOCNDB),FEDATA(LOCBIV),FEDATA(LOCKDE), PREPOlli
SCM 3-18-89 PREP0049 2 FEDATA(LOCNTP),FEDATA(LOCXYG),NPT,NELEM,NBPTCU,MAXBC, PREP01l2
PREP0050 3 KPUTCK,MGENPR,NSMAT,LSTOP,NUMLI,LUPREP,MAXMAT,NXMAT) PREPOIl3
IF(LEVEL.EQ . 2) THEN PREP005l C PREP01l4
IF(NCAN.EQ.O .OR . NCAN . EQ.I) CALL CANl (LUDATA,KPUTCH,PDIA, PREP0052 C" ROUTINE MODMSH CHANGES THE CAN MESH TO USER SPECS. PREP01l5
X DENSTY) PREP0053 C PREP01l6
IF(NCAN.EQ.2) CALL CANBOX (LUDATA,KPUTCK,DENSTY) ~REP0054 IF (WORD2 .EQ.XMOD) CALL MODMSH(FEDATA(LOCBIV) ,FEDATA(LOCNOD) , PREP01l7
IF(NCAN.EQ.3) CALL CANAR1 (LUDATA, KPUTCK,DENSTY) PREP0055 FEDATA(LOCNDB),FEDATA(LOCX),FEDATA(LOCY), PREP01l8
ENDIF PREP0056 NBPTCU,MAXBC,NELEM,NPT) PREP01l9
PREPOOS? C PREP0120
C PREP0058 C" CHECK NUMBER OF BOUNDARY CONDITIONS PREPOI2I
C'· READ / WRITE MAIN CONTROL CARDS AND SET DEFAULT VALUES PREP0059 C PREP0122
C PREP0060 IF (WORD2 .EQ. XMOD) NBPTC = NUMBC PREPOI23
READ (LUPREP,5010) WORD,TITLE,WORD2,NINC,MGENPR, NPUTCK, IPLOT, PREP0061 IF (NBPTCU .LE. NBPTC) GO TO 70 PREPOI24
I IWRT,NPT, NELEM, NBPTC PREP0062 WRITE(6,6018) NBPTCU, NBPTC PREPOI2S
IF (WORD .EQ. XPREP) GO TO 50 PREP0063 KPUTCK - KPUTCK + 1 PREPOI26
WRITE (6,6005) WORD PREP0064 70 NBPTC - NBPTCU PREPOI27
STOP 14 PREP006S C PREPOI28
C PREP0066 C" SAVE GENERATED DATA PREPOI29
50 WRITE (6,6010) TITLE, NINC, MGENPR, NPUTCK,IPLOT, IWRT PREP006? C PREP0130
I ,NPT,NELEM, NBPTC PREP0068 WRITE (6,6020) TITLE, KPUTCK, NSMAT, NPMAT, NXMAT, MBAND PREP0l31
MAXBC - MAXBD PREP0069 C PREP0l32
IF (LEVEL .EQ. 3) MAXBC = NBPTC PREPOO?O Add NPPT parameter to subroutine call . SCM 3-10-90 PREP0133

-
-.....l
Vl
C
IF (MGENPR .EQ. 0) MGENPR = 3
NUMBC ~ NBPTC
IF (WORD2 .EQ. XMOD) NUMBC = MAXBD
PREPOO?I
PREPOOn
PREP0073
~REPOO?4 2 NPT,NELEM,IPLOT,NBPTC,NPUTCK,KPUTCK,LSTOP,NINC,
PREP0134
CALL SAVED(FEDATA(LOCX),FEDATA(LOCY),FEDATA(LOCNOD),FEDATA(LOCNDB)PREPOI35
,FEDATA(LOCBIV),FEDATA(LOCKDE) ,FEDATA(LOCXYG) ,TITLE, PREP0136
PREPOI37
C - PREP0075 3 LUDATA,LUPLOT,NSMAT,NPMAT,NPPT) PREP0138
C PREPOO?6 PREP0l39
C" SET UP STORAGE REQUIREMENTS FOR MESH GENERATOR PREP007? C PREP0140
C PREPOO?8 C" ESTABLISH RESPONSE OUTPUT AND PLOTTING CONTROLS. PREPOI41
NDNEL - MAXO(NPT,NELEM) PREPOO?9 C PREP0142
LOCX = 1 PREP0080 PREP0143
LOCY = LOCX + NPT PREP008I Revise ranges of output and plotting controls. SCM 3-01-89 PREP0144
LOCNGN ~ LOCY + NPT PREP0082 PREP0145
LOCNTP ~ LOCNGN + 7*NDNEL PREP0083 IF(IPLOT.LT.O .OR. IPLOT.GT.3) IPLOT = PREP0146
LOCXYG = LOCNTP + NPT PREP0084 IF(IWRT . LT.O .OR. IWRT . GT.3) IWRT = 1 PREP0147
C PREPOOBS PREP0148
C" STORAGE FOR GENEL PREPOOB6 lOUT - -(LUPLOT*lOO + IPLOT'lO + IWRT) PREP0149
C PREPOOe? PREPOI50
LOCNOD LOCNGN PREP008S Add RESULT and NPPT parameters to subroutine call. PREPOISI
LOCLGN LOCXYG PREP0089 SCM 3-4-89 PREPOIS2
C PREP0090 PREPOlS3
C" STORAGE FOR SAVED PREP009I CALL RESOUT (FEDATA(l) ,FEDATA(l) ,FEDATA(l) ,FEDATA(l) ,FEDATA(I) , PREPOIS4
C PREP0092 I FEDATA(I) ,FEDATA(l) ,IOUT,NELEM,NPT,RESULT,NPPT) PREPOI55
LOCNDB = LOCXYG + 4'NDNEL PREP0093 PREPOI56
LOCBIV - LOCNDB + NUMBC PREP0094 C PREP015?
LOCKDE = LOCBIV + 3'NUMBC PREP0095 RETURN PREPOI58
ISZTST = LOCKDE + NPT PREP0096 5010 FORMAT (A4,IX,I?A4,3X,A4/8I5) PREPOI59
IF (ISZTST .LE. ISIZE) GO TO 60 PREP0097 6005 FORMAT ( 63HOFATAL DATA ERROR. THE CONTROL WORD MUST BE 'PREP 'PREPOI60
WRITE(6,60I5) ISZTST, ISIZE ~REP00ge 1, BUT IS ',AS, IH') PREPOI61
STOP 15 PREP0099 6010 FORMAT ( 43HI" BEGIN PREP OF FINITE ELEMENT INPUT' *1 PREP0162
C PREPOIOD I 113IHOTHE DATA TO BE RUN IS ENTITLED IIIHO,I?A4111 PREP0163
C PREPOIOI 2 40HONUMBER OF CONSTRUCTION INCREMENTS------,ISI PREPOI64
C PREPOI02 3 40HOPRINT CONTROL FOR PREP OUTPUT----------,I51 PREPOI65
60 CALL GENNOD(FEDATA(LOCX),FEDATA(LOCYJ,FEDATA(LOCNGN), PREPOI03 40HOINPUT DATA CHECK-----------------------,ISI PREPOI66
40HOPLOT TAPE GENERATION-------------------, 151 PREP0167 IF(LCODE.GT.O) THEN PRHR0035
6 40HOENTIRE FINITE ELEMENT RESULTS OUTPUT---, 151 PREP0168 LEVEL = LeODE PRHR0036
40HOTHE NUMBER OF NODES 15-----------------,151 PREP0169 ELSE PRHR0037
40HOTHE NUMBER OF ELEMENTS 15--------------,151 PREP0170 LEVEL = IABS(LCODE/lOO) PRHR0038
40HOTHE NUMBER OF BOUNDARY CONDITIONS IS---,I5) PREP0171 NCAN = IABS(LCODE + LEVEL'lOO) PRHR0039
6015 FORMAT (lH1,40H 'ERROR DETECTED IN ROUTINE PREP • ,II PREPOl72 ENDIF PRHR0040
1 1H ,40H 'BLANK COMMON IS TOO SMALL TO SOLVE ',I I PREP0173 PRHR0041
2 1H ,40H 'CURRENT PROBLEM • ,II PREP0174 C PRHR0042
J 1H ,23H 'PREsENT SIZE (WORDS) ,IS, lOX, 1W ,I I PREP0175 GO TO (100,1l0,140),ICOME PRHROOO
4 1H ,23H 'REQUIRED SIZE (WORDS) ,IS, lOX, 1H' ,II PREP0176 C PRHR0044
5 1H ,40H 'PLEASE INCREASE SIZE OF BLANK • ,II PREP0177 100 CONTINUE PRHR0045
6 1H ,40H 'COMMON IN PREHERO • ,II PREP0178 C PRHR0046
i 1H ,40H 'FOR DETAILS SEE SYSTEM MANUAL ' ,II PREP0179 C" PREPARE INPUT DATA FOR FINITE ELEMENT METHOD PRHR0047
11 1H ,40H 'CANOE WILL NOW STOP • ) PREP0180 C PRHR0048
6018 FORMAT {40H • • FATAL DATA ERROR • • • , I PREP0181 CALL ESTAB PRHR0049
1 40H ' , NUMBER OF BOUNDARY CONDITIONS' ,lSI PREP0182 REWIND LUDATA PRHR0050
2 40H • • MAXIMUM NUMBER ALLOWED • ,151 PREP0183 REWIND LUPLOT PRHRO051
3 40H (SPECIFIED ON CARD C2. COL 36 -40 ) PREP0184 PRHR0052
6020 FORMAT ( 47Hl- '* ~ ..... . . FOR MESH GENERATION OF • 11 +/ PREP0185 Add RESULT array and NPPT variable to subroutine parameter list_ PRHR0053
1 II 1HO,17M III PREP0186 SCM 5-22-89 PRHR0054
2 40HOTHE NUMBER OF DATA ERRORS 15-----------,151 PREP0187 PRHR0055
3 40HOTHE NUMBER OF SOIL MATERIALS 15--------,151 PREPOl86 CALL PREP (FEDATA,PIPMAT,DENSTY,ISIZE,KPUTCH,LCODE,LUDATA, PRHR0056
40HOTHE NUMBER OF PIPE MATERIALS 15--------,151 PREP0189 1 LUPLOT,MAXBC,MAXEL,MAXMAT,MAXNP,NPMAT,NPT,NSMAT, PRHR0057
40HOTHE NUMBER OF INTERFACE MATERIALS 15---,151 PREP0190 2 NXMAT,NBPTC,NELEM,PDIA,RESULT,NPPT) PRHR0058
40H08AND WIDTH ESTIMATE (MAX)--------------,I5 ) PREP0191 PRHR0059
END PREP0192 C PRHR0060
• ." • • • • • • • • * * * * PRHROOOI C" DEFINE BLANK COMMON STORAGE FOR HEROIC PRHR0061
CANDE-89 {C)ULVERT {AN)ALYSIS AND (DE)SIGN PROGRAM PRHR0002 C PRHR0062
VERSION 1.0, MARCH 1990 PRHR0003 LOCX c PRHR0063
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY PRHR0004 LOCY = LOCX + NPT PRHR0064
THE FEDERAL HIGHWAY ADMINISTRATION PRHR0005 LOCNOD c LOCY + NPT PRHR0065
...... **** ...... ***. PRHR0006 LOCMNO LOCNOD + NELEM • 4 PRHR0066
--.) PRHR0067
PRHR0007 LOCNOS LOCMNO + NELEM
0\ PRHR0008 LOCBIV = LOCNOB + NBPTC PRHR0068
Change LEVEL to LeODE parameter in subroutine statement for
passing of output parameters. SCM 3-18-89 PRHR0009 LOCNQ = LOCBIV + NBPTC ' 3 PRHR0069
PRHROOI0 LOCU - LOCNQ + NPT • 1 PRHR0070
SUBROUTINE PRHERO (IA,ICOME,IEXIT,LCODE,NINC,NPMAT,NPPT,PDIA, PRHROOll LOCV = LOCU • NPT PRHR0071
1 PIPMAT, RESULT, SK, SM) PRHR0012 LOCST = LOCV + NPT PRHR0072
PRHR0013 LOCSTP LOCST + NELEM'6 PRHR0073
C PRHROOH LOCSTH = LOCsTP + NPMAT'2 + 2 PRHR0074
Co . SWITCHING ROUTINE FOR LEVEL 2 AND 2 SOULTIONS PRHR0015 ISZTST = LOCSTH + NELEM ' 6 PRHR0075
C PRHR0016 IF (IsZTST .LE. ISIZE) GO TO 105 PRHR0076
Uncomment this statement in all program modules for double PRHR0017 PRHR0077
precision version. SCM 3-10-90 PRHR0018 Reverse order of ISZTST and ISIZE in WRITE statement below. PRHR0078
PRHR0019 SCM 10-23-89 PRHR0079
IMPLICIT DOUBLE PRECISION (A-H,O-Z) PRHR0020 PRHR0080
PRHR0021 WRITE(6,6020) ISIZE, ISZTST PRHR0081
DIMENSION PIPMAT{5,NPMAT),RESULT(20,NPPT) PRHR0022 PRHR0082
PRHR0023 STOP 11 PRHR0083
Revise FEDATA and ISIZE parameters from 6000 to 8000. PRHR0024 C PRHR0084
SCM 5-30-89 PRHR0025 C" ZERO BLANK COMMON PRHR0085
PRHR0026 C PRHR0086
CC 105 DO 120 NZERO = 1, IS IZE PRHR0087
C Revise FEDATA and ISIZE parameters from 6000 to 10000. by KS 120 FEDATA{NZERO) = 0.0 PRHR0088
CC 110 CONTINUE PRHR0089
COMMON FEDATA(10000) PRHR0027 C PRHR0090
DATA ISIZE/100001 PRHR0028 C" HEROIC PERFORMS 2 AND 3 SOLUTIONS (THE FINITE ELEMENT METHOD) PRHR009l
PRHR0029 C PRHR0092
DATA LUPLOT,LUDATA 110,111 PRHR0030 CALL HEROIC (FEDATA(LOCBIV),DENSTY,IA,ICOME,IEXIT,LEVEL,NBPTC, PRHR0093
DATA MAXNP,MAXEL,MAXBC,MAXMAT 1200,100,400,101 PRHR0031 1 FEDATA(LQCMNO),NELEM,NINC,FEDATA(LOCNOD), PRHR0094
PRHR0032 2 FEDATA(LOCNOB) ,NPMAT,NPPT,NPT,FEDATA(LOCNQ) ,NSMAT, PRHR0095
Add logic for evaluating LCODE parameter. SCM 3-18-89 PRHR0033 3 NXMAT,PIPMAT,RESULT,SK,SM,FEDATA(LOCST), PRHR0096
PRHR0034 FEDATA(LOCSTH),FEDATA(LOCSTP),FEDATA(LOCU), PRHR0097
5 FEDATA(LOCV),FEDATA(LOCK),FEDATA(LOCY» PRHR009B THE FEDERAL HIGHWAY ADMINI STRATION REDM0005
RETURN PRHR0099 ............................. ." .... * ." ." .............. .. REDM0006
140 CONTINUE PRHROI00 SUBROUTINE READM( NSMAT,MAXMAT,DENSTY, LEVEL) RgDM0007
C PRHROI01 REDMOOOB
C" RESOUT PRINTS OUT FINITE ELEMENT RESPONSES PRHR0102 Uncomment this statement in all program modules for double REDM0009
C PRHR0103 precision version. SCM 3-10-90 REDMOOIO
PRHR0104 REDMOOll
Add RESULT and NPPT parameters to subroutine call . PRHR0105 IMPLICIT DOUBLE PRECISION (A-H,O-Z) REDM0012
SCM 3-01-B9 PRHR0106 REDM0013
PRHR0107 COMMON lMATERLI CP(3,3),DEN(10),E(10,10),GNU(10,10),H(10,10), REDM0014
CALL RES OUT (FEDATA(LOCMNO),FEDATA(LOCNOD),fEDATA(LOCST), PRHR010B ITYPE(lO),NON(lO) REDM0015
1 FEDATA(LOCU),FEDATA(LOCV),FEDATA(LOCX),FEDATA(LOCY), PRHR0109 REDM0016
Z IA,NELEM,NPT,RESULT,NPPT) PRHROllO Expand array dimension statements from 30 to 99. REDM0017
PRHR0111 SCM 5-22-89 REDM001B
6020 FORMAT (lHO,40H .". ~ 11' . . . . ,. .. .. .. .. ,. ........... .. ,II PRHROllZ REDM0019
1 1 H 40H .. * It .. .. .. ERROR ..
I .. " .. .. .. , / I PRHR01l3 COMMON/XFACEI NXMAT,ANGLE(99),FCOEF(99),TENSIL(99),ITMAX REDM0020
Z 1H ,40H 'BLANK COMMON NEEDS TO BE INCREASED' , ,II PRHR01l4 REDM0021
3 IH ,21H 'BLANK COMMON IS NOW,I5,5HWORDS, PRHR01l5 REDM0022
IH ,32H ' REQUIRED SIZE OF BLANK COMMON,I5,5HWORDS,11 PRHR01l6 Add IBULK(10) to COMMON IH¥PER/. MGK 9-Z9-88 REDMOOZ3
5 1H ,47H 'CHANGE BLANK COMMON SIZE IN SUBROUTINE PRHERO) PRHR01l7 REDM0024
RETURN PRHROllB COMMON IHYPERI C(10),PHIO(10),DPHI(10),ZK(10),ZN(10),RF(10), REDMOOZ5
END PRHR01l9 $ VT(10),BK(10),BM(10),RATIO(10),IBULK(10) REDMOOZ6
PRINOOOI REDM0027
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM PRIN0002 DIMENSION MATNAM(5) REDMOOZ8
VERSION 1.0, MARCH 1990 PRIN0003 REDM0029
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY PRIN0004 Add dimension statement for Selig parameters. SCM 3-3-89 REDM0030
THE FEDERAL HIGHWAY ADMINISTRATION PRIN0005 REDM0031
""** * * * * * * ..... * * * + . * .. ** * * • • • • • • * PRIN0006 DIMENSION ISELIG(15),SXC(15),SXPHIO(15),SXDPHI(15),SXZK(15), REDM0032
SUBROUTINE PRINC (XM, 'XML) PRIN0007 SXZN(15),SXRF(15),SXBI(!5),SXEU(15) REDM0033
C PRIN0008 REDM0034
C THIS SUBROUTINE FINDS THE PRINCIPAL COMPONENTS OF A SECOND RANK PRIN0009 DIMENSION IDUNC(12),XC(lZ),XPHIO(12),XDPHI(lZ),XZK(lZ), REDM0035
---.)
C TENSOR IN TWO-DIMENSIONS PRIN0010 XZN(12),XRF(lZ),XBK(12),XBM(12) REDM0036
---.) C PRINOOll DIMENSION IOVER(6),XE(6,B),XH(B) REDM0037
Uncomment this statement in all program modules for double PRIN0012 DATA ITRIA, IGRAN, ICOHE, IMIX 14HTRIA,4HGRAN,4HCOHE,4HMIXE REDM003B
precision version. SCM 3-10-90 PRINOOl3 DATA XNUMIN,XNUMAX,XQ ,VOIDRG,VOIDRM, VOIDRC,SATM,SATC,PIM,PIC REDM0039
PRIN0014 X I 0.1, 0.49, .26, 0.6, 0.5, 1.0, 0.5, .90, .05,0 . 20 I REDM0040
IMPLICIT DOUBLE PRECISION (A-H,O-Z) PRIN0015 DATA IBLANK, L1H I1H , 1HLI REDM0041
PRIN0016 REDM0042
DIMENSION XM (4), XML (4) PRIN0017 Add data for Selig model parameters. SCM 3-3-89 REDM0043
XML(3)~0.0 PRIN001B REDM0044
DUl- (XM( 1) +XM(Z) ) IZ. 0 PRIN0019 DATA PI 13.14159Z651 REDM0045
DUZ~SQRT ( ( (XM(I) -XM (Z) ) IZ. 0) "2+XM(3) **Z) PRINOOZO DATA ISELIG/4HSW95,4HSW90,4HSWB5,4HSWBO,4HSW61, REDM0046
XML (1) -DU1 +DU2 PRIN0021 4HML95, 4HML90 , 4HML85, 4HMLBO, 4HML49, REDM0047
XML(Z)~DUI-DU2 PRINOOZ2 4HCL95,4HCL90,4HCLB5,4HCLBO,4HCL451 REDM004B
IF (XM(l) .LE. XM(Z» GO TO 705 PRIN0023 DATA SXC/O.0,0.0,0.0,0.0,0.O,4.0,3.5,3.0,2.5,0.0, REDM0049
DU3~XML(I)-XM(Z) PRINOOZ4 9.0,7.0,6.0,5.0,0 . 01 REDM0050
IF(DU3 . EQ.0.0) GO TO 718 PRIN0025 DATA SXPHIO/4B.O,4Z.0,38.0,36.0,29.0,34.0,3Z.0,30.0, REDM0051
DUZ~XM(3)/DU3 PRIN0026 2B.O,23.0,15.0,17.0,lB.0,19.0,23.01 REDM0052
DU1-SQRT(1 . 0/(1.0+DU2"2» PRINOOZ7 DATA SXDPHI/8.0,4.0,Z.0,1.0,0.0,0.0,0.0,0.0,0.0,0.0, REDM0053
DUZ~DU2'DU1 PRINOOZB 4.0,7.0,B.0,B.5,11.01 REDM0054
GO TO 716 PRIN0029 DATA SXZK/950.0,640.0,450.0,320.0,54.0,440.0,ZOO.O,110.0, REDM0055
705 DU3~XML(1)-XM(1) PRIN0030 75.0,16.0,lZ0.0,75.0,50.0,35.0,16.01 REDM0056
IF(DU3.EQ.0.0) GO TO 718 PRIN0031 DATA SXZN/O.60,0.43,0.35,0 . 35,0.B5,O.40,0.26,O.25, REDM0057
DU1~XM(3)/DU3 PRIN0032 0.25,0.95,0.45,0.54,0.60,0.66,0.951 REDM005B
DU2-SQRT(1.0/(1.0+DU1"Z» PRIN0033 DATA SXRF/O. 70,0.75,0. BO, 0 .B3, O. 90, 0.95,0.89,0 .B5, REDM0059
DUl-DUl'DUZ PRIN0034 0.BO,O.55,1.00,O.94,0.90,0.B7,0.751 REDM0060
716 XML(3)~ATAN2(DUZ,DU1)/0.017453Z9 PRIN0035 DATA SXBI/1B7.0,102.0,31.B,15.3,4.3,lZ0 . B,46.0,23.8, RgDM0061
718 RETURN PRIN0036 12.B,3.3,53.0,25.5,13.0,8.B,l.81 REDM006Z
END
.**._ .... PRIN0037
* . . . . . . . . . . . . . . . . * • • • • • REDMOOO!
DATA SXEU/O.014,0 . 036,O.057,O.07B,0.163,0 . 043,0.071,O.100,
0.134,O.305,0.09Z,0.lZ1,O.149,0.178,O.3911
REDM0063
REDM0064
CANDE-B9 (C) ULVERT (AN)ALYSIS AND (DE) SIGN PROGRAM REDM0002 REDM0065
VERSION 1. 0, MARCH 1990 REDM0003 DATA IDUNC/4HCA10,4HCA95,4HCA90,4HSM10,4HSM90, REDM0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY REDM0004 4HSMB5,4HSC10,4HSC90,4HSCB5,4HCL10, REDM0067
4HCL90,4HCL8s1 REDM0068 WRITE(6,904) E(I,1),GNU(I,l),SMH,SKH REDM0131
DATA XCIO .0, 0 .0, 0.0, 0 .0, 0 .0, 0.0, 3. 472, 2.083, REDM0069 CALL CONVT(E(I,l),GNU(I,l)) REDM0132
1.388,2.777,1.388,0.6941 REDM0070 GO TO 65 REDM0133
REDM0071 C REDM0134
Change XPHIO and XDPHI parameters from radians to degrees. REDMOO?2 C ANISOTROPIC PROPERTIES REDM0135
SCM 3-03-89 REDM0073 C REDM0136
REDM0074 60 REAC(S,5010) D2,03,D4,D5,D6 REDM0137
DATA XPHIO/42.0,36.0,33.0,36 . 0,32.0,30.0, REDH007s WRITE(6,905) D2,D3,D4,D5,D6 REDM0138
3].0,33.0,33.0,30.0,30.0,30.01 REDM0076 CALL ANISP[D2,D3,D4,05,D6) REDM0139
DATA XDPHI/9. 0, 5. 0, 3.0,8.0,4.0,2.0, REDMOO7? C REDM0140
0.0,0.0,0.0,0.0,0.0,0.01 REDM0078 65 L=O REDMOl41
REDM0079 DO 70 J=l,3 REDM0142
DATA XZK/600.0,300.0,200.0,600.0,300.0,150.0, REDMOOSO DO 70 K=J,3 REDM0143
400.0,150.0,100.0,150.0,90.0,60.01 REDM0081 L~L+1 REDM0144
DATA XZN/O.4, 0.4, 0.4, 0.25, 0.25, 0.25, 0.6, O. 6, O. 6, REDM0082 70 H(I,L)=CP(J,K) REDM0145
0.45,0.45,0.451 REDM0083 GO TO 2 REDM0146
DATA XRF 10.7,0.7,0.7,0.7,0.7,0.7,0.7,0.7,0.7,0.7, REDM0084 C REDM0147
0.7,0.71 REDM0085 C DUNCAN'S HYPERBOLIC SOIL MODEL REDM0148
DATA XBK/175.0,75.0,50.0,4s0.0,250.0,ls0.0,200.0, REDM0086 C REDM0149
75.0,50.0,140.0,80.0,50.01 REDM0087 REDM0150
DATA XBM/0.2, O. 2, 0.2, 0 .0, 0 .0, 0.0, 0.5,0.5,0.5,0.2, REDM0088 Add Selig IBULK(I) variable to read statement. REOM0151
0.2,0.2/ REDM0089 MGK 9-29-1988 REDM0152
DATA IOVER/4HGGOO,4HGfAI,4HMGOO,4HMFAI,4HCGOO,4HCFAII REDM0090 REDM0153
DATA XE/II00.0,550.0,600.0,400.0,250.0,150.0, REDM0091 80 READ[5,300) NON(I),RATIO(I),IBULK(I) REDM0154
1300.0,750.0,850.0,550.0,325.0,200.0, REDM0092 REDM0155
1500.0,850.0,1000.0,600.0,375.0,225.0, REDH0093 Revise soil model iteration limit. SCM REDM0156
1650.0,1000.0,1100.0,700.0,375.0,250.0, REDM0094 REOM0157
1800.0,1100.0,1200.0,750.0,400.0,250.0, REDM0095 IF(NON (I) . EO. 0.0) NON (I) 20 REDM0158
1900.0,1150.0,1250.0,800.0,400.0,250.0, REDM0096 REDM0159
2100.0,1300.0,1350.0,900.0,400.0,250.0, REDM0097 IF[RATIO(I) .EQ.O.O) RATIO(I) 0.5 REDM0160
2250.0,1400.0,1450.0,900.0,400.0,250.01 REDH0098 REDM0161
...... DATA XHI3.4, 6.9,10.3,13.8,17.2,20.7,27.6,34.51 REDM0099 Add control statements to print out heading for REDM0162
-..J REDHOIOO appropriate model (Duncan or Selig). REDM0163
00 C
C MATERIAL PROPERTIES FOR SOIL-SYSTEM [CONTINUUM ELEMENTS) REDH0101 SCM 10-28-88 REDM0164
C REDM0102 REDM0165
WRITE[6,2000) REDHOI03 IF (IBULK(I) .EQ.O) THEN REDM0166
KPUTCK ~ 0 REDM0104 WRITE(6,305) NON(I),RATIO(I) REDM0167
MAT = 0 REDM010s ELSE REDM0168
MATX = 0 REDM0106 WRITE(6,306) NON(I),RATIO(I) REDM0169
LIMIT - IBLANK REDM0107 ENDIF REDM0170
If [LIMIT .EO. LIH) GO TO 500 REDH0108 REDM01?l
READ[S,SOOS) LIMIT,I,ITYP,DENX, [MATNAM(K),K~l,s) REDMOI09 C REDM01?2
IF(ITYP.EO.6) GO TO 200 REDMO 11 0 C DETERMINE IF MATNAM IS REQUESTING STANDARD PROPERTIES, REDMOn3
ITYPE(I) = ITYP REDM0111 C OTHERWISE ASSUME MATNAM-USER REDM0174
DEN (I) = DENX REDH0112 C REDM01?5
MAT = MAT + 1 REDMOl13 J=O REDM0176
NON (I) = 0 REDMO 11 4 REDMOl77
IF(I.LT.l .OR. I.GT.MAXMAT) GO TO 30 REDM011s Add logic to select Selig standard parameters. SCM 3-3-89 REDM0178
IF(ITYP .LT.1 .OR. ITYP.GT.5) GO TO 30 REDMO 11 6 REDM0179
GO TO 40 REDM011 7 IF (IBULK(I).EQ.O) THEN REDM0180
30 WRITE[6,6070) ITYP,I REDMO 11 8 REDM0181
KPUTCK = KPUTCK + 1 REDM0119 DO 81 N=1,12 REDM0182
GO TO 2 REDMOl20 IF(MATNAM(l) .EQ.IDUNC(N)) J=N REDM0183
REDM0121 81 CONTINUE REDM0184
C
40 WRITE[6,907) I, (MATNAM(K),K=l,s),DEN(I) REDM0122 REDM0185
DEN(I) = DEN[I)/1728. REDM0123 ELSE REDM0186
GO TO [sO,60,80,90,100),ITYP REDM0124 DO 82 N=l,lS REDM0187
C REDMOl2s IF(MATNAM(l) .EQ.ISELIG(N)) JS=N REDM0188
C LINEAR ISOTROPIC PROPERTIES REDM0126 82 CONTINUE REDM0189
REDM0127 END IF REDM0190
C
50 READ[5,sOI0) E[I,I), GNU(I,l) REDM0128 IF(J.EO.O .AND. JS.EQ.O) GO TO 85 REDM0191
SMH ~ E(I,l)' [l.O-GNU(I,l)) I ((l.O+GNU[I,l))' (1.0-2 .0'GNU(I,l))) REDM0129 IF(IBULK(I) .NE.O) GO TO 83 REDM0192
SKH = GNU(I,l)/(I.0-GNU(I,1) ) REDM0130 REDM0193
C REDM0194 IF (VT(I) .EQ. 0.0 .AND. IBULK(I) .NE. 0) WRITE(6,323) BK(I),BM(I)REOM0257
C ESTABLISH STANDARD PARAMETER VALUES REDM0195 REDM025B
C REDM0196 IF(VT(I) .GT.O . O) WRITE(6,325) VT(I) REOM0259
C (I) =XC (J) REDM0197 GO TO 2 REOM0260
REDM0198 C REOM0261
Convert from degrees to radians. SCM 3-3-89 REDM0199 C OVERBURDEN PRESSURE DEPENDENT PROPERTIES REOM0262
REDM0200 C (FIRST DETERMINE IF STANDARD PROPERTIES ARE REOM0263
PHIO(I)=XPHIO(J)*PI/180 REDM0201 C REQUESTED) REOM0264
DPHI(I)=XDPHI(J)*PI/180 REDM0202 C REOM0265
REDM0203 90 J=O REDM0266
ZK (I )=XZK (J) REDM0204 DO 91 N=1,6 REOM0267
ZN (I )=XZN (J) REDM0205 IF(MATNAM(l).EQ.IOVER(N» J=N REDM0268
RF(I)=XRF(J) REDM0206 91 CONTINUE REDM0269
BK(I)=XBK(J) REDM0207 IF(J.EQ.O) GO TO 93 REOM0270
BM(I)=XBM(J) REDM0208 C REOM0271
VT(I)=O.O REDM0209 C ESTABLISH STANDARD PROPERTY TABLES REDM0272
GO TO 86 REDM02l0 C REDM0273
REDM0211 NOMI=8 REDM0274
Establish standard Selig parameter values. SCM 3-3-89 REDM02l2 DO 92 N=l,NOMI REOM0275
REDM0213 H(I,N)=XH(N) REDM0276
83 C (I) =SXC (JS) REDM0214 E(I,N)=XE(J,N) REDM0277
PHIO(I)-SXPHIO(JS)*PI/180 REDM02l5 92 GNU(I,N)=0.333 REDM0278
OPHI(I)=SXOPHI(JS)*PI/180 REDM02l6 GO TO 98 REDM0279
ZK(I)=SXZK(JS) REDM0217 C REDM0280
ZN(I)=SXZN(JS) REDM02l8 C USER DEFINED OVERBURDEN TABLE REDM02Bl
Rf(I) =SXRF (JS) REDM02l9 C REDM02B2
BK(I)=SXBI (JS) REDM0220 93 N - 0 REDM0283
BM (I )=SXEU (JS) REDM0221 94 N = N+1 REOM0284
VT(I)=O.O REDM0222 READ(5,5010) Dl,D2,D3 REDM0285
GO TO 86 REDM0223 1F(01+D2 .EQ. 0.0) GO TO 95 REDM0286
REDM0224 H(I,N) = D1 REDM0287
...... C REDM0225 E(I,N) = D2 REDM0288
-..J USER DEFINED DUNCAN MODEL REDM0226 GNU(I, N) - D3 REDM0289
\D C
C REDM0227 GO TO 94 REDM0290
85 READ(5,330)Hl,H2A,H2B,H3,H4,H5 REDM0228 95 NOMI - N-l REDM0291
C(I) = HI REDM0229 IF(NOMI.GE.2 .AND. NOMI.LE.I0) GO TO 98 REDM0292
REDM0230 WRITE(6,6060) NOMI REDM0293
Convert from degrees to radians. SCM 3-3-89 REDM0231 KPUTCK = KPUTCK + 1 REDM0294
REDM0232 98 WRITE(6,923) REDM0295
PHIO(I) - H2A*PI/IBO REDM0233 WRITE(6,9l6) (H(I,N),E(I,N),GNU(I,N),N=l,NOMI) REDM0296
DPHI(I) H2B*PI/IBO REDM0234 NON(I) = NOMI REDM0297
REDM0235 GO TO 2 REDM029B
ZK(I) H3 REDM0236 C REDM0299
ZN(I) - H4 REDM0237 C PROCESS EXTENDED-HARDIN MODEL, DEPENDENT ON SOIL CLASS . .. REDM0300
RF(I) H5 REDM0238 C GRANULAR, MIXED, COHESIVE, OR USER DEFINED FROM TRIAXIAL TEST. REDM0301
READ(5,340) H7,H8,H9 REDM0239 C REDM0302
BK(I)=H7 REDM0240 100 READ(5,5010) DO, 01, D2, 03, 04, OS, NON (I) REDM0303
BM(I)=H8 REDM0241 C REDM0304
VT (I)=H9 REDM0242 C CHECK ON PERMISSIBLE VALUES OF MAX AND MIN POISSON RATIOS FOR REDM0305
C REDM0243 C EXTENDED HARDIN MODEL. THIS APPLYS TO ALL SOIL CLASSES AND USER. REDM0306
C WRITE OUT INPUT/DEFAULT DATA FOR SOIL CLASSES REDM0244 C REOM0307
C REDM0245 IF(NON(I) .LE.O) NON (I) - 5 REDM0308
REDM0246 IF(OO.LE.O.O .OR. DO.GE.0.5) DO XNUMIN REDM0309
convert PHIO and DPHI on output from radians to degrees . REDM0247 IF(Dl.LE.O.O .OR. Dl.GE . 0.5) Dl = XNUMAX REDM0310
SCM 3-3-89 REDM0248 1F(D2.LE.0.0) D2 = XQ REDM0311
REDM0249 H(I,4) = DO REDM0312
86 WRITE(6, 310) (MATNAM(K), K =1,5) ,C(I), PHIO(I) *lBO/PI, REDM0250 H(I,5) Dl REDM0313
DPHI(I)*lBO/PI,ZK(I),ZN(I),RF(I) REDM0251 H(1,6) = D2 REDM0314
REDM0252 C REDM0315
Revise write statements for hyperbolic bulk modulus REDM0253 IF(MATNAM(I) . EQ. 1TRIA) GO TO 150 REDM0316
option. MGK 9-29-88 REDM0254 C REDM0317
REDM0255 C SET DEFAULT VALUES FOR GRANULAR SOIL CLASS REDM0318
IF (VT(I) . EQ . 0.0 .AND. IBULK(I) .EQ. 0) WRITE(6,320) BK(I),BM(I)REDM0256 C REDM0319
IF(MATNAM(l) . NE . IGRAN) GO TO 110 REDM0320 Revise default value for TENSIL. SCM 4-25-89 REDM0383
I'(03.LT . 0 . 1 . OR. D3 . GT. 1 . 0) D3 = VOIDRG REDM0321 REDM0384
04 = 0 . 0 REDM0322 IF(TENSIL(I) .EQ.O.O) TENSIL(I) 1.0 REDM0385
DS = 0.0 REDM0323 REDM03B6
A = 3.20 REDM0324 WRITE(6, 955) I,ANGLE(I),FCOEF(I),TENSIL(I) REDM0387
GO TO 130 REDM032S REDM0388
C REDM0326 Revise logic to set ITMAX to highest number specified REOM0389
C SET DEFAULT VALUES FOR COHESIVE SOIL CLASS REDM0327 for interface elements. SCM 3-10-89 REDM0390
C REDM032B REDM0391
110 IF(MATNAM(1).NE. ICOHE) GO TO 120 REDM0329 IF(ABS(DENX) . GT.ITMAX) ITMAX - ABS(DENX) REDM0392
IF(03 . LT . 0 . 3 .OR. 03 .GT. 3.0) 03 = VOIORC REDM0330 REDM0393
1' (04 . LT . 0.0 .OR.04 . GT. 1.0) 04 SATC REDM0331 Disable maximum iteration limit. SCM 3-3-89 REDM0394
IF(OS . LE . O.O .OR.D5 .GT. 1.0) 05 = PIC REDM0332 Revise minimum iteration limit to 20. SCM 3-1B-89 REOM0395
A = 1 . 12*(1.+2.*04) REDM0333 REDM0396 .
GO TO 130 REDM0334 IF (ITMAX.GT.I0) ITMAX=10 REDM0397
C REDM0335 REDM0398
C SET OE,AULT VALUES FOR MIXED SOIL CLASS . (THIS IS DEFAULT CLASS) REDM0336 IF (ITMAX.EQ. 0) ITMAX- S REDM0399
C REDM0337 REDM0400
120 MATNAM (l) = IMIX REDM033B IF (ITMAX.EQ.O) ITMAX- 20 REDM0401
IF(03 . LE . 0.1 .OR . D3 . GT . 1.0) 03 = VOIDRM REDM0339 REDM0402
1,(04 . LE.O.O .OR. D4.GT . 1.0) D4 SATM REDM034 0 GO TO 2 REDM0403
I,(DS .LE.O.O . OR . OS.GT . 0.5) DS = PIM REDM0341 C REDM0404
A=2.S4* (1.+2.*04) REDM0342 500 CONTINUE REDM040S
C REDM0343 IF (MAT.GT.NSMAT) WRITE(6,6080)MAT,NSMAT REDM0406
C WRITE OUT INPUT/DEFAULT DATA FOR SOIL CLASSES. REDM0344 IF (MATX.GT .NXMAT) WRITE (6, 60BO) MATX, NXMAT REDM0407
C REDM0345 IF(MAT.GE.NSMAT .AND . MATX.GE.NXMAT) GO TO 550 REDM0408
130 WRITE(6,60~0) MATNAM(1),MATNAM(2),DO,01,D2,03 , D4,DS,NON(I) REDM0346 WRITE(6,6090) NSMAT REDM0409
C REDM0347 WRITE(6,6090) NXMAT REDMOnO
C COMPUTE MATERIAL CONSTANTS IN HARDINS EQUATIONS. (NOTE THE VARIABLEREDM034B KPUTCK a KPUTCK + 1 REDM0411
C A WAS BASED ON HARDIN EQUATIONS WITH T = 10 AND N=l. REDM0349 550 IF(LEVEL.NE.2) GO TO 600 REDM0412
C REDM0350 ICKFIL ~ 3 REDM0413
...- F - (2.973-03)*'2/(1.+D3) REDM0351 OENSTY OENSTY/172B.
# REDM0414
00 REDM0352 IFILL = 2*(NSMAT/ICKFIL) + 1 REDM041S
0 R - (1100 . -600.*04)
H(I,l) - 1230. *F REDM0353 IF(DENSTY .NE. DEN(IFILL»WRITE(6,6095)DENSTY,DEN(IFILL) REDM0416
H(I,2) F*F*R*R/(0.6 - 0.25"DS"0.6) REDM03S4 600 IF(KPUTCK.EQ.O) RETURN REDM0417
H(I,3) = A REDM0355 WRITE{6,7000) KPUTCK REDM0418
C REOM03S6 STOP REDM0419
GO TO 2 REOM0357 C REOM0420
C REOM035B Co. FORMATS REOM0421
C USER DEFINED PROPERTIES FOR HARDINS RELATIONS FROM TRIAXIAL TESTS.REDM0359 C REDM0422
C REDM0360 2000 FORMAT(lH1,1/10X,37H MATERIAL CHARACTERIZATION FOR SOILS . REDM04 23
150 WRITE(6,60 S0) 00,D1,02,D3,D4,D5,NON(I) REOM0361 5005 FORMAT(Al,I4,IS,F10.0,5A4) REDM04 24
IF (03'04 . GT. 0.0) GO TO 160 REOM0362 5010 FORMAT{6F10.0,IS) REDM0425
WRITE(6,60SS) REOM0363 6040 FORMAT(I I 5X , 42H HARDIN MATERIAL, STANDARD SOIL PROPERTIES II REDM0426
KPUTCK = KPUTCK + 1 REDM0364 X lOX, 27H SOIL CLASSIFICATION ... ••. ,2A4 I REOM0427
160 H(I,1) = D3 REOM0365 X lOX, 27H MINlMUN POISSON RATIO . . . . ,F7.3 / REDM0428
H(I,2) = D4 REOM0366 X lOX, 27H MAXIMUM POISSON RATIO . . . . ,F7.3 I REOM0429
H(I,3) = DS REOM0367 X lOX, 27H POISSON PARAMETER Q ... .•• ,F7.3 I REDMOnO
GO TO 2 REOM0368 X lOX, 27H VOID RATIO .. .. ........... ,F7. 3 I REDMO 43 1
C REOM0369 X lOX, 27H PERCENT OF SATURATION . .. • ,F7 . 3 I REDM0432
C INPUT PROPERTIES FOR INTERFACE ELEMENTS REOM0370 X lOX, 27H PLASTICITY INDEX ...... .. . ,F7.3 I REDM0433
C REDM0371 X lOX, 27H MAX ITERATIONS PER STEP .• ,15) REDM0434
200 IF(MATX.EQ.O) WRITE(6,9S0) REDM0372 6050 FORMAT{ 115X,38H HARDIN MATERIAL, TRIAXIAL DATA INPUT I I REDM0435
IF(1. LE.O) 1=1 REOM0373 X lOX, 31H MINIMUM POISSON RATIO . . .. . . • .• F10.3 I REDM0436
REDM0374 X lOX, 31H MAXIMUM POISSON RATIO .. . ... .. ,F10 . 3 I REDM0437
Revise maximum interface materials from 30 to 99. REDM0375 X lOX, 31H POISSON RATIO PARAMETER Q .. . . , FI0.3 I REDM0438
SCM 5-22-89 REOM0376 X lOX, 31H HARDIN PARAMETER, Sl ....... . . ,F10.31 REDM0439
REOM0377 X lOX, 31H HARDIN PARAMETER, Cl ..... . ... ,EI0.31 REDM044 0
IF(I. GT. 99) GO TO 30 REDM0378 X lOX, 31H HARDIN PARAMETER, A ....... .. ,FI0.31 REDM0441
X lOX. 31H MAX ITERATIONS PER STEP ..... . ,15) REDM0442
MATX = MATX+1
REDM0379
REDM0380
REDM0381
6055 FORMAT( II /25H •• * FATAL DATA ERROR .*.
II
X59H SOME OF THE ABOVE TRIAXIAL DATA IS LESS OR EQUAL TO ZERO,I
REDM0443
REDM0444
READ(5,5010) ANGLE(I),FCOEF(I),TENSIL(I)
REOM03B2 X42H OR SECANT MODULUS IS GREATER THAN GMAX. ) REDM0445
6060 fORMAT(1 79H fATAL DATA ERROR. NUMBER Of NONLINEAR DATA POINTS NOTREDM0446 330 FORMAT(6F10.5) REDM0509
X BETWEEN 2 AND 10, NOMI = ,IS) REDM0447 340 FORMAT(3F10.5) REDM0510
6070 FORMAT(/73H FATAL DATA ERROR. MATERIAL NUMBER ANI OR ITYP ARE OUT-OREDM0448
XF-BOUNDS . I,ITYPE=,2r5) REDM0449
END
............ " ..................... . REDM0511
REDUOOOI
6080 FORMAT (11146R WARNING MORE MATERIAS WERE INPUT THAN DEFINED,2IS) REDM04S0 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM REDU0002
6090 FORMAT(11149H FATAL DATA ERROR NOT ENOUGH MATERIALS INPUT,NEED,I5)REDM0451 VERSION 1 . 0, MARCH 1990 REDU0003
6095 FORMAT(IIII 40H WARNING'" DENSITY OF FILL ABOVE MESH, ,FIO.S, REDM0452 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY REDU0004
X 144H IS NOT THE SAME AS FILL DENSTY WITHIN MESH, ,F10.5) REDM0453 THE FEDERAL HIGHWAY ADMINISTRATION REDU0005
7000 FORMAT(III 48H **'FATAL DATA ERRORS IN MATERIAL INPUT, ERRORS=,I3)REDM0454 . . . . . . * . . . . . . ** ........... * * * • • • • • • • • REDU0006
907 FORMAT(lHOfI5X,23HPROPERTIES FOR MATERIAL,I3,3X,8H*'*""',5A4, REDM0455 SUBROUTINE REDUCI(NN,NCOL) REDU0007
1 I l,lOX, 9HDENSITY = ,E15 . 5) REDM0456 C REDU0008
905 f"ORMAT(lHO, 9X,5HC-ll=, Ell.4,/, lOX, 5HC-12=, El1.4, I, REDM0457 C THIS SUBROUTINE REDUCES A BLOCK OF EQUATIONS REDU0009
1 10X,5HC-22=, El1.4,I, lOX, 5HC-33=, E11.4, I, REDM0458 C REDUOOlO
10X,3HTH=, E11.41 REDM0459 Un comment this statement in all program modules foe double REDUOOll
904 FORMAT(lHO,10X,15HYOUNGS MODULUS=, E11.4, I, 11X, REDM0460 precision version. SCM 3-10-90 REDUOOl2
1 15HPOISSONS RATIO=, Ell. 4, I, l1X, REDM0461 REDU0013
2 15HCONFINED MOD.=, E11.4, I, l1X, REDM0462 IMPLICIT DOUBLE PRECISION (A-H,O-Z) REDU0014
3 15HLATERAL COEFF.=, E11.4) REDM0463 REDU0015
916 FORMAT(lH ,9X,lP3E20.2) REDM0464 COHHON/SYSTEM/B(240),A(240,120) REDU0016
923 FORMAT(lHO,9X,31HELASTIC PROPERTIES - OVERBURDENI120X, REDH0465 DO 300 N=l,NN REDU0017
1 10HOVERBURDEN,10X,14RYOUNGS MODULUS,6X,14HPOISSONS RATIO) REDM0466 IF(A(N,l) .EQ. O.O)GO TO 300 REDUOOl6
950 FORMAT(IIII 10X,44H INTERFACE ELEMENT MATERIAL-GROUP PROPERTIES IIREDM0467 D =8(N)/A(N,l) REDU0019
X 12X,8HMAT. NO.,3X,12HNORHAL-ANGLE,2X,13HCOEF-fRICTION,2X, REDM0468 B(N)=D REDU0020
X 15HTENSILE-RUPTURE II) REDM0469 I=N REDU0021
955 FORMAT(15X,I5,3(3X,F12.5») REDMO 47 0 DO 275 L=2,NCOL REDU0022
REDM0471 C~A(N,L)/A(N,l) REDU0023
Revise format statement to read IBULK REDM0472 1=1+1 REDU0024
MGK 9-29-88 REDM0473 IF (C . EQ . 0.0) GO TO 275 REDU0025
REDM0474 J=O REDU0026
300 FORMAT(I5,FlO.5,I5) REDM0475 DO 250 K=L,NCOL REDU0027
REDM0476 J~J+l REDU0028
...... 305 FORMAT(115X,31RCONTROLS FOR DUNCAN SOIL MODEL III REDM0477 250 A(I,J)=A(I,J)-C*~(N,K) REDU0029
00
...... 1 10X,30R MAXIMUM ITERATIONS ........... ,181/ REDM0478
REDM0479
B(I)~B(I)-A(N,L)'D
275 A(N,L)-C
REDU0030
REDU0031
2 10X,30H ENTERING ELEMENT RATIO ....... ,,12.4/)
REDM0480 300 CONTINUE REDU0032
Add format statement for Selig version of model. REDM0481 RETURN REDU0033
MGK 9-29-88 REDM0482 END REDU0034
REDM0483 RESOOOOl
306 FORMAT(115X,30HCONTROLS FOR DUNCAN SUBROUTINE,I, REDM0484 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM RES00002
1 7X,48HWITH SELIG HYPERBOLIC BULK MODULUS FORMULATION III REDM0485 VERSION 1 . 0, MARCH 1990 RES00003
2 10X,30H MAXIMUM ITERATIONS .......... ,18/1 REDM0486 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY RES00004
3 10X,30H ENTERING ELEMENT RATIO ...... ,,12.4/) REDM0487 THE FEDERAL HIGHWAY ADMINISTRATION RES00005
REDM0488 .. .. .. .. .. .. * .. .. .. .. .. .. .. .. .. .. .. .. .. * .. .. " .. .. .. .. .. .. • RES00006
Revise PHIO label to add (DEG). SCM 3-3-89 REDM0489 RES00007
REDM0490 Add RESULT and NPPT parameters to subroutine statement. RES00008
310 FORMAT(II 5X, 'HYPERBOLIC STRESS-STRAIN PARAMETERS'III REDM0491 SCM 3-01-89 RES00009
1 10X,36H SOIL CLASSIFICATION .. ...... ,5A411 REDM0492 RESOOOIO
2 10X,30H COHESION INTERCEPT C....... ,F12.411 REDM0493 SUBROUTINE RESOUT(MNO,NOD,ST,U,V,X,Y,IA,NELEM,NPT,RESULT,NPPT) RESOOOll
3 10X,30H FRICTION ANGLE PHIO (DEG) .. ,F12.411 REDM0494 RES00012
$ 10X,30H 10-FOLD REDUCTION IN PHIO ... ,F12.411 REDM0495 Uncomment this statement in all program modules for double RES00013
4 10X,30H SCALED MODULUS NUMBER ZK .. ,F12 . 411 REDM0496 precision version. SCM 3-10-90 RES00014
5 10X,30H MODULUS EXPONENT ZN ....... ,F12.411 REDM0497 RES00015
6 10X,30H FAILURE RATIO RF .......... ,F12.4/) REDM0498 IMPLICIT DOUBLE PRECISION (A-H,O-Z) RESOOOl6
320 FORHAT(10X,30H BULK MODULUS NUMBER BK .. .. ,F12.411 REDM0499 RESOOOl7
1 10X,30H BULK MODULUS EXPONENT 8M .. ,F12.4) REDM0500 Add character variable . SCM 3-3-89 RES00018
REDM0501 RES00019
Insert format statements to print out hyperbolic REDM0502 CHARACTER RECORD'133 RES00020
bulk modulus. MGK 9-29-88 REDM0503 RES00021
REDM0504 Add RESULT variable to dimension statement. SCM 3-4-89 RES00022
323 FORMAT(10X,30H INIT BULK MODULUS NUMBER BI. ,F12.411 REDM0505 RES00023
1 10X,30H ULT VOLUMETRIC STRAIN EU ... ,F12 . 4) REDMOS06 DIMENSION MNO(NELEM),NOD(4,NELEM),ST(6,NELEMI,U(NPT),V(NPT), RES00024
REDMOS07 1 X(NPT),Y(NPT),STATE(4),RESULT(20,NPPT) RES00025
325 FORMAT(10X,29H CONSTANT POISSON'S RATIO VT ,F12.411) REDMOS08 RES00026

--:.
I~.

COMMON IELEMNTI AS(3),BS(3),Cl(17,17),EST(4,3),RQ(4),RT(3), RES00027 WRITE (LUPLOT) lA, (U(N),V(N),N~l,NPT) RES00090


1 STORE(17),Z4(121,ZQ(4),ZT(3),ZY(17),Jl,RO RES00028 WRITE (LUPLOT) lA, «ST(J,N).J~I,6),N~I,NELEM) RES00091
COMMON ISIZEPRI BIVD(3),IX,NINC RES00029 RES00092
RESOOD30 WRITE(LUPLOT,1000) IA RES00093
Expand array dimension statements from 30 to 99. RES00031 DO 60 N~l,NPT RES00094
SCM 5-22-89 RES00032 WRITE(LUPLOT,1010) U(N),V(N) RES00095
RES00033 60 CONTINUE RES00096
COMMON/XFACE/NXMAT,ANGLE(99),FCOEF(99),TENSIL(99),ITMAX RES00034 DO 70 N~I,NELEM RES0009?
RES00035 WRITE(LUPLOT,1020) (ST(J,N), J~1,6) RES00098
DATA CON/0 . Ol745331 RES00036 ?O CONTINUE RES00099
DATA STATE/4HFIX ,4HSLIP,4HSLIP,4HfREE RES00037 IF(IPLOT.LT.2) GO TO 100 RESOOIOO
C RES00038 BO WRITE(30,1000) IA RES00101
C ESTABLISH PRINTING AND PLOTTING CONTROLS. RES00039 DO 90, N=l,NPPT RES00102
C RES00040 WRITE(30,1110) (RESULT(J,N), J-l,9) RES00103
RES00041 90 CONTINUE RESOOI04
Expand IWRT printing control parameters. MGK 2-16-89 RES00042 RES00105
RESOOOO C RES00106
IWRT ~ 0, (No finite element stresses printed out.) RES00044 c····***·*********·***···*·*·****···********··********.**.**.****** ••• RES0010?
IWRT 1, (Standard finite element stresses printed out.) RES00045 C RES00108
IWRT 2, (Above, plus Duncan data printed out at Convergence.) RES00046 C RES00109
(Also writes trace of Duncan data to Unit 16.) RES00047 IF(IA . EQ.NINC) END FILE LUPLOT RESOOllO
IWRT ~ 3, (Above, plus writes trace of XFACES data to Unit 17. ) RES00048 100 IF(IWRT.LE.1) GO TO 120 RESOOll1
RES00049 RESOO1l2
Expand IPLOT output control parameters. SCM 3-1-B9 RES00050 Revise control logic to add printing of Duncan data. RESOO1l3
RESOOOS1 SCM 3-1-89 RES00114
IPLOT ~ 0, (No plot data written to units 10 or 30.) RESOOOS2 RES0011S
I PLOT I, (Mesh plot data written to Unit 10.) RES00053 IF(IWRT . LE.l) GO TO 120 RES00116
IPLOT 2, (Pipe data written to Unit 30.) RESOOOS4 REWIND 16 RES00117
IPLOT - 3, (Both mesh and pipe plot data written to RES00055 NREC = 0 RESOOllB
Units 10 and 30 respectively.) RES00056 MSUMR = 0 RES00119

-
00
tv
IF(IA.GE.O) GO TO 50
IA ~ lABS ( IA)
LUPLOT ~ IAIlOO
RES00057
RES00058
RES00059
RES00060
105 READ (16, '(I1)',ERR=SOO,END~107) I PAGE
NREC = NREC + 1
IF(IPAGE.EQ.1) THEN
READ (16, 6000)
RES00120
RES00121
RES00122
RES00123
IPLOT ~ (iA-LUPLOT*lOO)/10 RES00061 READ(16,6000) IAX,lTERX RES00124
IWRT ~ IA-LUPLOT'lOO-iPLOT*10 RES00062 IF (IAX.EQ.IA) THEN RES00125
RETURN RES00063 MSUMR ~ MSUMR + NREC + 2 RES00126
C RES00064 NREC = 0 RES00127
C'* WRITE DISPLACEMENTS AND STRESSES TO PLOT TAPE IF REQUESTED. RES00065 ELSE RES0012B
C RES00066 NREC - NREC + 2 RES00129
50 IF(IPLOT . EQ.O) GO TO 100 RES00067 END IF RES00l30
RES00068 END IF REso0l31
Add control logic for writing plot output. SCM 3-1-B9 RES00069 GO TO 105 RES00l32
RES00070 107 REWIND 16 RES00l33
If(IPLOT . EQ.2) GO TO 80 RES00071 IF(MSUMR.EQ.O) GO TO 120 RES00134
RES00072 DO 110, NR~l,MSUMR+9 RES0013S
ZERO = 0 . 0 RES00073 READ(16,*,ERR~500,END=110) RES00l36
C RES00074 110 CONTINUE RES0013?
C RES00075 MCT ~ 40 REso0l38
C~**********WRITE STATEMENTS ELIMINATED, JUNE 78*~*******·*****··****** RES00076 DO 118, NN=I,NREC-9 RES00139
C RES00077 IF(MCT.LT.40) GO TO 115 RESo0140
C RES00078 MCT ~ 0 RES00141
C WRITE (LUPLOT) K,ZERO, (U(N),V(N),N=l,NPT) RES00079 WRITE(6,6010) IAX , ITERX RES00142
C WRITE (LUPLOT) K,ZERO, (ST(4,N),ST(S,N),ZERO,ST(6,N),N=1,NELEM) RESOOOBD WRITE(6,6020) RES00143
C WRITE (LUPLOT) K,ZERO, (ST(1,N),ST(2,N),ZERO,ST(3,N),N=1,NELEM) RESODDB1 115 MCT = MCT + 1 RES00144
C RESOOOB2 READ (16, '(A133) ',ERR=5DO,END=118) RECORD RES00145
C***.*******.************** •• ··+++·*~·****·**·····**·* ******···**······*RESOOOS3 WRITE(6,'(A133)') RECORD REso0146
RES00084 118 CONTINUE RESOOl47
Revise LUPLOT from unformatted to formatted. RES00085 RES00148
SCM 11-24-B8 RES00086 120 CONTINUE RES00149
RESOOOB? C RES00150
•••••••••••• WRITE STATEMENTS INCORPORATED, JUNE 7S·*****··*******·***** RESOOOeS C" PRINT OUT DISPLACEMENTS RES00151
RES00089 C RES00152
MCT • 40 RES00153 lAC c MOD(N,lOOO)/lO RES00216
DO 150 N=l, NPT RES00154 IF(IAC.GT.IA) GO TO 400 RES00217
IF(MCT.LT.40) GO TO 125 RESOOlS5 IF (NOD(2,I) .EQ. NOD(3,I» GO TO 400 RES0021B
MCT = 0 RES00156 N = N/1000 RES00219
WRITE(6,2000) IA RES00157 MNX = MNO(I)-N*1000-10*IAC RES00220
WRITE(6,2100) RES00158 IF (MNX .NE. 0) GO TO 400 RES00221
12S MCT = MCT + 1 RES00159 IF(MCT.LT.40) GO TO 325 RES00222
ISO WRITE(6,2200) N,X(N),Y(N),U(N),V(N) RES00160 MCT = 0 RES00223
C RES00161 WRITE(6,2000) lA RES00224
C*' PRINT OUT BENDING ELEMENT RESULTANTS RES00162 WRITE(6,4100) RES0022S
C RES00163 325 MCT = MCT + 1 RES00226
MCT = 40 RES00164 N1 NOD (1, I) RES00227
DO 300 I=l,NELEM RES00165 N2 NOO(2,I) RES00228
N = MNO(I) RES00166 N3 NOO(3, I) RES00229
lAC· MOO(N,lOOO)/lO RES00167 N4 NOO(4, I) RES00230
IF(IAC.GT.IA) GO TO 300 RES00168 XC = 0.2S*(X(N1)+X(N2)+X(N3)+X(N4» RES00231
IF (NOO(2, I) .NE. NOD(3, I» GO TO 300 RES00169 YC • 0.2S*(Y(N1)+Y(N2)+Y(N3)+Y(N4» RES00232
IF(MCT.LT.40) GO TO 240 RES00170 DO 350 K-1,3 RES00233
MCT • 0 RESOOl11 350 RQ(K) = ST(K+3,I) RES00234
WRITE(6,2000) IA RESOOl72 C RES00235
WRITE(6,3100) RES00173 C PRINCIPAL STRESSES CALCULATED RES00236
240 MCT· MCT + 1 RES00174 C RES00237
Nl - NOO(I,I) RES00175 CALL PRINC(RQ,ZQ) RES00238
N2 ~ NOO(2,I) RES00176 WRITE(6,4200) I,XC, YC, (ST(K, I), K-1, 6), (ZQ(K), K=l, 3) RES00239
XC ~ O.S*(X(Nl) + X(N2» RES00171 400 CONTINUE RES00240
YC ~ O.S*(Y(Nl) + Y(N2» RES00178 RETURN RES00241
DO 2S0 K=l, 3 RES00179 RES00242
2S0 RQ(K) = 0.S*(ST(K,I)+ST(K+3,I» RES00180 Add ERROR STOP for 1/0 errors on Unit 16. SCM 3-1-89 RES00243
WRITE(6,3200) I,XC,YC, (RQ(K),K=I,3) RES00181 RES00244
300 CONTINUE RES00182 500 WRITE(6,6030) RES00245
RES00183 STOP 15 RES00246
...... C
C PRINT OUT INTERFACE ELEMENT FORCES RES00184 RES00247
00 RES00185 C RES00248
VJ C
MCT = 40 RES00186 Co. FORMATS RES00249
DO 31S I=I,NELEM RES00187 C RES00250
lAC = MOO(MNO(I),1000)/10 RES00188 RES00251
IF(IAC.GT.IA) GO TO 315 RES00189 Revise formats for plot and print output. SCM 11-24-88 RES00252
MN = MNO(I)/lOOO RES00190 RES00253
MNX - MNO(I)-MN'lOOO-lO'IAC RES00191 1000 FORMAT (IS) RES00254
IF(MNX.LE.O) GO TO 315 RES00192 1010 FORMAT(E12.4,lH"E12.4) RES00255
IF(MCT.LT.40) GO TO 310 RES00193 1020 FORMAT(E12.4,5(lH"E12.4» RES002S6
MCT - 0 RES00194 1110 FORMAT(E12.4,8(lH"E12.4» RES00257
WRITE(6,2000) IA RES0019S RES002S8
WRITE(6,3500) RES00196 2000 FORMAT(lH1,111 SX,23H CONSTRUCTION INCREMENT, 14 III) RES00259
310 MCT • MCT + 1 RES00191 2100 FORMAT(IISX,5H NOOE,7X,8HX-COORO.,7X,8HY-COORD., 8X, 7HX-OISP. , RES00260
Nl Q NOO(l,I) RES0019B X 8X,7HY-OISP. ) RES00261
N2 c NOO(2,I) RES00199 2200 FORMAT(5X,I3,2X, 4 (2X,E13.4») RES00262
N3 • NOO(3,I) RES00200 3100 FORMAT (SX, /136H BENDING ELEMENT RESULTANT FORCES " I/SX,SHELMNT,RES00263
RADA = CON*ANGLE(MN) RES00201 X 6X,8HX-CENTER,6X,8HY-CENTER,8X,6HTHRUST,9X,5HSHEAR,8X,6HMOMENT/) RES00264
C = COS(RADA) RES00202 3200 FORMAT(IIO,5(lX,E13.4» RES00265
S = SIN(RADA) RES00203 3500 FORMAT(II 5X,43H INTERFACE ELEMENT FORCES AND DISPLACEMENTS II RES00266
UNI = C*U(Nl)+S'V(Nl) RES00204 X 5X,5HELMNT,SH MAT. , 3X, SHSTATE,7X, 7HN-FORCE,1X, 7HS-FORCE,2X, RES00267
USI = -S'U(Nl)+C'V(N1) RES0020S X 3X, 9HN-DISP(I),SX,9HS-OISP(I),5X,9HN-OISP(J),5X,9HS-DISP( J» RES00268
UNJ • C'U(N2)+S'V(N2) RES00206 3600 FORMAT(5X,215,4X,A4,6(lX,E13.4» RES00269
USJ = -S*U(N2)+C*V(N2) RES00201 4100 FORMAT (5X, 7HELEMENT, 45X, RES00270
WRITE(6,3600) I,MN,STATE(MNX),U(N3) , V(N3),UNI,USI,UNJ,USJ RES00208 1 28HELEMENT STRAINS AND STRESSES I ,6X,3HNO.,8XRES00271
315 CONTINUE RES00209 1 ,lHX,10X,lHY,6X,9HEPSILON-X, 2X, 9HEPSILON-Y, 3X, 7HGAMA-XY, 4X,RES00272
C RES00210 7HSIGMA-X, 4X, 7HSIGMA-Y, 4X, 6HTAU-XY,SX,7HSIGMA-l, 4X, 1HSIGMA-2,RES00273
C" PRINT OUT STRESSES AND STRAINS FOR QUAD ELEMENTS RES00211 3 6X, 3 HANG , I) RES00274
C RES00212 4200 FORMAT(I7 ,4X,lPI1E11.2) RES0027S
MCT = 40 RES00213 RES00276
DO 400 I=l,NELEM RES00214 Add formats for DUncan output. SCM 3-1-89 RES00277
N = MNO(I) RES002l5 RES00278
6000 FORMAT(29X,I2,15X,I21 RES00279 SCM 4-30-89 RESP0044
6010 fORMAT(lHl,II,6X,23HCONSTRUCTION INCREMENT ,I2,15X, RES00280 RESP0045
X31H(CONVERGENCE ACHIEVED AFTER "',I4,29H ••• ITERATIONS IF ICON RES00281 DIMENSION NELPIP(991,NELIST(99) RESP0046
X, 11) RES00282 RESP0047
6020 fORMAT 11HO, 15X, 47H' • , ELASTIC MODULI AND CONVERGENCE PARAMETERS,RES00283 C RESP0048
X28H FOR DUNCAN SOIL MODEL * , " I RES00284 GO TO (99,2991 , ICOME RESP0049
X22X,69H(CONVERGENCE ERRORS (ERROR-EMODI ARE RATIOS GIVEN BY, (NEW-RES00265 C RESP0050
XOLDI/NEW 1,1 RES00286 C FIRST ENTRY RESP0051
X22X,42HK-TYPE = 1 DUNCAN POWER LAW BULK MODULUS, RES00287 C COLLECT CULVERT ELEMENTS AND FIND TOP ELEMENT RESP0052
X10X,45HSTRESS-LEV <= -1.0 ; COMPLETE TENSION FAILURE,I RES0028S C RESP0053
X22X,42HK-TYPE = 2 ; SELIG HYPERBOLIC BULK MODULUS, RES00269 99 CONTINUE RESP0054
X10X, 34HSTRESS-LEV >= .1.0 ; SHEAR FAILURE,I RES00290 YMAX - -1.E+10 RESP0055
X22X,37HK-TYPE = 3 ; CONSTANT POISSON'S RATIO,II RES00291 NEP = 0 RESP0056
X3X,5HELE-N,4X,5HMAT-N,4X,6HK-TYPE,4X,4HICON,4X, RES00292 DO 100 I=l,NELEJoI RESP0057
X10HERROR-EMOD,4X,10HSTRESS-LEV,4X,lOHYOUNGS-MOD,6X,8HBULK-MOD, RES00293 IF (NOO(2, II . NE. NOD(3, III GO TO 100 RESP0058
X4X,10HPOIS-RATIO, 4X, 12HCONFINED-MOD,111 RES00294 NEP = NEP + 1 RESP0059
6030 FORMAT(lHO,21H"'FATAL 1/0 ERROR"'/1H ,55HDUNCAN SUBROUTINE OUTPURES00295 NELPIP(NEPI = I RESP0060
XT FILE NOT PRESENT OR UNREADABLE/I RESOO296 NDI NOD (1 , I) RESP0061
RES00297 ND2 = NOD(2, II RESP0062
END RESOO296 RESP0063
RESPOOOI Revise selection procedure to choose Material Number 1 as RESP0064
CANDE-89 (CIULVERT (ANIALYSIS AND (DEI SIGN PROGRAM RESPOO02 first beam element in top, right position from centerline . RESP0065
VERSION 1. 0, MARCH 1990 RESPOOO3 SCM 2-25-90 RESP0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY RESPOO04 RESP0067
THE FEDERAL HIGHWAY ADMINISTRATION RESPOO05 IF(Y(NDll+Y(ND21 .LE. YMAXI GO TO 100 RESP0068
RESPOO06 YMAX - Y(ND11 + Y(ND21 RESP0069
SUBROUTINE RESPIP (MNO,NOD,RESULT,ST,STPIPE,U,V,X,Y, RESPOO07 RESP0070
1 NELEM,NPMAT,NPPT,NPT,IEXIT,ICOMEI RESPOO06 IF(Y(ND21.LE . YMAXI GO TO 100 RESP0071
C RESPOO09 YMAX = Y(ND21 RESP0072
C THIS SUBROUTINE ORDERS PIPE ELEMENTS AND PUTS PIPE RESPONSES RESP0010 RESP0073
C INTO MATRIX RESULTS. RESPOOll NETOP = I RESPOOH
00 C RESPOO12 100 CONTINUE RESP0075
~ C RESULT (1, N) X-COORDINATE ON PIPE (X-Y-O, AT PIPE CENTER, FOR RESPOO13 IF(NEP.EQ.OI RETURN RESP0076
C RESULT(2,NI Y-CooRDINATE ON PIPE LEVEL = 2 I RESPOO14 C RESP0077
C RESULT(2,NI Y-CooRDINATE ON PIPE LEVEL - 21 RESPOO15 C FIND BEAM ELEMENTS CONNECTED CLOCKWISE FROM TOP ELEMENT . RESP0076
C RESULT(3,N) X-DISPLACEMENT RESPOO16 C RESP0079
C RESULT (4, NI Y-DlaPLACEMENT RESP0017 KK = RESP0060
C RESULT(5,NI BENDING MOMENT (POSITIVE = INNER FIBER TENSION) RESP0016 NEL = NETOP RESP008l
C RESULT (6, NI THRUST FORCE (COMPRESSION = NEGATIVE I RESP0019 150 NELIST(KKI = NEL RESP0062
C RESULT (7, NI SHEAR fORCE RESP0020 If(KK.EQ. NEPI GO TO 250 RESP0083
C RESULT (8, NI NORMAL PRESSURE ON PIPE (POSITIVE OUTWARD NORMALIRESP0021 NAI - NOD(l,NELI RESP0064
C RESULT(9,NI TANGENTIAL PRESSURE ON PIPE (POSITIVE CLOCKWISE I RESP0022 DO 200 1=1, NEP RESP0085
C RESP0023 NEL = NELPIPIII RESP0086
C THE REMAINING RESULT ARRAY IS DEPENDENT ON PIPE TYPE .. RESP0024 NB2 = NOD(2,NELI RESP0087
C RESP0025 IF(NA1 . NE.NB21 GO TO 200 RESP0066
Uncomment this statement in all program modules for double RESP0026 KK - KK .1 RESP0069
precision version. SCM 3-10-90 RESP0027 GO TO 150 RESP0090
RESP0026 200 CONTINUE RESP0091
IMPLICIT DOUBLE PRECISION (A-H,O-ZI RESP0029 C RESP0092
RESP0030 C FIND BEAM ELEMENTS CONNECTED COUNTRE-CLOCKWISE FROM TOP ELEMENT. RESP0093
DIMENSION MNO(NELEMI,NOD(4,NELEM),RESULT(20,NPPTI RESP0031 C RESP0094
1 ,ST(6,NELEMI,STPIPE(2,NPPT I,U(NPTI,V(NPTI,X(NPTI,Y(NPTIRESP0032 DO 220 I~l, KK RESP0095
RESP0033 220 NELIST (NEP-I.l) NELIST(KK-I+1) RESP0096
Revise dimensions of XMONT and XTHRU arrays from 30 to 99. RESP0034 C RESP0097
SCM 4-30-89 RESP0035 NEL = NETOP RESP0098
RESP0036 225 NELIST(NEP-KK.1) ~ NEL RESP0099
DIMENSION XMONT(991,XTHRU(991 RESP0037 IF(KK.EQ.NEPI GO TO 250 RESPOIOO
RESP0036 NAl = NOD(2,NELI RESPOl01
COMMON ISIZEPRI BIVD(3),IX,NINC RESP0039 DO 230 1=1. NEP RESP0102
COMMON lMATERLI CP(3,3),DEN(10),E(10,10),GNU(10,101,H(10,10), RESP0040 NEL = NELPIP(II RESP0103
1 ITYPE(10) ,NON(10) RESP0041 NBI = NOD(l,NELI RESP0104
RESP0042 IF(NAl.NE.NB11 GO TO 230 RESPOI05
Revise dimensions of NELPIP and NELIST arrays from 30 to 99. RESPOOO KK-KK+1 RESP0106
GO TO 225 RESPOI07 C RESPOl70
230 CONTINUE RESPOlOS 299 CONTINUE RESPOl71
C RESPOI09 IF(NEP.EQ.O) RETURN RESPOl72
C WRITE MESSAGE DENOTING UNCONNECTED STRUCTURES . RESPOllO DO 300 1=1, NPMAT RESP0173
C RESPOlll NE = NELIST(I ) RESP0174
WRITE(6,3000) NEP,KK RESP01l2 NDI - NOD(1,NE) RESP0175
DO 240 I=l,KK RESPOll3 ND2 = NOD(2,NE) RESP0176
240 NELIST(I) = NELIST(NEP-KK+I) RESPOll4 RESULT(l,I) X(ND2) RESPOl71
C RESPOll5 RESULT(2,I) Y(ND2) RESPOl78
C" NOTE, KK = NUMBER OF CONNECTED ELEMENTS,NEP = ALL BEAM ELMTS. RESP01l6 RESULT(3,I) = U(NDZ) RESPOl79
C" CHECK NUMBER OF CONNECTED ELEMENTS WITH PRESCRIBED VALUE RESP01l7 300 RESULT(4,I) V(ND2) RESPOl80
RESPOllS C RESP018l
Revise limitation that continuous elements be connected . RESP01l9 IF(ICURVE.EQ . O) GO TO 310 RESPOl82
SCM 4-30-89 RESP0120 RESULT(I,NPPT) X(NDl) RESP0183
RESPOl21 RESULT(2,NPPT) Y(NDl) RESPD184
'250 IF (NPMAT .NE. KK) GO TO 650 RESP0122 RESULT(3,NPPT) = U(NDl) RESP0185
RESP0123 RESULT(4,NPPT) - V(NDl) RESP0186
250 CONTINUE RESP0124 310 CONTINUE RESPOl87
RESP0125 C RESP0188
C RESP0126 C" SAVE THE PREVIOUS CONVERGED SOLUTION FOR MOMENT AND THRUST RESP0189
C" CHECK THE BEAM SEQUENCE NUMBER OF EACH BEAM ELEMENT IN THE RESP0127 C RESP0190
C CLOCKWISE ORDER OF THE CONNECTED PIPE ELEMENTS RESP0128 IF(IEXIT.EQ.-1) GO TO 360 RESPOl9l
C RESP0129 DO 350 NUD 1, NPPT RESP0192
DO 285 1=1, NPMAT RESP0130 XMONT(NUD) = RESULT(5,NUD) RESPOl93
NEL = NELIST(I) RESP0131 350 XTHRU(NUD) = RESULT(6,NUD) RESPOl94
MAT = MNO(NEL) 11000 RESP0132 360 CONTINUE RESPOl95
IF (MAT . NE . I) GO TO 600 RESP0133 C RESPOl96
C RESP0134 C DISTRIBUTE ELEMENT RESPONSES TO NODES RESPOl97
DO 275 J=l,NEP RESP0135 C RESPOl98
275 IF(NEL.EQ.NELPIP(J)) NELPIP(J) - -NELPIP(J) RESP0136 RESPOl99
RESP0137 II = 1+1 RESP0200
...... C
285 CONTINUE RESP0138 400 NEI ~ NELIST(I) RESP020l
00
Vl C RESP0139 NE2 - NELIST(Il) RESP0202
C" CONSIDER BEAM ELEMENTS NOT PART OF PIPE SEQUENCE. MAKE SURE RESP014 0 NDI NOD(Z,NEl) RESP0203
C" THEY HAVE MATERIAL NUMBERS GREATER THAN NPMAT. RESP0141 NDZ = NOD(Z,NE2) RESP0204
C RESP0142 ND3 - NOD(l,NEZ) RESP0205
IF(NEP.EQ . NPMAT) GO TO 295 RESP0143 S1 SQRT«X(NDl)-X(ND2))"2+(Y(NDl)-Y(ND2))"2 ) RESP0206
DO 290 J=l , NEP RESP014 4 S2 = SQRT«X(ND3)-X(ND2))"Z+(Y(ND3)-Y(ND2))"2 ) RESP0207
NEL = NELPIP(J) RESP014 5 S3 = SQRT«X(ND3)-X(ND1))*'2+(Y(ND3)-Y(NDl))"2 1 RESP0208
IF(NEL.LE.O) GO TO 290 RESP0146 IF(I.EQ.l) SDI = Sl/Z. RESP0209
MAT = MNO(NEL) 11000 RESP0147 IF(Il.EQ.NPMAT) SD2 = S2/2.0 RESP02l0
IF (MAT .LT . NPMAT) GO TO 675 RESP0148 FX = STPIPE(l,I) -STPIPE(1,Il) RESP0211
290 CONTINUE RESP0149 FY = STPIPEIZ,I) -STPIPE(2,Il) RESP02l2
295 CONTI NUE RESP0150 COSA = (X(ND3)-X(NDll) / S3 RESP0213
C RESP0151 SINA = (Y(NDII-Y(ND3))/S3 RESP0214
C DETERMINE IF PIPE IS OPEN OR CLOSED . RESP0152 FN - FY'COSA + FX'SINA RESP02l5
C RESP0153 FT = -FX'COSA + FY'SINA RESP02l6
ICURVE RESP0154 C RESPOZl7
NELEFT = NELIST(l) RESP0155 RESULT (5, 11 I (ST 13, NE!) + ST (6, NEZ)) 12.0 RESP02l8
NERITE = NELIST (NPMAT) RESP0156 RESULT(6,Il) IST(l,NEl) + ST(4,NE211/2.0 RESP0219
NDLEFT ~ NOD(2,NELEFT) RESP0157 RESULT(7,Il) = ISTI2,NEl) + ST(5,NE2)) I 2.0 RESP0220
NDRITE = NOD(l,NERITE) RESP0158 RESULT(8,Il) - FN/(0.5'(Sl+S2)) RESP022l
IF(NDLEFT . EQ.NDRITE) ICURVE RESP0159 RESULTI9,Il) - FT/(0.5'(Sl+S2)) RESP0222
NPPT = NPMAT + ICURVE RESP0160 RESULT(19,Il) = RESULTI5,Il) -XMONTIIl) RESP0223
C RESP0161 RESULT(20,Il) - RESULT(6,Il) -XTHRU(Ill RESP0224
C PRINT OUT THE ELEMENTS COMPRISING PIPE. RESP0162 IF(Il.LT. I) GO TO 500 RESP0225
C RESP0163 IF(ICURVE.EQ . 1.AND.Il.EQ . NPMAT) GO TO 450 RESP0226
WRITE(6,2000) (NELIST(I),I=l,NPMAT) RESP0164 I ~ I + 1 RESP0227
C RESP0165 I1=I+1 RESP0228
RETURN RESP0166 IFIICURVE.EQ.O .AND. I.EQ.NPMAT) II RESP0229
C RESP0167 GO TO 400 RESP0230
C SECOND ENTRY RESP0168 C RESP0231
C PUT STRUCTURAL RESPONSES INTO RESULT VECTOR . RESP0169 C GET END POINTS FOR OPEN SECTIONS (OR SYMMETRIC HALVES) RESP0232
C RESP0233 SAVD0015
450 CONTINUE RESP0234 DIMENSION X(l), Y(l), NOD(LSTOP,l), NODB(l), BIV(3,1), KODE(l), SAVD0016
RESULT(5,1) ST(6,NELEFT) RESP0235 1 CODE(l), TITLE(17) SAVD0017
RESULT(6,1) - ST(4,NELEFT) RESP0236 C DATA TPSCAN, FZERO, IZERO 11.0, 0.0, 01 SAVD0018
RESULT(7,1) 0.0 RESP0237 C SAVD0019
RESULT(S,l) -STPIPE(2,1) I SDI RESP023S C" INITIALIZE PARAMETERS SAVD0020
RESULT(9,1) - 0.0 RESP0239 C SAVD0021
RESULT(19,1) - RESULT(5,1)-XMONT(1) RESP0240 NUMMAT = NSMAT + 1 SAVD0022
RESULT(20,1) = RESULT(6,1) - XTHRU(I) RESP0241 IF (KPUTCK .NE. 0) NPUTCK = 1 SAVD0023
RESULT (5, NPPT) ST(3,NERITE) RESP0242 IF(NPUTCK.NE.O .AND. IPLOT.NE.O) IPLOT E-1 SAVD0024
RESULT(6,NPPT) ST(I,NERITE) RESP0243 DO 20 N = 1, NPT SAVD0025
RESULT(7,NPPT) 0.0 RESP0244 20 CODE(N) = 0.0 SAVD0026
RESULT(S,NPPT) -STPIPE(2,NPMAT) ISD2 RESP0245 DO 30 N = 1, NBPTC SAVD0027
RESULT(9,NPPT) 0.0 RESP0246 NODE = NODB(N)/10000 SAVD0028
RESULT(19,NPPT) RESULT(5,NPPT) - XMONT(NPPT) RESP0247 IF (MOD(NODB(N) ,100) .GT. 1) CODE (NODE) 1.0 SAVD0029
RESULT(20,NPPT) = RESULT(6,NPPT) - XTHRU(NPPT) RESP024S IF (MOD (NODB (N) ,10) .EQ. 1) CODE (NODE) 2. 0 SAVD0030
C RESP0249 IF (MOD(NODB(N),100).EQ. 11) CODE (NODE) 3. 0 SAVD0031
C" INITILIZE RESULT MATRIX RESP0250 30 CONTINUE SAVD0032
C RESP0251 DO 40 N = 1, NELEM SAVD0033
500 RETURN RESP0252 KODE(N) = NOD(S,N) SAVD0034
C RESP0253 IF(NOD(2,N).EQ.NOD(3,N)) KODE(N) 11 SAVD0035
600 WRITE(6,4000) NEL,MAT,I RESP0254 IF(NOD(7,N).EQ.l) KODE(N) = 11 SAVD0036
STOP 10 RESP0255 40 CONTINUE SAVD0037
650 WRITE(6,4100) NPMAT, KK RESP0256 C SAVD0038
STOP 10 RESP0257 c·· SAVE MESH DATA FOR PLOTTING AND AS INPUT DATA FOR HEROIC SAVD0039
675 WRITE(6, 4200) NEL RESP0258 C SAVD0040
STOP 10 RESP02S9 SAVD0041
C RESP0260 Revise 1/0 Unit from LUDATA to Unit 14 . SAVD0042
2000 FORMAT(IIII0X,46H AN ORDERED LIST OF BEAM ELEMENTS AROUND PIPE. I RESP0261 SCM 11-24-88 SAVDOOO
X 10X,58H ORDERING IS CLOCKWISE FROM TOP TO BOTTOM OR LEFT TO RIGHTRESP0262 SAVD0044

-
00
0\
3000
XII(10X,10IS)
FORMAT(II/37H ALL BEAM ELEMENTS ARE NOT CONNECTED.
X 37H THE TOTAL NUMBER OF BEAM ELEMENTS IS ,IS /
X 4lH THE NUMBER OF CONNECTED BEAM ELEMENTS IS ,lSI
RESP0263
RESP0264
RESP026S
RESP0266
REWIND 14
IF(IPLOT.EQ.O) GO TO SO
IF(IPLOT.EQ.2) GO TO 120
SAVD004S
SAVD0046
SAVD0047
SAVD004B
X 54H THE LIST OF BEAM ELEMENTS BELOW WILL BE CONSIDERED TO I RESP0267 Revise LUPLOT from unformated to formatted. SAVD0049
X S4H TO COMPRISE THE PIPE. OTHER BEAM ELEMENTS WILL NOT BE I RESP0268 SCM 11-24-88 SAVDOOSO
X 57H PROCESSED BY THE PIPE SUBROUTINES. (NOTE IF YOU DID NOT RESP0269 ***********WRITE STATEMENTS PERMANENTLY INCORPORATED (JUNE 7B)j*********SAVDOOSl
X 56H INTEND DISCONNECTED STRUCTURES CHECK BEAM CONNECTIVITY.) RESP0270 WRITE (LUPLOT) (TITLE(K),K=1,17),NPT,NELEM,NUMMAT,NPUTCK,NINC SAVD0052
4000 FORMAT(11164H FATAL DATA ERROR. BEAM MATERIAL NUMBER IS NOT PROPERRESP0271 WRITE (LUPLOT) (CODE(N),X(N),Y(N),N=l,NPT) SAVD0053
lLY DEFINED ,I RESP0272 WRITE (LUPLOT) «NOD(K,N),K-1,4),KODE(N),NOD(6,N),N=1,NELEM) SAVD0054
X 115H ELEMENT NUMBER,IS,/,16H MATERIAL NUMBER,IS,I RESP0273 SAVDOOSS
X 26H MATERIAL NUMBER SHOULD BE , IS) RESP0274 WRITE(LUPLOT,6010) (TITLE(K),K-l,17) SAVDOOS6
4100 FORMAT (I I / 40H • • • • • FATAL DATA ERROR * • * •• ,/ RESP0275 WRITE(LUPLOT,601S) NPT,NELEM,NUMMAT,NPUTCK,NBPTC,NINC SAVD0057
1 44H NUMBER OF SPECIFIED CONNECTED BEAM ELEMENTS ,IS,/RESP0276 DO 100 N-l,NPT SAVDOOS8
2 41H NUMBER OF ACTUAL CONNECTED BEAM ELEMENTS, IS) RESP0277 WRITE(LUPLOT,6020) N,X(N),Y(N) SAVDOOS9
4200 FORMAT (/ II 40H • • • • * FATAL DATA ERROR • • • ,I RESP0278 100 CONTINUE SAVD0060
1 67H UNCONNECTED BEAM MATERIAL NUMBER SMALLER THAN NPMARESP0279 DO 110 N=l,NELEM SAVD0061
2T ELEMENT NUMBER, IS) RESP0280 WRITE(LUPLOT,6025) N, (NOD(K,N),K-l,4),KODE(N),NOD(6,N) SAVD0062
END RESP0281 110 CONTINUE SAVD0063
............................................... '* ..... * SAVDOOOl IF(IPLOT.LT.2) GO TO 50 SAVD0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM SAVD0002 120 WRITE(30,6010) (TITLEIK),K=1,17) SAVD006S
VERSION 1.0, MARCH 1990 SAVD0003 WRITE(30, 6030) NINC,NPMAT,NPPT SAVD0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY SAVD0004 SAVD0067
THE FEDERAL HIGHWAY ADMINISTRATION SAVD0005 C SAVD0068
........... * I< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... SAVD0006 C SAVD0069
SUBROUTINE SAVED (X, Y, NOD,NODB,BIV,KODE,CODE,TITLE,NPT,NELEM, SAVD0007 C SAVD0070
1 IPLOT,NBPTC, NPUTCK,KPUTCK,LSTOP, NINC, LUDATA, SAVD0008 C**********WRITE STATEMENTS PERMANENTLY ELIMINATED (JUNE 78)*********·*·SAVO0071
2 LUPLOT,NSMAT,NPMAT,NPPT) SAVD0009 C WRITE (LUPLOT) (TITLE(K), K ~ 1,8), NPT, NELEM, NUMMAT, NPUTCK, SAVD0072
SAVD0010 C 1 FZERO, NINC, IZERO, FZERO, FZERO, TPSCAN, TPSCAN, SAVD0073
Uncomment this statement in all program modules for double SAVDOOll C 2 (IZERO,K~1,12) SAVD0074
precision version. SCM 3-10-90 SAVD0012 C WRITE (LUPLOT) (CODE(N), X(N), Y(N), N = 1,NPT), SAVD007S
SAVD0013 C «NOD(K,N),K=1,4),KODE(N),N=1,NELEM), (IZERO,K=l,4) SAVD0076
IMPLICIT DOUBLE PRECISION (A-H,O-Z) SAVD0014 C SAVDOO?7
e*···*****··*···*·*·******·*****·***********-*··"'··**·******************SAVD0078 40 CONTINUE SAVD0037
C SAVD0079 C SAVD0038
50 CONTINUE: SAVD0080 C" SAVE ME:SH DATA FOR PLOTTING AND AS INPUT DATA FOR HEROIC SAVD0039
DO 45 N = I, NE:LEM SAVD008l C SAVD0040
NOD(6,N) = 1000'NOD(5,N) +10*NOD(6,NI +NOD(7,N) SAVD0082 SAVD0041
45 CONTINUE SAVD0083 Revise 1/0 Unit from LUDATA to Unit 14 . SAVD0042
IF(IPLOT.LT.O) END FILE LUPLOT SAVD0084 SCM 11-24-88 SAVDOOO
C SAVD0085 SAVD0044
SAVD0086 REWIND 14 SAVD0045
Revise 1/0 unit from LUDATA to Unit 14. SAVD0087 IF(IPLOT.EQ.O) GO TO 50 SAVD0046
SCM 11-14-88 SAVD0088 IF(IPLOT.EQ . 2) GO TO 120 SAVD0047
SAVD0089 SAVD0048
WRITE (14) NPT,NELEM,NBPTC, NINC, NPUTCK SAVD0090 Revise LUPLOT from unformated to formatted. SAVD0049
WRITE (14) (X(N), Y(Nl. N=l,NPT), SAVD0091 SCM 11-24-88 SAVD0050
1 «NOD(K,Nl. K=l,4), NOD(6,N), N=l,NELEM), SAVD0092 ···········WRITE STATEMENTS PERMANENTLY INCORPORATED (JUNE 78)*'*"'*"'SAVD0051
2 (NODB(N), (BIV(K,N), K=l,3), N=l,NBPTC) SAVD0093 WRITE (LUPLOT) (TITLE(K) ,K=l,17) ,NPT,NELEM,NUMMAT,NPUTCK,NINC SAVD0052
SAVD0094 WRITE (LUPLOT) (CODE(N),X(N),Y(N),N=l,NPT) SAVD0053
C SAVD0095 WRITE (LUPLOT) «NOD(K,N),K=l,4),KODE(N),NOD(6,N),N=l,NELEM) SAVD0054
WRITE (6,6005) SAVD0096 SAVD0055
RETURN SAVD0097 WRITE(LUPLOT,6010) (TITLE{K),K=l,17) SAVD0056
6005 FORMAT ( 53HO* • • • MESH DATA HAS BEEN SAVED * • • • • * *)SAVD0098 WRITE(LUPLOT,6015) NPT,NELEM,MUMMAT,NPUTCK,NBPTC,NINC SAVD0057
6010 FORMAT(lH',17A4,lH') SAVD0099 DO 100 N=l,NPT SAVD0058
6015 FORMAT(I5,5(lH"I5)) SAVD0100 WRITE(LUPLOT,6020) N,X(N),Y(N) SAVD0059
6020 FORMAT(I5,2(lH"E12.4)) SAVD0101 100 CONTINUE SAVD0060
6025 FORMAT(I5,6(lH"I5» SAVD0102 DO 110 N-1,NELEM SAVD0061
6030 FORMAT (IS, 2 (IH" IS)) SAVDOl03 WRITE(LUPLOT,6025) N, (NOD(K,N),K=l,4),KODE(N),NOD(6,N) SAVD0062
END SAVD0104 110 CONTINUE SAVD0063
.. ... * .. * .. .. .. .. .. .. .. .. .. .. " " .. * .. .. .. .. .. .. .. .. .. .. • .. .. "* SAVDOOOI IF(IPLOT . LT . 2) GO TO 50 SAVD0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM SAVD0002 120 WRITE(30,6010) (TITLE(K),K=l,17) SAVD0065
VERSION 1.0, MARCH 1990 SAVD0003 WRITE(30,6030) NINC,NPMAT,NPPT SAVD0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY SAVD0004 SAVD0067
...... THE FEDERAL HIGHWAY ADMINISTRATION SAVD0005 SAVD0068
00
-.....l *.*_ •••..•...• * . * * * * * * • • • • • • • • SAVD0006
C
C SAVD0069
SUBROUTINE SAVED (X, Y, NOD,NODB,BIV, KODE,CODE,TITLE,NPT,NELEM, SAVD0007 C SAVD0070
1 IPLOT,NBPTC,NPUTCK,KPUTCK,LSTOP,NINC,LUDATA, SAVD0008 C··········WRITE STATEMENTS PERMANENTLY ELIMINATED (JUNE 78)"""""'*SAVD0071
2 LUPLOT,NSMAT,NPMAT,NPPT) SAVD0009 C WRITE (LUPLOT) (TITLE(K), K = 1,8), NPT, NELEM, MUMMAT, NPUTCK, SAVD0072
SAVD0010 C 1 FZERO, NINC, IZERO, FZERO, FZERO, TPSCAN, TPSCAN, SAVD0073
Uncomment this statement in all program modules for double SAVDOOll C 2 (IZERO,K- l,12) SAVD0074
precision version. SCM 3-10-90 SAVD0012 C WRITE (LUPLOT) (CODE(N), X(N), Y(N), N· l,NPT), SAVD0075
SAVD0013 C 1 «NOD(K,N),K=l,4),KODE(N),N~l,NELEM), (IZERO,K~l,4) SAVD0076
IMPLICIT DOUBLE PRECISION (A-H,O-Z) SAVD0014 C SAVD0077
SAVD0015 C*********··+*·~***W**~* •••• ***************.**.******* ******************SAVD0078
DIMENSION X(l), Y(l), NOD (LSTOP, 1) , NODB(l), BIV(3,l), KODE(l), SAVD0016 C SAVD0079
CODE(l), TITLE(17) SAVD0017 50 CONTINUE SAVD0080
C DATA TPSCAN, FZERO, IZERO 11 . 0, 0.0, 01 SAVD0018 DO 45 N = I, NELEM SAVDOOal
C SAVD0019 NOD(6,N) = 1000'NOD(S,N) +10'NOD(6,N) +NOD(7,N) SAVDOOa2
C" INITIALIZE PARAMETERS SAVD0020 45 CONTINUE SAVD0083
C SAVD0021 IF(IPLOT.LT.O) END FILE LUPLOT SAVD0084
NUMMAT - NSMAT + 1 SAVD0022 C SAVD0085
IF (KPUTCK .NE. 0) NPUTCK - 1 SAVD0023 SAVD0086
IF(NPUTCK.NE.O .AND. IPLOT.NE.O) IPLOT --1 SAVD0024 Revise 1/0 unit from LUDATA to Unit 14. SAVD0087
DO 20 N I, NPT SAVD0025 SCM 11-14-88 SAVD0088
20 CODE(N) = 0.0 SAVD0026 SAVD0089
DO 30 N = I, NBPTC SAVD0027 WRITE (14) NPT,NELEM,NBPTC,NINC,NPUTCK SAVD0090
NODE = NODB(N)/10000 SAVD0028 WRITE (14) (X(Nl. Y(N), N-l,NPT), SAVD0091
IF (MOD(NODB(N) ,100) .GT. 1) CODE (NODE) • 1.0 SAVD0029 1 «NOD(K,N), K=l,4), NOD(6,N), N~l,NELEM), SAVD0092
IF (MOD(NODB(N) ,10) .EQ . 1) CODE (NODE) = 2.0 SAVD0030 2 (NODB(N), (BIV(K,N), K~l,3), N~l,NBPTC) SAVD0093
IF (MOD(NODB(N) ,100) .EQ. 11) CODE (NODE) ·3.0 SAVD0031 SAVD0094
30 CONTINUE SAVD0032 C SAVD0095
DO 40 N = I, NELEM SAVD0033 WRITE (6,6005) SAVD0096
KODE(N) • NOD(5,N) SAVD0034 RETURN SAVD0097
IF{NOO{2,N) . EQ . NOD{3,N)) KODE{N) 11 SAVD0035 6005 FORMAT ( 53HO' • • • MESH DATA HAS BEEN SAVED' * • • • • ')SAVD0098
IF(NOD(7,N) .EQ.l) KODE(N) = 11 SAVD0036 6010 FORMAT{lH',17A4,lH') SAVD0099
6015 FORMAT (IS, 5 (IH" IS» SAVDOI00 U(I,I) EXPP/SQRAL*(XP*CQ+XQ*SQ) SETU0025
6020 FORMAT (15,2 (IH, ,EI2.4» SAVDOI0l U(I,2) = EXPP/SQRAL'(-XQ*CQ+XP*SQ) SETU0026
6025 FORMAT(I5,6(IH"I5» SAVDOI02 U(I,3) EXPN/SQRAL*(-XP*CQ+XQ*SQ) SETU0027
6030 FORMAT(I5,2(IH"I5» SAVDOI03 U(I, 4) EXPN/SQRAL*(-XQ*CQ-XP*SQ) SETU0028
END SAVDOI04 U(2,1) EXPP*CQ SETU0029
'* ... ." '* * ... * ......... * '* * * * * * * '" * * ... *
jr ...... t> • • ••• • SAVGOOOI U(2,2) EXPP*SQ SETU0030
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM SAVG0002 U(2,3) EXPN*CQ SETU0031
VERSION 1. 0, MARCH 1990 SAVG0003 U(2,4) EXPN*SQ SETU0032
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY SAVG0004 U(3,1) EXPP*(XP*CQ-XQ*SQ) SETU0033
THE FEDERAL HIGHWAY ADMINISTRATION SAVG0005 U(3,2) EXPP*(XQ*CQ+XP*SQ) SETU0034
* ......... ." ... * * * * ...... * *' ...... * * ...... * ... * '* • • • " .. • SAVG0006 U(3,3) EXPN*(-XP*CQ-XQ*SQ) SETU0035
SUBROUTINE SAVEG (NODGEN, XYGEN, NUMGNP, NNP, MODEG,XCOORD,YCOORD)SAVG0007 U(3, 4) EXPN*(XQ*CQ-XP*SQ) SETU0036
SAVG0008 U(4,1) EXPP*(-0.5*CQ-C3*SQ) SETU0037
Uncomment this statement in all program modules for double SAVG0009 U(4,2) EXPP*(C3*CQ-0.5*SQ) SETU0038
precision version. SCM 3-10-90 SAVGOOI0 U (4, 3) EXPN*(-0.5*CQ+C3*SQ) SETU0039
SAVG0011 U(4, 4) EXPN*(-C3*CQ-0.5*SQ) SETU0040
IMPLICIT DOUBLE PRECISION (A-H,O-Z) SAVG0012 U (5,1) EXPP*(-XP*Cl*CQ-XQ*C2*SQ) SETU0041
SAVG0013 U(5,2) EXPP*(XQ*C2*CQ-XP*Cl*SQ) SETU0042
DIMENSION NODGEN(3,1), XYGEN(3,1) SAVG0014 U(5,3) EXPN*(XP*C1*CQ-XQ*C2*SQ) SETU0043
IF (NNP .EQ. 0) GO TO 50 SAVG0015 U(5, 4) EXPN*(XQ*C2*CQ+XP*Cl*SQ) SETU0044
NUMGNP = NUMGNP +1 SAVG0016 U (6, 1) EXPP*(C4*CQ+C3*SQ) SETU0045
NODGEN(2,NUMGNP) = NNP SAVG0017 U(6,2) EXPP*(-C3*CQ+C4*SQ) SETU0046
NODGEN(3,NUMGNP) = MODEG SAVG0018 U(6,3) EXPN*(C4*CQ-C3*SQ) SETU0047
XYGEN(I,NUMGNP) XCOORD SAVG0019 U(6,4) EXPN*(C3*CQ+C4*SQ) SETU0048
XYGEN(2,NUMGNP) = YCOORD SAVG0020 U (5, 5) THETA SETU0049
RETURN SAVG0021 U (5,6) = -1.0 SETU0050
50 WRITE (6,6000) SAVG0022 U(6,5) THETA SETU0051
DO 60 NGP = I,NUMGNP SAVG0023 U(6,6) -1.0 SETU0052
IF (NODGEN(3,NGP) .EQ. -1) WRITE (6,6002) NODGEN(2,NGP), SAVG0024 RETURN SETU0053
1 XYGEN(I,NGP), XYGEN(2,NGP) SAVG0025 END SETU0054
60 IF (NODGEN(3,NGP) .NE. -1) WRITE (6,6004) NODGEN(2,NGP), SAVG0026 ... ... ... '* * ... ... ... .. '* " ... ... ~ ... ... * ... ... ... ... ... ... * ... * * ... * SLPJOOOI
...... 1 NODGEN(3,NGP), XYGEN(I,NGP), XYGEN(2,NGP) SAVG0027 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM SLPJ0002
00 SAVG0028 VERSION 1.0, MARCH 1990 SLPJ0003
00 RETURN
6000 FORMAT ( 74HILISTING OF NODES (EXCEPT LAPLACE GENERATED NODES) AS SAVG0029 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY SLPJ0004
IGENERATED FROM INPUT/ 65HONODE GENERATION SAVG0030 THE FEDERAL HIGHWAY ADMINISTRATION SLPJ0005
2 X-COORDINATE Y-COORDINATE/31H NUMBER MODE SAVG0031 ... ... * ... * ... . . . . * SLPJ0006
6002 FORMAT ( 16, 24X, EI9.3, EI6.3) SAVG0032 C SLPJ0007
6004 FORMAT ( 2H 1,14, Ill, 13X, EI9.3, EI6.3) SAVG0033 C . . ... * * ... ... SUBROUTINE SLPJNT * * SLPJ0008
END SAVG0034 C NEW ADDITION SUBROUTINE IN 1983 FOR JOINT SLIPPING BEHAVIOR SLPJ0009
SETUOOOI C SLPJOOI0
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM SETU0002 SUBROUTINE SLPJNT(ICOME,LEVEL,NPMAT,NPPT,PDIA,PIPMAT,PE, SLPJ0011
VERSION 1. 0, MARCH 1990 SETU0003 *PNU,PA,IA,JCON,ICON) SLPJ0012
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY SETU0004 C SLPJ0013
THE FEDERAL HIGHWAY ADMINISTRATION SETU0005 C THIS ROUTINE CONTROLS THE PROCESSING OF SLIPPING JOINTS SLPJ0014
*************.***** SETU0006 C FOR BOTH LEVEL 1 AND LEVEL 2,3 SOLUTIONS. SLPJ0015
SUBROUTINE SETU(THETA,Cl,C2,C3,C4,SQRAL,XP,XQ,U) SETU0007 C THERE ARE THREE ENTRY POINTS INTO THIS ROUTINE SLPJ0016
SETU0008 C CALLED FROM THREE PLACES IN SUBROUTINE STEEL. SLPJ0017
C
SUBROUTINE FOR EVALUATING CORRECTIONAL SOLUTION MATRIX. SETU0009 C ENTRY POINTS ARE CONTROLLED BY THE VARIABLE ICOME AS FOLLOWS: SLPJ0018
C
SETUOOI0 C ICOME=l ,READ INPUT DATA FOR JOINTS SLPJ0019
C
SETU0011 C ICOME=2 COMPUTE CURRENT AXIAL YOUNGS MODULUS 'PENEW' SLPJ0020
Uncomment this statement in all program modules for double SETU0012 C AND STORE IN PIPMAT AS EFFECTIVE AREA SLPJ0021
precision version. SCM 3-10-90 SETU0013 C (ITERATE TO CONVERGENCE). SLPJ0022
SETU0014 C ICOME=3 , UPDATE CONVERGED SOLUTIONS AND PRINT RESULTS. SLPJ0023
IMPLICIT DOUBLE PRECISION (A-H,O-Z) SETU0015 C THE ONLY OTHER COMMUNICATION TO THIS SUBROUTINE IS THROUGH SLPJ0024
SETU0016 C COMMON/XJOINT/ WHICH PROVIDES CURRENT AXIAL STRAIN INCREMENTS FROMSLPJ0025
DIMENSION U(6,6) SETU0017 C SUBROUTINE BEAMST(LEVEL 2,3) OR SUBROUTINE BURNS (LEVEL 1). SLPJ0026
DO 100 1=1,6 SETU0018 C SLPJ0027
DO 100 J=I,6 SETU0019 Un comment this statement in all program modules for double SLPJ0028
100 U(I,J) = 0.0 SETU0020 precision version. SCM 3-10-90 SLPJ0029
SQ = SIN (XQ*THETA) SETU0021 SLPJ0030
CQ = COS(XQ*THETA) SETU0022 IMPLICIT DOUBLE PRECISION (A-H,O-Z) SLPJ0031
EXPP = EXP(XP*THETA) SETU0023 SLPJ0032
EXPN = EXP(-XP*THETA) SETU0024 Expand pipe dimension statements from 30 to 99. SLPJ0033
SCM 5-22-89 SLPJ0034 PSTRES(NJ)=O.O SLPJ0097
SLPJ0035 110 PRSTRN(NJ)=O.O SLPJ0098
DIMENSION JLOC(15),PIPMAT(5,99),PRSTRN(15),JfLAG(lS),PSTRES(15), SLPJ0036 C SLPJ0099
STRESI (lS),XJC(lS),PEOLDX(15),STRNl(15),SLOTLR(15) ,SLOT L1(15) SLPJ0037 C WRITE OUT JOINT DATA TO BE USED SLPJ0100
SLPJ0038 C SLPJ0101
Expand array dimension statements from 30 to 99. SLPJ0039 WRITE(6,2100)PSLIP,PFAIL,PES,PEP,PEf,SLOTL,NUMJ SLPJOI02
SCM 5-22-89 SLPJ0040 DO 150 NJ=l, NUMJ SLPJOI03
SLPJ0041 IF(JSLTLR.EQ.O) SLOTLR(NJ)=l.O SLPJ0104
COMMON/XJOINT/DSTRN(99) ,XLONG(99) ,JOINT SLPJ0042 SLOTL1(NJ)=SLOTL*SLOTLR(NJ) SLPJOI05
SLPJ0043 150 CONTINUE SLPJOI06
COMMON/LIMITS/PSLIP,SSTRN,PfAIL SLPJ0044 IF(LEVEL.GT.l)WRITE(6,2200) (NJ,JLOC(NJ),SLOTLl(NJ),NJ=l,NUMJ) SLPJOI07
DATA XPSLIP,XPFAIL,XRPES,XRPEP,XRPEf,XSLOTL/4950.,33000., .000001, SLPJ0045 IF(PFAIL.LE.PCSLIP)WRITE(6,2050) SLPJ0108
0.5, .000001,1.01 SLPJ0046 IF(PFAIL.LT.PCSLIP)STOP SLPJ0109
DATA TOLER,ITMAX,NJMAX/.Ol,40,151 SLPJ0047 RETURN SLPJOllO
C SLPJ0048 C SLPJOll1
C STATEMENT fUNCTION FOR RELATING JOINT RESPONSES SLPJ0049 C SECOND ENTRY,COMPUTE CURRENT AXIAL MODULUS AND STORE IN PIPMAT SLPJOl12
C TO EFfECTIVE RESPONSES SLPJOOSO C AS EffECTIVE AREA. THIS ENTRY WILL 8E REPEATED UNTIL CONVERGENCE SLPJOl13
C SLPJOOSI C OCCURS. SLPJOl14
fACTOR(PEJ)-PEJ/PE*(l . -XJR)+XJR SLPJOOS2 C SLPJ01l5
C SLPJOOS3 200 JCON~JCON+l SLPJ01l6
C GO TO PROPER ENTRY POSITION SLPJOOS4 C SLPJ01l7
C SLPJOOSS C COMPUTATIONS FOR LEVEL 1 SOLUTION (ENTRY 2) SLPJ01l8
GO TO (100,200,400),ICOME SLPJ0056 C SLPJ01l9
C SLPJ0057 IF(LEVEL.NE.l) GO TO 300 SLPJ0120
C FIRST ENTRY, READ JOINT DATA,SET DEFAULTS AND CONSTANTS SLPJ0058 PEOLD-PENEW SLPJ0121
C SLPJ0059 STRNPR=PRSTRN(l) SLPJ0122
100 READ(5,1000)PSLIP,PFAIL,RPES,RPEP,RPEF,SLOTL,NUMJ,JSLTLR SLPJ0060 DSTRNJ=DSTRN(l)/fACTOR(PEOLD) SLPJ0123
IF(LEVEL.NE.l)READ(5,1100) (JLOC(N),N=l,NUMJ) SLPJ0061 STRN-STRNPR+DSTRNJ SLPJ0124
IF(LEVEL.NE.l .AND. JSLTLR.NE.O) READ(5,1200) (SLOTLR(N),N=l,NUMJ) SLPJ0062 STRESP=PSTRES(l) SLPJ0125
C SLPJ0063 STRES=STRESP+DSTRNJ*PEOLD/(1.-PNU**2) SLPJ0126
SET DEFAULT VALUES FOR INPUT VARIABLES,CHECK DATA SLPJ0064 CALL JMOD(STRN,STRNPR,PE,PES,PEP,PEF,STRES,STRESP,PEOLD,PENEW,PNU SLPJ0127
...... C
C SLPJ0065 ., I FLAG , JCON, 1) SLPJ0128
00
\0 IF(PSLIP.EQ.O.O) PSLIP-XPSLIP SLPJ0066 STRNl(l)=STRN SLPJ0129
IF(PFAIL.EQ.O.O) PFAIL=XPFAIL SLPJ0067 STRESl(l)=STRES SLPJ0130
IF(RPES.LE.O.O) RPESzXRPES SLPJ0068 IF(JOINT.EQ.2 .AND. JCON.EQ.l) WRITE(6,2600)IA,PSLIP,SSTRN,PFAIL SLPJ0131
IF(RPEP.LE.O.O)RPEP=XRPEP SLPJ0069 C SLPJ0132
IF(RPEF.LE.O.O)RPEF=XRPEf SLPJ0070 C CHECK ON CONVERGENCE, NOTE: CONVERGENCE WITH JCON=-l SLPJ0133
IF(SLOTL.EQ.O.O)SLOTL=XSLOTL SLPJ0071 C SLPJ0134
IF(NUMJ.EQ.O) NUMJ=l SLPJOOn ERR=ABS((PENEW-PEOLD)/PEOLD) SLPJ0135
IF (NUMJ.GT.NJMAX) WRITE(6,2500) SLPJ0073 IF(ERR.LT.TOLER) JCON=-l SLPJ0136
DO 105 NJ=l,NUMJ SLPJ0074 IF(JCON.GT.ITMAX) JCON=-2 SLPJ0137
IF(LEVEL.EQ.l) GO TO 105 SLPJ0075 IF(JOINT.EQ.2) WRITE(6,2650) STRN,STRES,STRNPR,STRESP,PEOLD, SLPJ0138
IF (JLOC (NJ) .GT.O .OR. JLOC(NJ) .LE.NPMAT) GO TO 105 SLPJ0076 • PENEW,IfLAG,JCON,ICON SLPJ0139
WRITE(6,2000)NJ,JLOC(NJ) SLPJ0077 c SLPJ0140
105 CONTINUE SLPJ0078 C UPDATE CURRENT EFFECTIVE AREA IN PIPMAT MATRIX AND RETURN SLPJ0141
C SLPJ0079 C SLPJ0142
C COMPUTE CONSTANTS FOR MODULI VALUES AND STRAIN AT END OF INITIAL SLPJ0080 DO 250 N=l,NPMAT SLPJ0143
C EALSTIC RANGE SLPJ0081 PESTAR=PENEW/FACTOR(PENEW) SLPJ0144
C SLPJ0082 250 PIPMAT (3, N) =PESTAR*PA/PE SLPJ0145
PES=RPES'PE SLPJ0083 RETURN SLPJ0146
PEP=RPEP*PE SLPJ0084 C SLPJ0147
PEF=RPEF*PE SLPJ0085 C COMPUTATIONS FOR LEVEL 2 OR 3 SOLUTIONS (ENTRY 2) SLPJ014 8
ESTRN=PSLIP/(PE/(1.-PNU**2)) SLPJ0086 C SLPJ0149
SSTRN=l.O SLPJ0087 300 ERRSUM=O.O SLPJ0150
PCSLIP-PSLIP+(1.-ESTRN)*PES/(I.-PNU**2) SLPJ0088 IF(JOINT.EQ.2 .AND. JCON . EQ.l) WRITE(6,2700)IA,PSLIP,SSTRN,PFAIL SLPJ015l
IF(LEVEL.EQ.l)XJR=SLOTL*FLOAT(NUMJ)/(PDIA*3.1415926535898) SLPJ0089 DO 350 NJ=l,NUMJ SLPJ0152
C SLPJ0090 PEOLD=PEOLDX(NJ) SLPJ0153
C SLPJ0091 STRNPR=PRSTRN(NJ) SLPJ0154
C INITIALIZE PREVIOUS VALUES SLPJ0092 MNJ-JLOC(NJ) SLPJ0155
C SLPJ0093 XJR=SLOTLl(NJ)/XLONG(MNJ) SLPJ0156
PENEW=PE SLPJ0094 DSTRNJ=DSTRN(MNJ) I fACTOR (PEOLD) SLPJ0157
DO 110 NJ=l,NUMJ SLPJ0095 STRN=STRNPR+DSTRNJ SLPJ0158
PEOLDX(NJ)-PE SLPJ0096 STRESP=PSTRES(NJ) SLPJ0159
STRES~STRESP+DSTRNJ'PEOLD/(1.-PNU"2) SLPJ0160 C SLPJ0223
CALL JMOD(STRN,STRNPR,PE,PES,PEP, PEF,STRES, STRESP, PEOLD,PENEW,PNU SLPJ0161 C READ FORMAT SLPJ0224
',IFLAG,JCON,NJ) SLPJ0162 C SLPJ0225
STRN1(NJ)~STRN SLPJ0163 1000 FORMAT(6FI0.0, 215) SLPJ0226
STRES1(NJ)~STRES SLPJ0164 HOO FORMAT (1514) SLPJ0221
IF(JOINT.EQ.2) WRITE(6,2750)NJ,STRN,STRES,STRNPR,STRESP,PEOLD SLPJ0165 1200 FORMAT (15F4.0) SLPJ0228
• ,PENEW,IFLAG,JCON,ICON SLPJ0166 C SLPJ0229
IF(JOINT.EQ.2 .AND. NJ.EQ.NUMJ) WRITE(6,2800) SLPJ0167 C WRITE FORMAT SLPJ0230
C SLPJ0168 C SLPJ0231
C ACCUMULATE ERROR SUM OF ALL JOINTS SLPJ0169 2000 FORMAT(////28H "'FATAL ERROR IN DATA .,' ,/,16H JOINT NUMBER,I5, SLPJ0232
C SLPJ0170 18H JOINT LOCATION IS ,15,/) SLPJ0233
ERR~ABS((PENEW-PEOLD)/PEOLD) SLPJOl71 2050 FORMAT(///128H "'FATAL ERROR IN DATA " . ,I, SLPJ0234
ERRSUM=ERRSUM+ERR SLPJOl72 39H PFAIL IS TOO SMALL OR PES IS TOO LARGE) SLPJ0235
C SLPJOl73 2100 FORMAT(lHl,III,10X,27H SLOTTED JOINTS PROPERTIES,IIII SLPJ0236
C UPDATE CURRENT EFFECTIVE AREA IN PIPMAT MATRIX SLPJ0174 10X,27H SLIPPING STRESS .... ....... ,E1S.S,11 SLPJ0237
C AND SAVE IFLAG NUMBER SLPJ0175 10X,27H FAILURE STRESS ............ ,E15.5,11 SLPJ0238
C SLPJ0176 10X,27H SLIPPING-JOINT MODULUS .... ,E15.5,11 SLPJ0239
PEOLDX(NJ)~PENEW SLPJOl77 10X,27H POSTSLIPPING-JOINT MODULUS,E1S.S, I/ SLPJ0240
PESTAR~PENEW/FACTOR(PENEW) SLPJ0178 10X,27H JOINT FAILURE MODULUS .... ,E1S.5,11 SLPJ0241
PIPMAT (3, MNJ) ~PESTAR 'PA/PE SLPJ0179 10X,27H JOINT SLOT LENGTH ......... ,E1S . S,11 SLPJ0242
JFLAG(NJ)~IFLAG SLPJ0180 10X,27H NUMBER OF JOINTS ••....... . ,15,/1) SLPJ0243
350 CONTINUE SLPJ0181 2200 FORMAT(III,13H JOINT NUMBER,10X,14HJOINT LOCATION,10X, SLPJ0244
C SLPJ0182 , 13H JOINT LENGTH,II, SLPJ0245
C CHECK FOR CONVERGENCE AND RETURN TO STEEL SUBROUTINE SLPJ0183 • (6X,IS,18X,IS,13X,E13.4,1» SLPJ0246
C JCON.GT.O ,NO CONVERGENCE YET, ENTRY 2 WILL BE REPEATED SLPJ0184 2300 FORMAT(lHl,III,41H SLOTTED JOINTS RESPONSES AT LOAD STEP =,IS,I/ISLPJ0247
C. JCON~-l CONVERGED, ENTRY 3 WILL BE CALLED SLPJ0185 SX,7H STRAIN,SX,7H STRESS,SX,20H JOINT CLOSURE RATIO, SLPJ0248
C JCON~-2 ,PROGRAM WILL STOP , NO CONVERGENCE SLPJ0186 5X,6H IFLAG,II,2E13.3,10X,E13.3,5X,IS) SLPJ0249
C SLPJ0187 2400 FORMAT(lHl,III,41H SLIPPING JOINTS RESPONSES AT LOAD STEP =,I5,1//SLPJ0250
AVERR=ERRSUM/FLOAT(NUMJ) SLPJ0188 -SX,8HJOINT NO,SX,7H STRAIN,SX,IH STRESS,5X,19HJOINT CLOSURE RATIO,SLPJ02Sl
IF(AVERR. LT. TOLER) JCON=-l SLPJ0189 '5X,6H IFLAG,II, (8X,I5,2E13.3,9X,E13.3,5X,I5» SLPJ0252
IF(JCON.GT.ITMAX)JCO~-2 SLPJ0190 2500 FORMAT(//11,18H -"FATAL ERROR"', I, SLPJ0253
..- RETURN SLPJ0191 43H NUMBER OF JOINTS .GT. MAX.NUMBER OF JOINTS) SLPJ02S4
1.0 2600 FORMAT(lHl,//,6X,41H SLOTTED JOINT ITERATIONS AT LOAD STEP =,15, SLPJ02S5
0 C SLPJ0192
C THIRD ENTRY, UPDATE JOINT AXIAL STRAIN VECTOR SLPJ0193 , 11,6X,IH PSLIP=,E13.3,1,6X,IH SSTRN~,E13.3,1,6X, SLPJ0256
C AND PRINT RESULTS ABOUT JOINT BEHAVIOR SLPJ0194 • lH PFAIL-,E13.3,111,6X,IH STRN ,6X,IH STRESS,6X,IH STRNPR,6X, SLPJ0257
C SLPJ0195 , lH STRESP,6X,7H PEOLD ,6X,IH PENEW ,4X,6H IFLAG,4X,5H JCON,4X, SLPJ0258
400 IF(LEVEL.GT.l)GO TO 500 SLPJ0196 , SH ICON,II) SLPJ02S9
PRSTRN (1) -STRNI (1) SLPJ0197 2650 FORMAT(6E13.5,3(4X,IS» SLPJ0260
APRSTR=ABS(PRSTRN(l) SLPJ0198 2100 FORMAT(lHl,II,6X,4lH SLOTTED JOINT ITERATIONS AT LOAD STEP ~,I5, SLPJ0261
PSTRES(1)~STRES1(1) SLPJ0199 • 1/,6X,IH PSLIP~,E13.3,1,6X,IH SSTRN=,E13.3,/,6X, SLPJ0262
XJC(l)~(APRSTR-ESTRN)/(SSTRN-ESTRN) SLPJ0200 , lH PFAIL=,E13.3,11/,2X,9H JOINT NO,6X,7H STRN ,6X,IH STRESS,6X, SLPJ0263
IF(XJC(l) .LT.O.O) XJC(l)=O.O SLPJ0201 • lH STRNPR,6X,7H STRESP,6X,7H PEOLD ,6X,7H PENEW ,4X,6H IFLAG,4X, SLPJ0264
IF (XJC (1) . GT.1. 0) XJC (1) =1. 0 SLPJ0202 • 5H JCON,4X,5H ICON,II) SLPJ0265
WRITE(6,2300) IA,PRSTRN(l),PSTRES(l),XJC(I),IFLAG SLPJ0203 2150 FORMAT(6X,I5,6E13.5,3(4X,IS» SLPJ0266
RETURN SLPJ0204 2800 FORMAT (II) SLPJ0267
C SLPJ0205 C .. '"''"' • ,. ............... lit .. .. .. .. .. .. .. • • • • • • .. .. ... SLPJ0268
C UPDATE AND OUTPUT FOR LEVEL 2,3 SLPJ0206 END SLPJ0269
C SLPJ0201 .. .. .. .. .. .. .. • • .. * * • • .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. • .. .. STELOOOl
500 DO 550 NJ=I,NUMJ SLPJ0209 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM STEL0002
MNJ=JLOC (NJ) SLPJ0209 VERSION 1.0, MARCH 1990 STEL0003
PENEW~PEOLDX(NJ) SLPJ0210 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY STEL0004
XJR=SLOTL1(NJ)/XLONG(HNJ) SLPJ0211 THE FEDERAL HIGHWAY ADMINISTRATION STELOOOS
DSTRNJ~DSTRN(HNJ)/FACTOR(PENEW) SLPJ0212 * * * .. .. .. * .. .. * * .. * .. * .. * .. .. .. .. .. .. .. .. .. .. .. * .. STEL0006
PRSTRN(NJ)~STRNl(NJ) SLPJ0213 SUBROUTINE STEEL(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA,PIPMAT,STEL0007
APRSTR=ABS(PRSTRN(NJ» SLPJ02H 1 RESULT,SK,SM,XMODE) STEL0008
PSTRES (NJ) =STRESI (NJ) SLPJ0215 C STEL0009
XJC(NJ)~(APRSTR-ESTRN)/(SSTRN-ESTRN) SLPJ0216 C SUBROUTINE FOR CORRUGATED STEEL CULVERTS. STEL0010
IF(XJC(NJ) .LT.O.O) XJC(NJ)~O.O SLPJ0211 C STEL0011
IF(XJC(NJ) .GT.1.0) XJC(NJ)~l.O SLPJ0218 C THE FOLLOWING ADDITIONS TO THE ' RESULT • ARRAY ARE CALCULATED STEL0012
550 CONTINUE SLPJ0219 C IN THIS SUBROUTINE. STEL0013
WRITE(6,2400)IA, (NJ,PRSTRN(NJ),PSTRES(NJ),XJC(NJ),JFLAG(NJ), SLPJ0220 C STEL0014
, NJ=l, NUMJ) SLPJ0221 C RESULT (10, N) BENDING STRESSES IN OUTER FIBERS. STEL0015
RETURN SLPJ0222 C RESULT(ll,N) THRUST STRESS (AVERAGE OVER SECTION) STEL0016
C RESULT(12,N) - SHEAR STRESS (AVERAGE OVER SECTION) STEL0017 C STEL0080
C STEL0018 WRITE(6,2000) PDIA,PE,PNU,PYIELD,PDEN,NONLIN STEL0081
Uncomment this statement in all program modules for double STEL0019 IF(NONLIN.EQ.2) WRITE(6,2001) PE2 STEL0082
precision version. SCM 3-10-90 STEL0020 PHINGE(l) = 0.0 STEL0083
STEL0021 IF(XMODE.EQ.DESIGN) GO TO 110 STEL0084
IMPLICIT DOUBLE PRECISION (A-H,O-Z) STEL0022 READ(S, 1010) PA,PI,PS STEL008S
STEL0023 WRITE(6,2010) PA,PI,PS STEL0086
Revise dimensions of PIPMAT and RESULT arrays from 30 to 99. STEL0024 GO TO 130 STEL0087
SCM 4-30-89 STEL0025 C STEL008B
STEL0026 110 READ(S,1010) (PFS(I),I=l,NFS) STEL0089
DIMENSION CPLIST(10),FF(2),FS(3),PALIST(35),PFS(3),PHINGE(5), STEL0027 DO 120 1=1, NFS STEL0090
1 PILIST(35),PIPMAT(5,99),PSLIST(35),RESULT(20,99) STEL0028 IF(PFS(I) .GT.O.O) GO TO 120 STEL0091
STEL0029 PFS (I) = FS (I) STEL0092
C STEL0030 120 CONTINUE STEL0093
C NEW ADDITION COMMON STATEMENT IN 1983 FOR JOINT SLIPPING BEHAVIOR STEL0031 WRITE(6,2100) (PFS(I),I=l,NFS) STEL0094
C STEL0032 C STEL0095
STEL0033 PAMIN - GAGE20 STEL0096
Expand array dimension statements from 30 to 99. STEL0034 PA = PAMIN STEL0097
SCM 5-22-89 STEL0035 PI = PIMIN STEL0098
STEL0036 C NOTE ... SECTION MODULUS FOR STANDARD CORRUGATIONS HAS THE RELATION,STEL0099
COMMON/XJOINT/DSTRN(99),XLONG(99) ,JOINT STEL0037 PS = PI/(1.465*SQRT(PI/PA) + 0.37S*PA) STEL0100
STEL0038 ITER = 0 STEL0101
C STEL0039 C STEL0102
DATA E,XNU,YIELD/30000000.,0.3,33000.1 STEL0040 C INITIALIZE PIPE PROPERTIES ALL AROUND PIPE TO BE THE SAME STEL0103
DATA NFS,FS/3,3.,4.,2.1 STEL0041 C STEL0104
DATA FF,FIMIN,GAGE2010.0433,0.02,0.05,0.03BI STEL0042 C STEL010S
DATA ANALYS,DESIGN/4HANAL,4HDESII STELOOO C NEW ADDITION STATEMENTS IN 1983 FOR JOINT SLIPPING BEHAVIOR . STELOI06
DATA CPLIST,BXB,NUMCP,NUMGAI 4H 3/2,4H 2 ,4H B/3 ,4H 3,4H 6, STEL0044 C INPUT JOINT PROPERTIES IF JOINT .GT. 0 STEL0107
1 4H1/4 ,2*4H1/2 ,4H1 ,4H2 ,3H X ,5,71 STEL0045 C STEL010B
DATA PALISTI STEL0046 130 IF(JOINT.EQ.O) GO TO 135 STEL0109
...... x 0.03800,0.05066,0 . 06341,0.07916,0.11091,0.14266,0 . 17441 , STEL0047 CALL SLPJNT(ICOME,LEVEL,NPMAT,NPPT,PDIA,PIPMAT,PE,PNU, STELOllO
\0
x 0.04075,0.05433,0.06791,0.08491,0.11900,0.15316,0.18 741 , STEL0048 *PA,IA,JCON,ICON) STEL01l1
x 0.03B75,0.05158,0.06458,0.08066,0.11300,0.14533,0.1 7775, STEL0049 135 DO 140 N=l, NPMAT STEL01l2
x 0.04450,0.05925,0.07416,0.09275,0.13000,0.16733,0.2 0483, STELOOSO PIPMAT(l,N) = PE STEL0113
x 0.12966,0.16691,0.20408,0.22825,0.26658,0.30483,0.343251 STEL0051 PIPMAT(2,N) PNU STELOl14
DATA PILISTI STEL0052 PIPMAT(3,N) PA STELOllS
x 0.00025,0.00034,0.00044,0.00056,0.00085,0.00120,0.00163, STELOOS3 PIPMAT(4,N) PI STEL0116
x 0.00144,0.00153,0.00194,0.00245,0.00354,0.00471,0.00599, STELOOS4 140 PIPMAT(S,N) PDEN*PA STEL0117
x 0.00112,0.00150,0.00189,0.00239,0.00342,0.00453,0.0057 , STELOOS5 C STEL01l8
x 0.00515,0.00689,0.00865,0.01088,0.01545,0.02017,0 . 02508, STELOOS6 DO 145 N-1,NPPT STEL0119
x 0.06041,0.07B16,0.09616,0.10800,0.12691,0.14616,0.1658 31 STELOOS7 RESULT(14,N) PA STEL0120
DATA PSLISTI STEL005B RESULT(15,N) PI STELOl21
x 0. 00177,0 . 00230,0.00283,0 . 00349,0 . 00483,0 . 00627,0 . 00787, STELOOS9 14S RESULT(16,N) PI/PS STEL0122
x 0 . 00427,0.00560,0.00693,0 . 00854,0 . 01171,0 . 01485,0 . 01805, STEL0060 ICON = 0 STEL0123
x 0 . 00419,0.00549,0.00676,0.00831,0.01133,0 . 01428,0 . 01724, STEL0061 JCON = 0 STEL0124
x 0.00995,0.01315,0.01634,0.02025,0 . 02798,0 . 03557,0.04308, STEL0062 PESUM = PE STEL012S
x 0 . 05741,0.07325,0.08883,0.09891,0 . 11466,0 . 13016,0.145751 STEL0063 RETURN STEL0126
C STEL0064 C STELOl27
GO TO (100,200) , ICOME STEL006S C STEL0128
C STEL0066 C SECOND ENTRY DETERMINES MAXIMUM STRUCTURAL RESPONSES FOR STEL0129
C FIRST ENTRY ESTABLISHES PIPE PROPERTIES, AND SAFETY FACTORS STEL0067 C EVALUATING THE PIPE IN TERMS OF FAILURE CRITERIA. IN THE DESIGN STEL0130
C STEL0068 C MODE, THE PROGRAM ITERATES TO FIND ADEQUATE SECTION PROPERTIES. STEL0131
C STEL0069 C STEL0132
C 'JOINT' IS A NEW ADDITION TO THE NEXT READ STATEMENT IN 1983 STEL0070 200 IEXIT STEL0133
C AS AN OPTION TO USE THE SLIPPING JOINT BEHAVIOR OR NOT. STEL0071 C STEL0134
C STEL0072 IF(NONLIN . EQ . 1 .AND . IA . EQ.NINC) CALL HINGE(PIPMAT,NPMAT,PS,PDIA, STEL013S
100 READ(5,1000) NONLIN,PDIA,PE,PNU,PYIELD,PDEN,PE2,JOINT STEL0073 X PYIELD,SM,SK,RESULT,NPPT,PHINGE) STEL0136
IF(PE.LE.O.O) PE = E STEL0074 C STEL0137
IF(PNU.LE. 0.0) PNU ~ XNU STEL007S C IF NONLIN = 2, UPDATE NONLINEAR BEAM PROPERTIES (EFFECTIVE BENDINGSTEL0138
IF(PYIELD.LE.O.O) PYIELD - YIELD STEL0076 C AND AXIAL STIFFNESS). CONVERGENCE IS SIGNALED BY SUBROUTINE EMOD STEL0139
IF(NONLIN.NE . 1 .AND. NONLIN.NE.2) NONLIN = 0 STEL0077 C RETURNING ICON=-l . ITERATION LIMIT SETS ICON=-2. STEL0140
PIMIN = PDIA**2/(PE*FF(1)) STEL0078 C STEL0141
IF(PIMIN.GT.FIMIN) PIMIN = PIMIN*FF(1)/FF(2) STEL0079 IF(NONLIN . NE.2) GO TO 201 STEL0142
,1:\.
~

ICON ~ ICON + 1 STELOl43 C STE10206


CALL EHOD(IA,ICON,NPMAT,NPPT,PA,PE, PE2,PESUM,PI,PIPMAT, STELOl44 C DESIGN ... REVISE SECTION PROPERTIES AS REQUIRED STE10207
1 PNU,PS,PYIELD,RESULT,ICOME) STEL0145 C STE10208
C STEL0146 ICON = 0 STEL0209
C NEW ADDITION STATEMENT IN 1983 FOR JOINT SLIPPING BEHAVIOR. STEL0147 IF(IA.LT.NINC) RETURN STE10210
C MODIFY AXIAL STIFFNESS TO SIMULATE SLIPPING JOINTS,THIS OVER-RIDESSTEL0148 ITER = ITER + 1 STE10211
C MODIFICATIONS BY EMOD.CONVERGENCE IS SIGNALED BY SUBROUTINE SLPJNTSTEL0149 ICRRA ~ 0 STE10212
C RETURNING JCON--1. ITERATION LIMIT SETS JCON~-2 STEL0150 IeRKI - 0 STEL0213
C STELOlSl C STE10214
201 IF(JOINT.EQ.O) GO TO 208 STEL01S2 C UPDATE THRUST AREA AS REQUIRED BY MAX THRUST. STE1021S
CALL SLPJNT(ICOME,LEVEL,NPMAT,NPPT,PDlA,PlPMAT,PE,PNU, STEL01S3 C STE10216
'PA,IA,JCON,ICON) STEL01S4 PANEW = PFS (1) *TMAX*PA/PYIELD 5TE10217
IF(JCON.EQ . -2) WRITE (6,2999)JCON,ICON STE101SS IF(PANEW.1T. PAMIN) PANEW - PAMIN STEL0218
C STEL0156 IF(ABS«PANEW-PA)/PANEW) . LT . 0.05) ICHRA ~ 1 5TE10219
C CHECK FOR CONVERGENCE OF BOTH ICON AND JCON. CONVERGENCE DOES STEL01S7 PA - PANEW STE10220
C NOT OCCUR IF ICON OR JCON .GT. 0 STEL01S8 C STEL0221
C STEL01S9 C UPDATE MOMENT OF INERTIA AS REQUIRED BY ... (1) DEFLECTION LIMIT STE10222
208 IF(ICON.LE . O .AND. JCON.LE.O) GO TO 203 STEL0160 C AS A PERCENT OF DIAMETER, OR (2) ELASTIC BUCKLING AS GIVEN BY STE10223
IF(ICON.EQ.-1) ICON-O STEL0161 C CHELAPATI, HIGHWAY RESEARCH RECORD, NO. 413, 1972. STEL0224
IEXIT ~ -1 STEL0162 C STEL022S
RETURN STEL0163 PINEWD PFS(2)*DISP*PI/(0.2*PDIA) STEL0226
C STEL0164 PINEWB (PFS(3)*PAVG)**2*PBUCK STEL0227
C CHECK IF NONLINEAR SOIL MODEL HAS CONVERGED .,. STEL016S STEL0228
C STEL0166 Revise intrinsic funtion to generic form. SCM 3-10-90 STE10229
203 IF(NINC.GT.O) GO TO 204 STE10167 STE10230
lEXIT ~ -1 STE10168 PINEW - MAX(PINEWD,PINEWB) STE10231
RETURN STEL0169 STE10232
C STE10170 IF(PINEW.1T.PIMIN) PINEW - PIMIN STE10233
C EVALUATE CURRENT MAXIMUM STRESSES, DISPLACEMENTS, AND PRESSURES. STE10171 IF(ABS«PINEW-PI)/PINEW) . LT.O.OS) ICHKI STE10234
C STE10172 PI = PINEW STEL023S
204 TMAX ~ 0.0 STE10173 PS = PI/(1.46S*SQRT(PI/PA)+0.37S·PA) STE10236
>-' BMAX ~ 0.0 STE10174 C STEL0237
\0 PAVG ~ 0.0 STE10175 C UPDATE SECTION PROPERTIES AND CHECK FOR CONVERGENCE. STE10238
tv STEL0176 C STE10239
UYMAX ~ RESULT(4,l)
UYMIN ~ RESULT(4,l) STE10177 IF(ICRRA*ICHKI.EQ.1) GO TO 250 STEL0240
C STE10178 IF(ITER.GT.S) WRITE(6,2200) ITER,PA,PI,PS STE10241
DO 210 N~l,NPPT STE10179 IF(ITER.GT.5) GO TO 300 STEL0242
RESULT(10,N) ~-ABS(RESULT(S,N)/PS) STE10180 IEXIT = -2 STEL0243
RESULT(ll,N) - RESULT(6,N)/PA STE10181 GO TO 130 STEL0244
RESULT(12,N) = RESULT(7,N)/PA STE10182 C STEL024S
IF(NONLIN . EQ.O) GO TO 205 STEL0183 C SEARCH STANDARD CORRUGATION TABLES FOR SUITABLE SECTIONS WHICR STEL0246
IF(NONLIN.EQ.2) GO TO 202 STE10184 C SATISFY THE DESIGN SOLUTION, LIST THEM. STEL0247
IF(ABS(RESULT(10,N)) .GT.PYIELD) RESULT(10,N) - -PYlELD STE10185 C STE10248
GO TO 205 STE10186 250 WRITE(6,2300) ITER,PA,PI,PS STEL0249
202 IF(RESULT(18,N) .LT.1.0) GO TO 205 STEL0187 SUMMAX = 0.0 STE102S0
SIGMAX~PYIELD*(1.0+PE2*(RESULT(18,N)-1.0)/PE) STEL0188 IJBEST 0 STE102S1
RESULT(10,N)=-(SIGMAX-ABS(RESULT(11,N))) STEL0189 DO 280 I=l,NUMCP STE102S2
205 IF(ABS(RESULT(10,N)) .GT.BMAX) BMAX = ABS(RESULT(10,N)) STE10190 NGAGE - 0 STEL02S3
IF(NONLlN.NE.2) GO TO 206 STEL0191 DO 260 J~1,NUMGA 5TEL02S4
IF(SIGMAX.GT.BMAX .AND. RESULT(18,N) .GT.1.0) BMAX=SIGMAX STEL0192 IJ = J+NUMGA* (I-I) STEL02SS
206 CONTINUE STEL0193 CPA = PALIST (IJ) STEL02S6
IF(ABS(RESULT(ll,N)) .GT.TMAX) TMAX = ABS(RESULT(ll,N)) STEL0194 CPI = PILIST (IJ) STE102S7
IF(RESULT(4,N) .GT.UYMAX) UYMAX RESULT(4,N) STEL0195 IF(CPA.LT . PA . OR. CPI.1T . PI) GO TO 260 STEL02S8
IF(RESULT(4,N) .LT.UYMIN) UYMlN = RESULT(4,N) STEL0196 NGAGE = 22-2'J STE102S9
PAVG ~ PAVG + RESULT(8,N) STEL0197 IF(I.EQ.S) NGAGE~ 14-2*J+J/4 STEL0260
210 CONTINUE STE10198 GO TO 270 STE10261
PAVG ~ ABS(PAVG/NPPT) STEL0199 260 CONTINUE 5TE10262
DlSP ~ UYMAX-UYMIN STEL0200 WRITE(6,2400} CP1IST(I),BXB,CPLIST(I+5) STE10263
IF (SM .EQ. 0.0) SM - 1.0 STEL0201 GO TO 280 STEL0264
PBUCK ~ PDIA'·3/(36.*PESUM*SM*(1.-SK))*(1.-PNU**2) STE10202 270 WRITE(6,2500) CP1IST(I),BXB,CP1IST(I+5),NGAGE,CPA,CPI STEL026S
PCRIT = SQRT(Pl/PBUCK) STE10203 SUM5 = PA/CPA + PI/CPI 5TE10266
IF(NONLIN.EQ.1 .AND. PRINGE(l) .LT.O.O) GO TO 300 STEL0204 IF(SUMS.1T.SUMMAX) GO TO 280 STE10267
IF (XMODE.EQ.ANALYS) GO TO 300 STE10205 SUMMAX = SUMS STEL0268
IJBEST = IJ STEL0269 JCON = 0 STEL0332
NGBEST = NGAGE STEL0270 RETURN STEL0333
280 CONTINUE STEL0271 C STEL0334
C STEL0272 C FORMATS 5T£L0335
C CHOOSE MOST EFFICIENT SECTION FROM LIST AND ANALYSE. STEL0273 C STEL0336
C STEL0274 1000 FORMAT(I5 , 6FIO . 0,I5) 5TEL0337
IF(IJBEST.EQ.O) WRITE(6,2600) STEL0275 1010 FORMAT(3FIO.0) STEL0338
IF(IJBEST.EQ . O) GO TO 300 STEL0276 2000 FORMAT (III 10X.35H PIPE PROPERTIES ARE AS FOLLOWS . .. II STEL0339
PA ~ PALIST(IJBEST) STEL0277 X 15X,36H AVERAGE PIPE DIAMETER (IN . ) ..... . . , E15 . 5 II STEL0340
PI = PILIST(IJBEST) STEL0278 X 15X.36H YOUNGS MODULUS OF PIPE (PSI) ... . . . . , E15 . 5 I I STEL0341
PS - PSLIST(IJBEST) STEL0279 X 15X.36H POISSON5 RATIO OF PIPE (-) •...•. . • E15 . 5 I I STEL0342
lBEST = (lJBEST-1)/NUMGA+1 STEL02BO X 15X,36H YIELD STRESS OF PIPE (PSI) ....... . . , E15 . 5 II STEL0343
WRITE(6,2700) CPLI5T(IBE5T),BXB,CPLIST(IBEST+5),NGBEST STEL0281 X 15X,36H DENSITY OF PIPE (PCI) .... . ....•.. • . , E15 . 5 II STEL0344
XMODE - ANALYS STEL0282 X 15X.36H MATERIAL CHARACTER, NONLIN ..... .. . 15 I 5TEL0345
IEXIT = -2 STEL0283 X 17X.25H NONLIN=O, IMPLIES LINEAR I STEL0346
GO TO 130 STEL0284 X 17X,30H NONLIN=l. IMPLIES YIELD-HINGE I STEL0347
C STEL0285 X 17X,34H NONLIN=2, IMPLIES BILINEAR CURVE I) STEL0348
C PRINTOUT STRUCTURAL RESULTS AND EVALUATION. STEL0286 2001 FORMAT ( 115X,36H MODULUS OF UPPER BI-CURVE ..... ... .• E15 . 5 I) STEL0349
C STEL0287 2010 FORMAT( II lOX, 31H SECTION PROPERTIES OF PIPE II 5TEL0350
300 CONTINUE STEL0288 X 15X. 36H THRUST AREA (IN**2/IN) ............ , flO. 5 I I STEL0351
C STEL0289 X 15X, 36H MOM. OF INERTIA (IN**4/IN) •....... , F10 . 5 II 5TEL0352
C PRINT FINITE ELEMENT FIELD RESPONSES . STEL0290 X 15X, 36H SECTION MODULUS (IN**3/IN) ... . . . ..• F10.5 I) STEL0353
C STEL0291 2100 FORMAT(I I I 10X.43H DESIRED SAFETY FACTORS FOR PIPE DESIGN .. . 1115TEL0354
IF (LEVEL . EQ. 1) GO TO 330 STEL0292 X 15X,36H THRUST STRESS YIELDING .. . ...... •. . , F10 . 5 II STEL0355
ICOME = 3 STEL0293 X 15X,36H DEFLECTION COLLAPSE, (0.2*0) •... . .. , F10.5 II STEL0356
CALL PRHERO(IA,ICOME,IEXIT,LEVEL,NINC,NPMAT,NPPT,PDIA,PIPMAT, STEL0294 X 15X,36H ELASTIC BUCKLING . ..... . ....... .... , F10 . 5 I ) STEL0357
1 RESULT, SK, SM) STEL0295 2200 FORMAT(lH1,111 10X,50H DESIGN ITERATIVE PROCEDURE DID NOT CONVERGE5TEL0358
ICOME = 2 STEL0296 X AFTER ,131 10X,55H ITERATIONS. THE LAST SOLUTION IS PRINTED AND ESTEL0359
330 CONTINUE STEL0297 XVALUATED, I 10X,37H WHERE THE SECTION PROPERTIES ARE II STEL0360
ICOME- 3 STEL029B X 15X,36H THRUST AREA PER UNIT LENGTH .... . .. E15 . 5 II STEL0361
IF(NONLIN.EQ.2) CALL EMOD(IA,ICON,NPMAT,NPPT,PA,PE,PE2,PESUM,PI, STEL0299 X 15X,36H MOM. OF INERTIA PER UNIT LENGTH • .. , E15 . 5 II STEL0362
...... 1 PIPMAT,PNU,PS,PYIELD,RESULT,ICOME) STEL0300 X 15X.36H SECTION MODULUS PER UNIT LENGTH •.. , E15 . 5 II) STEL0363
\0 STEL0301 2300 FORMAT(lH1,1110X,19H DESIGN RESULTS AT ,I2,11H ITERATIONS II STEL0364
w C
C NEW ADDITION STATEMENTS IN 19B3 FOR JOINT SLIPPING BEHAVIOR STEL0302 X 15X, 35H REQUIRED THRUST AREA •...•. . .. F10.5 II STEL0365
C CALL TO SLPJNT TO PRINTOUT RESPONSES . 5TEL0303 X 15X, 35H REQUIRED MOM . OR INERTIA .• ... , F10 . 5 II ST£L0366
C 5TEL0304 X 15X, 35H REQUIRED SECTION MODULUS . . . .. , F10 . 5 1III STEL0367
IF(JOINT.NE.O)CALL SLPJNT(ICOME,LEVEL,NPMAT,NPPT,PDIA, STEL0305 X lOX, 49H THE FOLLOWING STEEL CORRUGATED SECTIONS MEET THE STEL0368
*PIPMAT,PE,PNU,PA,IA,JCON,ICON) STEL0306 X lOX, 37H ABOVE REQUIREMENTS WITH MINIMUM AREA II STEL0369
ICOME=2 5TEL0307 X15X.12H CORRUGATION,3X,5H GAGE,3X,12H THRUST AREA.3X.13H MOM. INERSTEL0370
WRITE (6,2800) lA, (RESULT(l,J) ,RESULT(3,J) ,RESULT(8,J) ,RESULT(5,J) ,5TELO 308 XTIA I) STEL0371
X RESULT(6,J),RESULT(7,J) ,RE5ULT(2,J),RE5ULT(4,J) ,RESULT (9,J), STEL0309 2400 FORMAT(17X,3A4.3X,22H (NO ADEQUATE SECTION) STEL0372
X RE5ULT(10,J) ,RE5ULT(11,J) ,RESULT(12,J) ,J=l,NPPT) STEL0310 2500 FORMAT(17X.3A4,6X,I2,5X,F10.5,5X,F10.5) STEL0373
C 5TEL0311 2600 FORMAT(IIII 10X,37H NO STANDARD CORRUGATION IS ADEQUATE. I STEL0374
IF(NONLIN.EQ . 2) WRITE(6,2990) lA, (J,RESULT(19,J),RESULT(20,J), STEL0312 X lOX, 45H AN ANALYSIS OF THE REQUIRED SECTION FOLLOWS. ) STEL0375
X RESULT(18,J),RESULT(13,J),J~1,NPPT) STEL0313 2700 FORMAT(IIII lOX, 38H THE CORRUGATION WITH MINIMUM AREA AND STEL0376
C STEL0314 X10X,21H MOMENT OF INERTIA IS,3A4,5H GAGE,I3,1 STEL0377
IF (TMAJ(*DISP*PAVG*BMAX .EQ . 0 . 0) GO TO 350 STEL0315 X lOX, 41H AN ANALYSIS OF THIS CORRUGATION FOLLOWS . ) STEL0378
CIRCR = P¥IELO/TMAX STEL0316 2800 FORMAT(lHl, 1110X,32H STRUCTURAL RESPONSES OF CULVERT STEL0379
DISPR ~ (0.2*PDIA)/DISP STEL0317 X 3X, 12H LOAD STEP = ,12 II STEL0380
BUCKR = PCRIT/PAVG STEL0318 X 4X.9H X-COORD.,5X.8H X-DISP.,4X,9H N-PRES .• 6X,7H MOMENT,6X, STEL0381
BENOR - PYIELD/BMAX STEL0319 X 7H THRUST,7X,6H SHEAR 14X.9H Y-CooRD.,5X,8H Y-DISP.,5X,8H S-PRES . STEL0382
HANOR = PI I PIMIN STEL0320 X .4X.9H M-STRESS,4X,9H T-5TRESS,4X.9H 5-STRESS , STEL0383
wRIrE!6 , 2900) IA, CI RCR, DISPR,BUCKR.BENDR ,HANDR STEL0321 X (1IF13 . 2,5E13.3/F13.2.5E13 . 3» STEL0384
350 CQNTWU£ S'I'ELD322 2900 FORMAT(lH1,111110X.34H CALCULATED SAFETY FACTORS AT STEP, 13 III STEL0385
l « NONLIN . WE.I ) GO TO 400 STEL0323 X15X,50H THRUST STRESS . . . . . . . (YIELD-STRESS/MAX-STRESS) =,F10.211 STEL0386
I f( PH I NGE(l ) . L7.0 . 0 .OR. PHINGECl) . GT . l.O ) GO TO Hio ST£L032 4 X15X,50H DISPLACEMENT . . .. .. .. . (DIAMETER*0 . 2/ MAX-DISP.) =,F10.2 11 STEL0387
WR I 'I"E (6 . 2950 ) (FHl NGE ( r) , 1 - 1, 5 ) 5 '1'£LOJ 2S X15X,50H ELASTIC BUCKLING . ...... (P-CRITlCAL/P-AVERAGE) -,F10.211 I STEL0388
400 re;X IT = 1 5 '1'E L 032 6 X lOX, 20H PERFORMANCE FACTORS I I I STEL0389
If(rA.LT . NINC) IEY~T- 0 5'1'EL0 327 X15X,50H MAXIMUM STRESS . .. ... (YIELD-STRESS/MAX-STRESS) =,F10.2 IisTEL0390
I F (J CON. EQ. - 2) ICON=- Z STEL032S X15X.50H HANDLING REQUI REMENT . • •. ..... ... . (FF*EI / D**2) =,F10.2 I)STEL0391
t F I IC~ .EQ.- 2) WRITE (6 . 2995 ) STEL0.329 2950 FORMAT( I II lOX, 27H PLASTIC HINGING EVALUATION I II 5TEL0392
1f' l1cQN. EO . -Z) STOP 5T£LO,330 X 15X,42H RATIO OF LOAD AT INITIAL YIELDING ..... F10.5 II STEL0393
ICON ~ 0 S'l'EL0331 X 15X,42H RATIO OF MAXIMUM HINGE PENETRATION .. . . F10.5 II STEL0394
X 15X,4ZH RATIO OF CIRCUMFERENCE IN YIELDING .... , FI0.5 II 5TEL0395 DUI = 1.0 5TF80052
X 15X,4ZH RATIO OF MAX-DI5P. DUE TO YIELDING .... , F10.5 II 5TEL0396 IF(N*J1.LT.2 . OR. N*J1.GT.4) DU1 = 2.0 5TF80053
X 15X,4ZH RATIO OF MAX-5TRA1N/YIELD-5TRAIN ...... F10.5 II) 5TEL0391 8N- 65 (N) 5TF80054
2990 FORMAT(lH1,11110X,40H NONLINEAR CHARACTERI5TIC5, LOAD 5TEP -,13115TEL0398 AN=A5(N) 5TF80055
X5X,13H NODE INNER-FIBER OUTER-FI6ER STRAIN RATIO 5TEL0399 ZT(N )=0.0 5TFB0056
X FRACTION OF IZ1X,57H5TRAIN 5TRAIN MAX-TO-YIELD 5TEL0400 ZT(N+3) = FY*DU1 5TF80057
X WALL YIELDED II (5X,I5,ZE17.5,1X,F10.5,1X,F10.5» 5TEL0401 ZT(N+6)=0.0 5TF80058
2995 FORMAT(lHO,111131(ZH ')11173H THE SOLUTION WILL NOT CONTINUE DUE T5TEL040Z ZT(N+9) = 0.0 5TF80059
XO THE RATIO OF ERROR IN THE MODULU5 11141H IT 15 RECOMMENDABLE T5TEL0403 DO 250 1=1,3 5TFB0060
XO USE SMALLER LOAD 5TEP5 11131(ZH *» 5TEL0404 DZ=-1. 0/3.0 5TFB0061
2999 FORMAT(II,5X,6H JCON=,I5,1,5X,6H ICON=,I5,11) 5TEL0405 D4=AL(I,N) STF80062
END 5TEL0406 D5=BT (I, N) 5TFB0063
• • • • * * . * * * * * * * • • ,. •• ** ... .. * .. .. .. .. .. STFBOOOI D6=GA(I,N) 5TF60064
CANDE-89 (C)ULVERT (AN)ALY515 AND (DE)SIGN PROGRAM STF60002 8I=B5(I) 5TF80065
VERSION 1.0, MARCH 1990 5TF60003 AI=A5(I) 5TF80066
PU6LIC DOMAIN 50FTWARE CONTRIBUTED BY 5TF60004 Xl-6I*8N 5TF80067
THE FEDERAL HIGHWAY ADMINI5TRATION 5TF60005 XZ-6I*AN 5TF80068
.. .. * .. .. .. .. .. .. .. .. .. .. .. :t .. * ..
11 .. .. .. .. fir .. STFB0006
.. 11 11 .. .. X3-AI*BN 5TF80069
SUBROUTINE 5TF5U8 5TF80001 X4=AI*AN 5TF80070
C 5T,80008 X5-X2+X3 5TFB0071
C THIS SUBROUTINE FORMS THE ELEMENT MATRIX FOR A TRIANGULAR 5TFB0009 CT(N,I)= Cll*X1+C13* X5 +C33*X4 5TFB0072
C ELEMENT 5TF60010 CT(N,I+3)= CIZ*X3+C13'X1+C23'X4+C33*X2 5TF80073
C 5TFB0011 CT(N,I+6)~D2*CT(N,I) 5TF80014
Uncomrnent this statement in all program modules for double 5TFBOOIZ CT(N,I+9)=D2*CT(N,I+3) 5TF80075
precision version . SCM 3-10-90 5T,B0013 CT(N+3,I+3)~ C22'X4+C2J* X5 +C33'X1 5TF80076
5TF60014 CTIN+3,I+6)=DZ*(C13*X1+C1Z*XZ+ C33*X3+C23*X4 ) STFB0077
IMPLICIT DOUBLE PRECISION (A-H,O-Z) 5TF60015 CT(N+3,I+9)=D2*CT(N+3,I+3) 5TF80018
5TF80016 CT(N+6,I+6)=c11'D4+Z.0*clJ*D5+C33*D6 5TF80079
DIMEN5ION AL(3,3),8T(3,3),CT(12,12),CTP(12,}7),GA(3,3),ZT(12) 5TF60011 CT(N+6,I+9)=C13*D4 +(C12+C33)*D5+C23*D6 5TF80080
COMMON IELEMNTI AS(3),B5(3),Cl(17,17),E5T(4,3),RQ(4),RT(3), 5T,B0018 250 CT(N+9,I+9)=C22*D6+Z.0*C23'D5+CJ3'D4 5TF80081
1 5TORE(17),Z4112) ,ZQ(4) ,ZDUM(3) ,ZY(l7) ,Jl,RO 5TF60019 DO JOO N=1, lZ 5TF80082
...... COMMON 15IZEPRI BIVD(3),IX,NINC 5TF60020 DO 300 I=N,1Z 5TF80083
1.0 5TF80021 300 CT(I,N)~CT(N, I) 5TF80084
.po. COMMON lMATERLI CP(3,3),DENII0),E(10,10),GNU(10,10),H(10,10),
1 ITYPE(10) ,NON(10) 5TFB0022 C 5TF80085
COMMON IE5TABLI ITRW(Z8,2),NETCL(17,2),T(28,Z) 5TF60023 C 5U6-ELEMENT UNKNOWN5 TRANSFORMED TO ELEMENT UNKNOWNS 5TFB0086
CALL GEOM(AA,DI,D2,D3) STF80024 C 5TF80087
DO 155 N=1,3 ST,B0025 K8=1 5TF80088
8N=65(N) 112.0 5TFB0026 MC-1 5TFB0089
AN=A5 IN) IlZ. 0 5TF80021 DO 400 K~1,17 5TF80090
DO 150 1=1,3 ST,80028 KA=NETCL (K, J1) 5TFB0091
AL(N,I)=2 . 0*BN *B5(I) 5TFB0029 DO 3Z0 MM=l, KA STFB009Z
BT(N,I)=AN *85(I)+AS(I)*8N STFB0030 M=ITRW (K8, Jl) STF8D093
150 GA(N,I)=2.0*AN *AS(I) STF60031 ZY(K)=ZY(K)+ZT(M)*T(K8,Jl) 5TF80094
AL(N,N)-Dl/12.0 5TFB0032 3Z0 KB=K8+1 5TFB0095
BT(N,N)=D2/12.0 5TF80033 DO 380 L=1,12 5TE'80096
155 GA(N,N)=D3/12.0 5TF60034 CTP(L,K)=O.O 5TF80091
DU=0.5/AA 5TFB0035 MP=MC 5TF80098
Cll=CP(I,I)*DU 5TF60036 DO 380 MM=l,KA 5TFB0099
Cl2=CP(I,2)*DU 5TF60037 M=ITRW(MP, J1) 5TF80100
C13=CP(l, 3) *DU 5TFB0038 CTP(L,K)=CTP(L,K)+CT(L,M)'T(MP,J1) 5TF80101
C22=CP(2,2)*DU 5TF60039 380 MP=MP+1 5TE'B0102
C23=CP(2, 3) *DU 5TF60040 400 MC=MC+KA 5TFB0103
C33=cP(3,3)*DU STF60041 MC=l 5TFB0104
FY = -RO*AA/8. 5TFB0042 DO 410 1=1,17 5TF80105
C 5TFB0043 KA=NETCL I I, Jl ) 5TFB0106
C CHECK FOR DATA ERROR 5TF80044 DO 405 K=l,l1 5TF60107
C 5TF60045 MP=MC 5TF80108
IF(AA.LE . O. O) WRITE(6,911) IX 5TF60046 DO 405 MM=1, KA 5TF80109
911 ,ORMAT III 7X,21HDATA ERROR IN ELEMENT , 141/) 5TF60047 M=ITRW (MP, J1) 5TFB0110
C 5TF60048 Cl(I,K)=C1(I,K)+CTP(M,K)*TIMP,Jl) 5TFB0111
C FORM ELEMENT STIFFNE5S MATRIX 5TF60049 405 MP=MP+1 5TE'B0112
C 5T,B0050 410 MC=MC+KA 5TFB0113
DO 250 N=1,3 5TF60051 RETURN 5TF80114
END STFB0115 JI- J STFN0063
* * * * " . * " ' . + * * * * * * * * * * * * * * .. * • • • • • STFNOOOI C STFN0064
CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM STFN0002 C NODE COORDINATES OF SUB-ELEMENT ARE FOUND STFN0065
VERSION 1.0, MARCH 1990 STFN0003 C STFN0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY STFN0004 DO 100 Kz1,3 STFN0067
THE FEDERAL HIGHWAY ADMINISTRATION STFN0005 RT(K) = RQ(K) STFN0068
. * * * * * * * * * * * + * * * * * * * * * . ; * * * * * * • STFN0006 100 ZT(K) = ZQ(K) STFN0069
SUBROUTINE STIfNS(BIV,NOD,NODB,NQ,X,Y,MNO,U,V,ST,IA,LB1,MN,IAC, STFN0007 IF(JTRY . EQ.1) GO TO 105 STFN0070
X MNX,ITER,ICON,NEQ,NBPTC,NELEM,NPT) STFN0008 IF(J1 .EQ. 2) GO TO 103 STFN0071
C STFN0009 RT(3) = RQ(4) STFN0072
C THIS SUBROUTINE FORMS THE ELEMENT MATRIX FOR A QUADRILATERAL STfN0010 ZT(3) = ZQ(4) STFN0073
C ELEMENT STFNOOll GO TO 105 STfN0074
C STFN0012 103 RT(l) = RQ(4) STFN0075
Un comment this statement in all program modules for double STFN0013 ZT(l) = ZQ(4) STFNOO?6
precision version. SCM 3-10-90 STFN0014 105 M~6·JI-7 STFNOO?7
STFN0015 DO 220 K=l,3 STFN0078
IMPLICIT DOUBLE PRECISION (A-H,O-Z) STFN0016 M=M+2 STFN0079
STFN0017 STORE(M) = RT(K) STFN0080
DIMENSION BIV(3,NBPTC),NOD(4,NELEM),NODB(NBPTC),NQ(NPT), STFN0018 220 STORE(M+l) = ZT(K) STFN0081
1 X(NPT) ,Y(NPT),U(NPT) ,V(NPT),MNO(NELEM) ,ST(6,NELEM) STFN0019 CALL STfSUB STFN0082
COMMON /ELEMNT/ AS(3),BS(3),C1(17,17),EST(4,3),RQ(4),RT(3), STFN0020 300 CONTINUE STFN0083
1 STORE (17) , Z4 (12) , ZQ (4) , ZT (3) , ZY (17) ,J1, RO STFN0021 C STfN0084
COMMON /SIZEPR/ BIVD(3),IX,NINC STFN0022 C THE ELEMENT UNKNOWNS ARE ELIMINATED STFN0085
COMMON/SYSTEM/B (240) ,A(240,120) STFN0023 C STFN0086
COMMON IMATERLI CP(3,3),DEN(10),E(10,10),GNU(10,10),H(10,lO), STFN0024 IF(JTRY.EQ.1) GO TO 313 STFN0087
1 ITYPE(10) ,NON(10) STFN0025 DO 312 K=l,9 STFN0088
DIMENSION IIFLG(3) STFN0026 LL=17-K STFN0089
C STFN0027 KK-18-K STFN0090
C INITIALIZE ELEMENT STIFFNESS AND LOADING STFN0028 DU3=C1(KK,KK) STFN0091
C STFN0029 DU2=ZY(KK) STFN0092
DO 60 J=1,17 STFN0030 DO 312 L=l,LL STFN0093
>-' STFN0031 DU1=C1 (L,KK) IDU3 STFN0094
DO 50 K=l,17
\0
VI 50 C1 (J, K)=O. 0 STFN0032 DO 310 M=l,LL STFN0095
60 ZY(J)=O.O STFN0033 310 C1(L,M)~C1(L,M)-C1(KK,M)·DU1 STFN0096
C STFN0034 312 ZY(L)=ZY(L)-DU1*DU2 STFN0097
C THE CORNER POINT COORDINATES ARE fOUND STFN0035 C STFN0098
C STFN0036 C STIfFNESS MATRIX STORED STFN0099
DO 90 J=1. 4 STFN0037 C STFNOI00
K = NOD(J,IX) STfN0038 313 STORE(17) = IX STFNOI01
RQ(J)~X(K) STFN0039 WRITE (12) (ZY(M) ,STORE (M) , (C1 (M, N) ,N=l, 11) ,M=l, 17) STFNOI02
90 ZQ(J) aY(K) STFN0040 1 «CP(J,K),K=1,3).J=l,3) STFNOI03
NU=2 STfN0041 C STFNOI04
C STFN0042 C THE BOUNDARY CONDITIONS ARE CONSIDERED STFNOI05
C BENDING ELEMENT STIFFNESS DEVELOPED STfN0043 C STfNOI06
C STfN0044 DO 334 J- 1,4 STFNOI07
IF(NOD(3,IX) . NE.NOD(2,IX» GO TO 95 STfN0045 NRQ = NOD(J,IX) STFNOI08
CALL BEAMEL STFN0046 DO 331 K-1,NBPTC STFNOI09
NU=3 STFN0047 KK~IABS(NODB(K» STFNOllO
GO TO 313 STFN0048 Kl=KK/10000 STFNOll1
C STFN0049 IF (NRQ .NE . K1) GO TO 331 STFN0112
C INTERFACE ELEMENT CONSTRAINT AND LOAD DEVELOPMENT STfN0050 XX=l.O STFN01l3
C STfN0051 If (NODB(K) .LT. 0) XX=O.O STFN01l4
95 IF(MNX . EQ.O) GO TO 9? STfN0052 NODB(K) - -KK STFN01l5
CALL XFACES(MN,IAC,MNX,IX,ICON,ITER,NELEM,NPT,MNO,NOD,ST,U,V,I A) STfN0053 NR=NU* (J-1) STFN01l6
GO TO 313 STfN0054 IIfLG(1)=MOD(KK,100) 110 STFN01l7
C STFN0055 IIFLG(2)=MOD(KK,10) STfN01l8
C THE SUB-ELEMENT MATRICES ARE fOUND AND ADDED INTO THE ELEMENT STFN0056 IIFLG(3)=IIFLG(1)+IIFLG(2) STFN01l9
C MATRIX, JTRY=l IMPLIES ONE TRIANGLE, JTRY = 2, IMPLIES TWO . STfN0057 STFN0120
C STFN0058 Add extended boundary condition definition. MKG 3-18-89 STFN0121
97 JTRY=2 STFN0059 STFN0122
IF (NOD(4,IX) .EQ. NOD(3,IX) ) JTRY = 1 STFN0060 IF (lIFLG(l) .EQ. 2) IIFLG(3) 0 STFN0123
C STfN0061 IF (IIFLG(2) .EQ. 2) IIFLG(3) - 0 STFN0124
DO 300 J=1, JTRY STFN0062 STFN0125

"_.,
BIVD{l) ~ BIV{l,K) STFN0126 NCCC=NCCC+1 STFN0189
BIVD(2) = BIV{2,K) STFN0127 NCN-NCN+l STFN0190
BIVD(3) =0.0 STFN012B IF (NCN.LT. 1) GO TO 344 STFN019l
IIIN=MOD (KK,lOOOO) /l00 STFN0129 A(NRM,NCN) = A(NRM,NCN) +C1(NRCC,NCCC) STFN0192
lING = BIV{3, K) STFN0130 344 CONTINUE STFN0193
IF{ANG .EQ. 0.0) GO TO 320 STFN0131 345 CONTINUE STFN0194
C STFN0132 350 B(NRM) ~ B(NRM) + ZY(NRCC) STFN0195
C TRANSFORMATION TO N-S AXES STFN0133 RETURN STFN0196
C STFN0134 END STFN0197
CA-COS{IING) STFN0135 . . . . . . . . STRSO'OOI
SA=SIN(IING) STFN0136 CIINDE-89 (C)ULVERT (IIN)ALYSIS lIND (DE)SIGN PROGRAM STRS0002
Dl-ZY (NR+l) STFN0137 VERSION 1.0, MARCH 1990 STRS0003
D2=ZY{NR+2) STFN013B PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY STRS0004
ZY(NR+l)=Dl*CA+D2*SA STFN0139 THE FEDERAL HIGHWAY ADMINISTRATION STRS0005
ZY(NR+2)=-Dl*SA+D2*CA STfN0140 * * • + * * ~ * • * * * * * * * * * * • * * * * * * + • * * * * * * • STRS0006
DO 315 JJ=I,B STfN014l SUBROUTINE STRESS (BIV,MNO,NOD,NODB,NQ,ST,STPIPE,U,V,IA,NBPTC, STRS0007
DI-Cl (NR+l, JJ) STfN0142 1 NELEM,NELEMT,NPMAT,NPPT,NPT,SKAVG,SMAVG) STRS0008
D2=Cl (NR+2, JJ) STFN0143 STRS0009
Cl(NR+l,JJ)=Dl*CA+D2*SA STfN0144 Uncomment this statement in all program modules for double STRSOOI0
315 Cl{NR+2,JJ)=-Dl*SA+D2*CA STFN0145 precision version. SCM 3-10-90 STRSOOll
DO 31B II=I, B STfN0146 STRS0012
DI-Cl{II,NR+l) STfN0147 IMPLICIT DOUBLE PRECISION (A-H,O-Z) STRS0013
D2 c Cl(II,NR+2) STfN014B STRS0014
Cl{II,NR+l)-Dl*CA+D2*SA STFN0149 DIMENSION BIV(3,NBPTC) ,MNO(NELEM) ,NOD(4,NELEM) ,NODB(NBPTC) ,NQ(NPT) STRS0015
31B Cl{II,NR+2) --Dl*SA+D2*CA STfN0150 1 ,ST(6,NELEM),STPIPE(2,NPPT ),U(NPT),V(NPT) STRS0016
320 DO 330 N=I,NU STFN0151 COMMON IELEMNTI AS(3),BS(3),C1(17,17),EST(4,3),RQ(4),RT(3), STRS0017
DUI-O.O STfN0152 1 STORE(17),Z4(12),ZQ(4),ZT(3),ZY{17),J1,RO STRS0018
IF(IAN .EQ. IAl DUl=BIVD( N) STFN0153 COMMON IMATERLI CP(3,3),DEN(10),E(10,10),GNU(10,10),H(10,10), STRS0019
NR=NR+l STfN0154 1 ITYPE(lO),NON(lO) STRS0020
STFN0155 COMMON/SYSTEMiB(240),A(240,120) STRS0021

-
C
C LOADS ADDED IN STfN0156 COMMON IESTABLI ITRW(2B,2),NETCL(17,2),T(2B,2) STRS0022
C STfN0157 C STRS0023
\0 BOUNDARY POINTS TRANSFORMED TO X-Y COORDINATE SYSTEM STRS0024
0\ ZY{NR)=ZY{NR)+XX*DUI STFN015B C
IF{IIFLG(N) .EQ. 0) GO TO 330 STFN0159 C STRS0025
C STFN0160 DO 600 K~l,NBPTC STRS0026
C DISPLACEMENTS SPECIFIED STFN0161 KK-IABS(NOOB(K) ) STRS0027
C STFN0162 NODB(K)=KK STRS0028
ZY{NR)=DUl*XX STFN0163 lING - BIV(3,K) STRS0029
Cl(NR,NR)=O . O STFN0164 IF(ANG .EQ. 0.0) GO TO 600 STRS0030
DO 327 M=l,B STfN0165 Kl=KK/lOOOO STRS0031
ZY{M)=ZY{M)-Cl(M,NR)*DUl STFN0166 JJ-NQ(K1) 1100 STRS0032
Cl{M,NR)=O.O STFN0167 IF(JJ.EQ.NQ(Kl+1) 1100) GO TO 600 STRS0033
327 Cl(NR,M)=O.O STFN016B CT~COS(IING) STRS0034
330 CONTINUE STfN0169 SA=SIN(IING) STRS0035
331 CONTINUE STFN0170 D1 _ B(JJ) STRS0036
334 CONTINUE STFNOl71 02 - B(JJ+l) STRS0037
C STFNOl72 B(JJ) = Dl ·CT -D2*SA STRS003B
C THE ELEMENT MATRIX IS NOW ADDED INTO THE SYSTEM MATRIX STFN0173 B(JJ+l) - Dl*SA +D2'CT STRS0039
C STFN0174 600 CONTINUE STRS0040
NRCC=O STFN0175 C STRS0041
lJU-LBl*NEQ STFN0176 C FOR EACH ELEMENT FIND STRAINS AND STRESSES STRS0042
DO 350 K=1,4 STfNOI77 C STRS0043
KK = NOD (K, IX) STfN0178 SMAVG = 0.0 STRS0044
NR=NQ{KK) 1100-1 STFN0179 SKAVG = 0.0 STRS0045
NRM=NR-lJU STFNOIBO SMKNEL : 0.0 STRS0046
DO 350 M=l, NU STFN01Bl REWIND 12 STRS0047
NRCC=NRCC+l STFN0182 DO 726 III=l,NELEMT STRS0048
NRM-NRM+l STFN0183 C STRS0049
NCCC=O STFN0184 C RECALL ELEMENT STIFFNESS MATRIX STRS0050
DO 345 L=1,4 STFNOIB5 C STRSOOS1
JJ = NOD(L,IX) STFN0186 READ(12) (ZY(M), STORE (M), (Cl (M, N), N~l, 17) ,M=l, 17), STRS0052
NCN~NQ(JJ)/IOO-NR-M STFN0187 1 ({CP(J,K),K=1,3)'J=1,3) STRS0053
DO 345 N=l,NU STfN0188 I=STORE(17)+0.1 STRS0054
MN~MNO(I) /l000 STRS0055 C CALCULATE SUB-ELEMENT EXPANSION COEFFICIENTS STRS0118
lAC - MOD(MNO(I),lOOO)/lO STRS0056 C STRS0119
MNX ~ MNO(I)-lOOO*MN-lO*IAC STRS0057 DO 715 Jl=l,JTRY STRS0120
NODIl,I) = IABS(NOD(l, I)) STRS0058 DO 670 K=1,12 STRS0121
C STRS0059 670 Z4 (K)=O.O STRS0122
C CALCULATE ELEMENT UNKNOWNS STRS0060 M=6*Jl-7 STRS0123
C STRS0061 DO 675 K=I,3 STRS0124
L~l STRS0062 M=M+2 STRS0125
DO 610 J=1,4 STRS0063 RT (K)=STORE (M) STRS0126
K ~ NOD(J,I) STRS0064 675 ZT(K)=STORE(M+l) STRS0127
ND~NQ(K)/lOO STRS0065 JIP=Jl STRS0128
ZY(L) ~ B(ND) STRS0066 DU-0.5 STRS0129
ZYIL+l) = B(ND+l) STRS0067 IF (JTRY .EQ. 2)GO TO 677 STRS0130
610 L- L+2 STRS0068 DU=1.0 STRS0131
C STRS0069 JIP-2 STRS0132
C BEAM ELEMENT COMPUTATIONS STRS0070 677 CALL GEOM(AA, 01, D2, D3) STRS0133
C STRS0071 DU=DU/AA STRS0134
IF(MNX.GT.O) GO TO 615 STRS0072 MP=1 STRS0135
IF (NOD(2,I) .NE. NOD(),I)) GO TO 621 STRS0073 DO 680 K=I,17 STRS0136
ZY(6) ~ BIND+2) STRS0074 KA-NETCL (K, Jl) STRS0137
CALL BEAMSTINOD,NQ,I,NELEM,NPT,MN) STRS0075 00 680 MM~l, KA STRS0138
RTIl) RQ(4) STRS0076 M=-ITRW(MP,J1) STRS0139
RT(2) ~ ZQ(4) STRS0077 Z4(M)=Z4 (M)+ZYCK)*T(MP,Jl) STRS0140
RT(3) = 0.0 STRS0078 680 MP-MP+l STRS0141
GO TO 718 STRS0079 C STRS0142
C STRS0060 C STRAINS CALCULATED FOR SUBELEMENTS STRS0143
C INTERFACE ELEMENT RECOVERY OF FORCES AND DISPLACEMENTS STRS008l C STRS0144
C STRS0082 EX~O . STRS0145
615 NDI = NOD(l,I) STRS0083 EY=O.O STRS014 6
ND2= NOD(2, I) . STRS0084 GAMXY=O.O STRS0147
STRS0085 DO 701 K=1,3 STRS0148
..... ND3 = NOD(3,I)
NDFI = NQ(NDl)/lOO STRS0066 Dl=AS(K) STRS0149
\0 STRS0067 D2=BS (K) STRS0150
-...J NDF2 = NQ(ND2)/lOO
NDF) ~ NQ(ND3)/lOO STRS0088 EX-EX+Z4(K)*D2 STRS0151
ROil) B(NDn) STRS0089 EY=EY+Z4 (K+3) *01 STRS0152
RQ(2) - B(NDF3+l) STRS0090 701 GAMXY-GAMXY+Z4(K)*Dl+Z4 (K+3)*D2 STRS0153
RQ(3) B(NDF3) - ST(3,I) STRS009l RQ(I)-EX*DU+RQ(I) STRS0154
ZO(l) B(NDF3+l) - ST(4,I) STRS0092 RQ(2)=EY*DU+RQ(2) STRS0155
ZQ(2) B(NDF2)-B(NDFl) - ST(5, I) STRS0093 RQ(3)~GAMXY*DU+RQ(3) STRS0156
ZQ(3) BINDF2+l)-BINDFl+1) - ST(6,I) STRS0094 DU-(1.0-DU*AA)*O.5/AA STRS0157
RT(l) 0.0 STRS0095 IF(JI .EO. 2)GO TO 705 STRS0158
RT(2) ~ 0.0 STRS0096 RO(I)=RQ(1)-DU*BS(1)*(Z4(7)-Z4(8)-Z4(9)) STRS0159
RT(3) 0.0 STRS0097 RQ(2)=RQ(2)-DU*AS(I)*(Z4(10)-Z4(11)-Z4(12)) STRS0160
GO TO 718 STRS0098 RQ (3) ~RQ (3) -DU* (AS (1) * (Z4 (7) -Z4 (8) -Z4 (9)) +BS (1) * (Z4 (10) -Z4 (11) STRS0161
C STRS0099 1 -Z4(12))) STRS0162
621 JTRY~2 STRSOIOO GO TO 715 STRS0163
IF (NODI3,I) .NE. NODI4,I)) GO TO 625 STRSOl01 705 RQ(I)=RQ(I)-DU *BS(3)*(Z4(9)-Z4(8)-Z4(7)) STRS0164
JTRY~l STRS0102 RQ(2)=RQ(2)-DU *AS(3)' (Z4 (12)-Z4 (11)-Z4 (10)) STRS0165
DO 622 J-9,17 STRS0103 RQ(3)~RO(3)-DU *(AS(3)*(Z4(9)-Z4(8)-Z4(7)) +BS(3)*(Z4(12)-Z4(11) STRS0166
622 ZY(J)~O.O STRSOl04 1 -Z4(10))) STRS0167
GO TO 658 STRSOl05 715 CONTINUE STRS0168
625 DO 630 J=1,8 STRS0106 C STRS0169
DO 630 K-9,17 STRS0107 C INCREMENTAL STRESSES CALCULATED STRS0170
630 ZY(K)~ZYIK)-Cl(K,J)*ZYIJ) STRS0108 C STRSOl71
ZY(9)=ZY(9)/Cl(9,9) STRS0109 DO 717 ~1, 3 STRSOl72
DO 650 J~lO, 17 STRSOllO DU=O.O STRS0173
KA~J-l STRS0111 DO 716 J=1,3 STRS0174
DO 645 K-9,KA STRS01l2 716 DU=DU+RO(J)*CP(L,J) STRS0175
645 ZY(J)=ZY(J)-ZY(K)*Cl(J,K) STRS01l3 717 ZQ(L)=DU STRS0176
650 ZY(J)=ZY(J)/Cl(J,J) STRS01l4 C STRS0177
65a DO 660 K-1, 4 STRS01l5 C COMPUTE AVERAGE SOIL PROPERTIES FOR BUCKLING AND HINGING STRS0178
660 RQ(K) -0.0 STRS01l6 C STRS0179
C STRSOll1 RT(l) 0.0 STRS0180
RT(2) 0.0 STRS0181 LURITE = 11 XCANOOZ4
RT(3) 0.0 STRS0182 REWIND LURITE XCAN0025
C STRS0183 REWIND LUREAD XCAN0026
SMAVG - SMAVG + CP(l,l) STRS0184 C XCAN0027
SKAVG ~ SKAVG + CP(l,2)/CP(l,l) STRS0185 C ESTABLISH IS-WAS LIST FOR NODES TO INCLUDE INTERFACE NODES. XCAN0028
SMKNEL ~ SMKNEL + 1 . STRS0186 C XCAN0029
C STRS0187 ISWAS(l,l) - 1 XCAN0030
C INCREMENTAL STRESSES AND STRAINS ADDED TO TOTAL VALUES STRS0188 ISWAS (1, Z) = 0 XCAN0031
C STRS0189 DO 50 N=Z, 110 XCAN0032
718 CONTINUE STRS0190 IZONE = 0 XCAN0033
DO 719 J=l. 3 STRS0191 IFIN.GE.38.AND.N.LE.4Z) IZONE = XCAN0034
ST(J+3,I) ~ ST(J+3,1) + ZQIJ) STRS0192 IF(N.EQ.49) IZONE = 1 XCAN0035
719 STIJ,I) = ST(J,I) + RQ(J) STRS0193 IF(N.GE . 56 . AND.N.LE.60) IZONE XCAN0036
C STRS0194 ISWAS(N,l) ~ ISWASIN-1,l) + 1 + Z*ISWAS(N-l,2) XCAN0037
C" PIPE RESPONSES STRS0195 50 ISWAS(N,2) ~ IZONE XCAN0038
C STRS0196 C XCAN0039
IF (NOD(2, I) .NE. NOD(3, I» GO TO 726 STRS0197 C READ, MODIFY AND SAVE CONTROL INPUT XCAN0040
IBEAM = MNO(I)/I000 STRS0198 C XCAN0041
STPIPEI1,IBEAM) STPIPEI1,IBEAM) + RTI1) STRS0199 READ (LUREAD,6105) PREP,TITLE,WORD2,NINC,MGENPR,NPUTCK,IPLOT,IWRT,XCAN0042
STPIPE(Z,IBEAM) = STPIPE(Z,IBEAM) + RT(Z) STRS0200 X NUMNP,NUMEL,NBPTC XCAN0043
726 CONTINUE STRSOZ01 NUMNP - NUMNP + 22 XCAN0044
C STRSOZ02 NUMEL = NUMEL + 11 XCAN0045
IF (SMKNEL .EQ. 0.0) GO TO 750 STRS0203 NBPTC ~ NBPTC + NADDB XCAN0046
SMAVG = SMAVG/SMKNEL STRS0204 WRITE(LURITE,6105) PREP,TITLE,WORD2,NINC,MGENPR,NPUTCK,IPLOT,IWRT,XCAN0047
SKAVG = SKAVG/SMKNEL STRS0205 X NUMNP,NUMEL,NBPTC XCANO.048
750 CONTINUE STRS0206 C XCAN0049
C STRS0207 C READ, MODIFY AND SAVE NODAL GENERATION INPUT XCAN0050
Co, INCREMENTAL DISPLACEMENTS ARE ADDED STRS0208 C XCAN0051
C STRS0209 N' 1 XCAN0052
DO 785 I-1,NPT STRSOZ10 100 READ(LUREAD, 6110) LIMIT,NNP,MODE,XCOORD,YCOORD, IZERO,SPACNG,FZERO XCAN0053
STRS0211 NX - ISWASINNP,l) XCAN0054
..... IF IMOD(NQII),lOO) .EQ. O)GO TO 785
JJ=NQ(I) 1100 STRS0212 C XCAN0055
\0 STRS0213 C CHANGE RELATIVELY ADDRESSED NODES XCAN0056
00 DU = B(JJ)
DV = BIJJ+l} STRS0214 C XCAN0057
U(I)-U(I)+DU STRS0215 IF (MODE .LT. 100) GO TO 130 XCAN0058
VII)=V(I)+DV STRS02l6 KRELAD = MODE / lOO XCAN0059
785 CONTINUE STRS0217 IF (KRELAD .NE . 1 .AND. KRELAD . NE. 3) GO TO 120 XCAN0060
REWIND 12 STRSOZ18 XCAN0061
RETURN STRS0219 Revise intrinsic function to generiC form. SCM 3-10-90 XCAN0062
END STRS0220 XCAN0063
.. ** .. * • • • '" . . . . . + . . . . . . . ** ** .......... . XCANOOOI NPP - INT(XCOORD) XCAN0064
CANDE-89 IC)ULVERT IAN)ALYSIS AND IDE)SIGN PROGRAM XCAN0002 XCAN0065
VERSION 1.0, MARCH 1990 XCAN0003 XCOORD ~ FLOATIISWAS(NPP,l» XCAN0066
PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY XCAN0004 120 IF IKRELAD .NE. 2 .AND. KRELAD .NE. 3) GO TO 130 XCAN0067
THE FEDERAL HIGHWAY ADMINISTRATION XCAN0005 XCAN0068
,..,.***** • • • + " , * * * * * * I t * * * * . _ . 1 > * . * XCAN0006 NPP - INT(YCOORD) XCAN0069
SUBROUTINE XCANILUREAD,IGO) XCAN0007 XCAN0070
C XCAN0008 YCOORD = FLOATIISWAS(NPP,l) XCAN0071
C MODIFY CAN LUDATA TAPE FOR INTERFACE ELEMENTS AROUND PIPE. XCAN0009 130 CONTINUE XCAN0072
C XCAN0010 IF (ISWAS (NNP,2) .EQ.O) GO TO 150 XCAN0073
Uncomment this statement in all program modules for double XCANOOll NPX(N) ~ NX XCAN0074
precision version. SCM 3-10-90 XCAN001Z MODX(N) ~ MODE XCAN0075
XCAN0013 XCXIN) ~ XCOORD XCAN0076
IMPLICIT DOUBLE PRECISION (A-H,O-Z) XCAN0014 YCXIN) ~ YCOORD XCAN0077
XCAN0015 N - N+l XCAN0078
DIMENSION ISWAS(110,Z),TITLEI17),NPXI11),MODX(11),XCX(11),YCX(11)XCAN0016 150 WRITE(LURITE,6110) IMORE,NX,MODE,XCOORD,YCOORD,IZERO,SPACNG,FZERO XCAN0079
1 ,NBADD(4),INCC(11) XCAN0017 IF(LIMIT.NE.ILAST) GO TO 100 XCAN0080
DATA INCC 14*1,2,2,3,3,3*41 XCAN0018 C XCAN0081
DATA NADDB,NBADD I 4, 40, 70, 39, 69 I XCAN0019 IX ~ IMORE XCAN0082
DATA IMORE,ILAST/1H ,lHLI XCAN0020 DO ZOO K~l,2 XCAN0083
C XCAN0021 DO 200 N=l,11 XCAN0084
LUREAD ~ 10 XCAN0022 IF(N . EQ.11 .AND . K.EQ.2) IX ILAST XCAN0085
IF(IGO.EQ.O) RETURN XCAN0023 NX = NPX(N) + K XCAN0086
WRITE(LURITE,6110) IX,NX,MODX(N),XCX(N),YCX(N),IZERO,FZERO,FZERO XCAN0087 REWIND LURITE XCANOl50
200 CONTINUE XCAN0088 LUREAD = 11 XCAN01S1
C XCAN0089 RETURN XCAN0152
C READ, MODIFY AND SAVE ELEMENT GENERATION INPUT XCAN0090 C XCAN0153
C XCAN0091 C FORMJ\.TS XCAN0154
INCRT 0 XCAN0092 C XCAN0155
300 READ(LUREAD,6115) LIMIT,NEL,Nl,N2,N3,N4,NUMMAT,INCR,IZERO,IZERO, XCAN0093 6105 FORMJ\.T (A4,IX,17A4,3X,A4/815) XCAN0156
X IZERO, IZERO XCAN0094 6110 FORMJ\.T (AI, 14, IS, 2FI0.3, IS, 5X,2FI0.3) XCAN0157
IF (NEL .EQ . 90 .AND. INCR . EQ. 1) INCRT ~ 1 XCAN0095 6115 FORMJ\.T ( AI, 14, 1015) XCAN01S8
IQUAD ~ 2 XCAN0096 6120 FORMJ\.T ( AI, 14, IS, F10.2, IS, 2FI0.2, 315, 2FlO.2) XCANOl59
IF(NEL.LE.lO) IQUAD ~ XCAN0097 END XCAN0160
NXI = ISWAS(Nl,l) + IQUAD*ISWAS(Nl,2) XCAN0098 XCN20001
IF(Nl.EQ.O) NXI = XCAN0099 CANDE-89 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM XCN20002
NX2 ~ ISWAS(N2,l) + IQUAD*ISWAS(N2,2) XCANOI00 VERSION 1.0, MARCH 1990 XCN20003
IF(N2.EQ.0) NX2 = 0 XCANOlOI PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY XCN20004
NX3 = ISWAS(N3,l) + IQUAD*ISWAS(N3,2) XCANOl02 THE FEDERAL HIGHWAY ADMINISTRATION XCN2000S
IF(N3.EQ.0) NX3 ~ 0 XCANOl03 XCN20006
NX4 - ISWAS(N4,l) + IQUAD*ISWAS(N4,2) XCANOl04 SUBROUTINE XCAN2(LUREAD,IGO) XCN20007
IF(N4.EQ.0) NX4 = 0 XCANOI05 C XCN20008
WRITE(LURITE,6115) IMORE,NEL,NXl,NX2,NX3,NX4,NUMMAT,INCR,IZERO, XCANOI06 C MODIFY CAN LUDATA TAPE FOR INTERFACE ELEMENTS ALONG TRENCH FACE XCN20009
X IZERO,IZERO,IZERO XCANOl07 C XCN20010
IF(LIMIT.NE.lLAST) GO TO 300 XCANOl08 Uncomment this statement in all program modules for double XCN20011
C XCANOI09 precision version. SCM 3-10-90 XCN20012
NEL NUMEL-ll XCANO 11 0 XCN20013
IX = IMORE XCANOl11 IMPLICIT DOUBLE PRECISION (A-H,O-Z) XCN20014
lONE = 1 XCAN0112 XCN20015
DO 350 N=l,l1 XCAN0113 DIMENSION ISWAS{l10,2),TITLE(17),NPX{11),MODX{11),XCX{ll),YCX{ll)XCN20016
IF(N.EQ.ll) IX lLAST XCAN0114 DIMENSION IADDN(7),INCC{7) XCN20017
NEL = NEL +1 XCAN0115 DIMENSION NELNX(8) XCN20018
NXI = NPX(N) XCAN0116 DATA NELNX /23,24,25,26,71,78,85,921 XCN20019
..... NX2 ~ NXI + 2
NX3 = NXI + I
XCAN0117
XCAN0118
DATA IADDN 151,62,71,82,90,98,1061
DATA INCC 12,3,3,4,3*5/
XCN20020
XCN20021
\0
\0 INCF = INCC (N) XCAN0119 DATA IMORE,ILAST/1H ,1HLI XCN20022
IF (INCRT . EQ. 1) INCF ~ I XCAN0120 C XCN20023
WRITE(LURITE,6115) IX,NEL,NXl,NX2,NX3,IZERO,N,INCF,IONE,IZERO, XCAN0121 LUREAn = 10 XCN20024
X IZERO,IZERO XCAN0122 IF(IGO.EQ.O) RETURN XCN20025
350 CONTINUE XCAN0123 LURITE ~ 11 XCN20026
C XCAN0124 REWIND LURITE XCN20027
C READ, MODIFY AND SAVE BOUNDARY CONDION INPUT XCAN0125 REWIND LUREAD XCN20028
C XCAN0126 C XCN20029
400 READ(LUREAD,6120) LIMIT,NDl,ICX, FZERO, ICY, FZERO, FZERO, INC,ND2, XCAN0127 C ESTABLISH IS-WAS LIST FOR NODES TO INCLUDE INTERFACE NODES . XCN20030
X NNPINC,PLOAD,PLOAD XCAN0128 C XCN20031
NXI = ISWAS(NDl,l) XCAN0129 ISWAS{l,l) - 1 XCN20032
NX2 ~ 0 XCAN0130 ISWAS{l,2) = 0 XCN20033
IF(ND2.GT.0) NX2= ISWAS(ND2,1) XCAN0131 DO 50 N~2, 110 XCN20034
WRITE(LURITE,6120) IMORE,NX1,ICX, FZERO, ICY, FZERO, FZERO, INC,NX2, XCAN0132 IZONE = 0 XCN20035
X NNPINC,PLOAD,PLOAD XCAN0133 DO 20 K ~ 1, 7 XCN20036
IF(LIMIT.NE.lLAST} GO TO 400 XCAN0134 20 IF (IADDN (K) . EQ . N) IZONE - 1 XCN20037
C XCAN0135 ISWAS{N,l) = ISWAS(N-1,1) + 1 + 2*ISWAS{N-l,2) XCN20038
IL = IMORE XCAN0136 ISWAS{N,2) = IZONE XCN20039
DO 450 N = I, NADDB XCAN0137 WRITE{6,6081) N,ISWAS(N,1),ISWAS{N,2),IZONE XCN20040
IF (N .EQ. NADDB) IL = lLAST XCAN0138 6081 FORMAT (10X,6I10) XCN20041
NXI = NBADD (N) XCAN0139 50 CONTINUE XCN20042
ICX = lONE XCAN0140 C XCN20043
ICY - IZERO XCAN0141 C READ, MODIFY AND SAVE CONTROL INPUT XCN20044
IF (N .GT. 2) ICX = IZERO XCAN0142 C XCN20045
IF (N .GT. 21 ICY - lONE XCAN0143 READ (LUREAD,6105) PREP,TITLE,WORD2,NINC,MGENPR,NPUTCK,IPLOT,IWRT,XCN20046
450 WRITE(LURITE ,6120) IL,NX1,ICX,FZERO,ICY,FZERO,FZERO,IONE, XCAN0144 X NUMNP,NUMEL,NBPTC XCN20047
I IZERO, IZERO, FZERO, FZERO XCAN0145 NUMNP = NUMNP + 14 XCN20048
C XCAN0146 NUMEL = NUMEL + 7 XCN20049
C REDEFINE INPUT TAPE UNIT XCAN0147 NBPTC = NBPTC + 2 XCN20050
C XCAN0148 WRITE{LURITE,6105) PREP,TITLE,WORD2,NINC,MGENPR,NPUTCK,IPLOT,IWRT,XCN20051
REWIND LUREAD XCAN0149 X NUMNP,NUMEL,NBPTC XCN200S2
C XCN20053 IF(NZ.EQ.O) NX2 = 0 XCN20116
C READ, MODIFY AND SAVE NODAL GENERATION INPUT XCN20054 NX3 = ISWAS(N3,1) + IQUAD*ISWAS(N3,2) XCN20117
C XCN20055 IF(N3.EQ.0) NX3 ~ 0 XCN2011B
N = 1 XCN20056 NX4 = ISWAS(N4, 1) + IQUAD*ISWAS(N4,2) XCN20119
100 READ(LUREAD,6110) LIMIT,NNP,MODE,XCOCRD,YCOORD,IZERO,SPACNG,FZERO XCN20057 IF(N4.EQ.0) NX4 ~ 0 XCNZOIZ0
WRITE(6,6110) LIMIT,NNP,MODE,XCOCRD,YCOORD,IZERO,SPACNG,FZERO XCNZ0058 WRITE(LURITE,6115) IMORE,NEL,NXI,NXZ,NX3,NX4,NUMMAT,INCR,IZERO, XCN20121
WRITE(6,6081) ISWAS(NNP,l),ISWAS(NNP,Z) XCNZ0059 X IZERO, IZERO, IZERO XCN201Z2
NX - ISWAS(NNP,l) XCNZ0060 IF(LIMIT.NE.ILAST) GO TO 300 XCN201Z3
C XCN20061 C XCN20124
C CflANGE RELATIVELY ADDRESSED NODES XCNZ006Z NEL = NUMEL - 7 XCN20125
C XCN20063 IX = IMORE XCN20126
IF (MODE .LT. 100) GO TO 130 XCNZ0064 lONE = I XCN20127
KRELAD = MODE/100 XCNZ0065 DO 350 N - 1, 7 XCNZ0128
IF (KRELAD .NE. 1 .AND. KRELAD .NE. 3) GO TO 1Z0 XCNZ0066 If(N.EQ. 7) IX - ILAST XCNZ0129
XCN20067 NEL NEL +1 XCN20130
Revise intrinsic function to generic form. XCN20068 NX1 NPX(N) XCN20131
XCN20069 NX2 NX1 + 2 XCN2013Z
NPP INT(XCOORD) XCNZ0070 NX3 NXI + 1 XCN20133
XCNZOO71 INCF = INCC(N) XCN20134
XCOCRD = FLOAT(ISWAS(NPP,l)) XCN20072 IF (INCRT .EQ. 1) INCF = 1 XCN20135
120 IF (KRELAD .NE. 2 .AND. KRELAD .NE. 3) GO TO 130 XCN20013 WRITE(LURITE,6115) IX,NEL,NX1,NXZ,NX3,IZERO,N,INCF,IONE,IZERO, XCN20136
XCNZ0074 X IZERO,IZERO XCN20137
NPP - INT(YCOORD) XCNZ0075 350 CONTINUE XCN2013B
XCN20076 C XCN20139
YCOCRD = FLOAT(ISWAS(NPP,l)) XCN20077 C XCN2014 0
13 0 CONTINUE XCN20078 400 READ(LUREAD,61Z0) LIMIT,NDl,ICX,FZERO, ICY, FZERO, FZERO,INC,ND2, XCN20141
IF(ISWAS(NNP,2) .EQ.O) GO TO 150 XCN20019 X NNPINC,PLOAD,PLOAD XCNZ014 Z
NPX(N) = NX XCN20080 NXI = ISWAS(NDl,l) XCN20143
MODX(N) = MODE XCN20081 NX2 = 0 XCNZ014 4
XCX(N) = XCOORD XCN20082 IF(N02.GT.0) NXZ= ISWAS(NDZ,l) XCN20145
YCX(N) = YCOORD XCNZ0083 IF (LIMIT.EQ.lLAST) lMORE = ILAST XCN2014 6
tv N = N+1 XCNZ0084 IF (NXI .EQ. 121 .AND. NXZ .EQ. 118) NX2 = lZ0 XCN20147
o 150 WRITE(LURITE,6110) IMORE,NX,MODE,XCOORD,YCOORD,IZERO,SPACNG,FZERO XCNZ0085 WRITE(LURITE,61Z0) IMCRE,NXl,ICX,FZERO, ICY, FZERO, FZERO, INC,NX2, XCN2014B
o IF(LIMIT.NE.ILAST) GO TO 100 XCN20086 X NNPINC,PLOAD,PLOAD XCN2014 9
C XCN20081 WRITE(6,61Z0) IMORE,NXl,ICX,FZERO, ICY, FZERO, FZERO, INC, XCN20150
IX ~ IMORE XCN20066 1 NX2,NNPINC,PLOAD,PLOAD XCN20151
DO ZOO K=1,2 XCN20069 IF(LIMIT.NE.lLAST) GO TO 400 XCN2015Z
DO 200 N = I, 7 XCN20090 C XCNZOl53
IF(N.EQ. 7 .AND. K.EQ.Z) IX I LAST XCN20091 C REDEFINE INPUT TAPE UNIT XCN20154
NN = IADDN(N) XCNZ009Z C XCN20155
NPX(N) = ISWAS(NN,l) XCNZ0093 REWIND LUREAD XCNZOl56
NX - NPX(N) + K XCNZ0094 REWIND LURITE XCN20157
MODX(N) ~ 300 XCN20095 LUREAD = 11 XCN20158
XCX(N) = FLOAT (NX-K) XCN20096 RETURN XCN20159
YCX(N) = FLOAT (NX-K) XCN20097 C XCNZOl60
WRITE(6,6110) IX,NX,MODX(N) ,XCX(N) ,YCX(N) XCN20098 C FORMATS XCN20161
WRITE(LURITE,6110) IX,NX,MODX(N) ,XCX{N) ,YCX(N) ,IZERO,f ZERO, FZERO XCN20099 C XCN20162
200 CONTINUE XCNZ0100 6105 FORMAT (A4,lX,17A4,3X,A4/8I5) XCNZ0163
C XCNZ0101 6110 FORMAT (AI, 14, IS, ZFlO.3, IS, 5X,2FlO.3) XCN20164
C READ, MODIFY AND SAVE ELEMENT GENERATION INPUT XCNZ010Z 6115 FORMAT ( AI, 14, 1015) XCNZ0165
C XCNZ0103 6120 FORMAT ( AI, 14, IS, FlO.2, IS, 2FI0.Z, 315, ZFlO.2) XCN20166
INCRT = 0 XCNZ0104 END XCNZ0167
300 READ(LUREAD,6115) LIMIT,NEL,N1,N2,N3,N4,NUMMAT,INCR,IZERO, IZERO, XCNZ0105 "'*"'** .... ~****** • • • • • • * . * * * * . XFACOOOI
X IZERO,IZERO XCN20106 CANDE-69 (C)ULVERT (AN)ALYSIS AND (DE)SIGN PROGRAM XFAC0002
IF (NEL .EQ. 90 .AND. INCR .EQ. 1) INCRT = 1 XCNZ0107 VERSION 1.0, MARCH 1990 XFAC0003
IQUAD = Z XCNZ0106 PUBLIC DOMAIN SOFTWARE CONTRIBUTED BY XFAC0004
IF(NEL.LE.IO) IQUAD = XCNZOI09 THE FEDERAL HIGHWAY ADMINISTRATION XFAC0005
DO 250 NK = 1, 6 XCNZOllO * • • * * • • * • * * * * * * * * * * • • • • • * * * * * * XFAC0006
If (NEL .EQ. NELNX(NK» IQUAD=O XCNZ0111 SUBROUTINE XFACES(MN,IAC,MNX,NEL,ICON,ITER,NELEM,NPT,MNO,NOD,ST, XFAC0007
250 CONTINUE XCNZOllZ l~~W XFAC0008
NX1 = ISWAS(N1,1) + IQUAD*ISWAS(N1,2) XCN20113 XFAC0009
IF(NI.EQ.O) NX1 = XCN20114 Uncomrnent this statement in all program modules for double XFACOOIO
NX2 = ISWAS(NZ,l) + IQUAD*ISWAS(N2,2) XCN20115 precision version. SCM 3-10-90 XFACOOll
XFAC0012 C XFAC0075
IMPLICIT DOUBLE PRECISION (A-H,O-Z) XFAC0013 C EQUILIBRATE DISPLACEMENTS WHEN INTERFACE FIRST ENTERS SYSTEM XFAC0076
XFAC0014 C XFAC0077
Expand array dimension statements from 30 to 99. XFAC0015 IF(ITER.NE.l) GO TO XFAC007B
SCM 5-22-89 XFACOOl6 IF(IAC.NE.IA) GO TO 2 XFAC0079
XFAC0017 NDI = NOD(I,NEL) XFACOOBO
COMMONfXFACEfNXMAT,ANGLE(99) ,FCOEF(99) ,TENSIL(99) ,ITMAX XFACOOl8 ND2 = NOD(Z,NEL) XFAC0081
XFAC0019 IF (U(ND1) .EQ.O.O) U(NDl)=U(NDZ) XFAC0082
COMMON fELEMNTf AS(3),BS(3),C1(17,17),EST(4,3),RQ(4),RT(3), XFAC0020 IF (U(ND2) .EQ.O.O) U(ND2)=U(ND1) XFACOOB3
1 STORE (17) ,Z4 (12), ZQ(4), ZT(3), Zy(17) , J1, RO XFAC0021 IF (V(NDl) .EQ.O.O) V(NDl)=V(ND2) XFACOOB4
XFAC0022 IF (V(ND2) .EQ.O.O) V(ND2)-V(ND1) XFACOOB5
Add common statement for output control. SCM 3-18-89 XFAC0023 CONTINUE XFACOOB6
XFAC0024 C XFACOOB7
COMMON fOUTPUTf IWRT,IPLOT,MAXIT,JCON XFAC0025 C COMPUTE TESTING PARAMETERS XFACOOBB
XFACOOZ6 C XFACOOB9
DIMENSION MNO(NELEM),NOD(4,NELEM),ST(6,NELEM),U(NPT),V(NPT) XFAC0027 MNXP=MNX XFAC0090
XFAC0028 C XFAC0091
Add dimension statement to force FREE-FREE state. SCM 10-18-89 XFAC0029 LKCHNG = 0 XFAC0092
XFAC0030 RADA = ANGLE(MN)*CON XFAC0093
DIMENSION XFFLAG(700) XFAC0031 C = COS (RADA) XFAC0094
XFAC0032 5 = SIN (RADA) XFAC0095
DATA CONfO.0174533f XFAC0033 ND1 - NOD(l,NEL) XFAC0096
C XFAC0034 ND2 = NOD(2,NEL) XFAC0097
C THE FOLLOWING VARIABLES ARE IDENTIFIED FOR AN INTERFACE ELEMENT XFAC0035 PN = ST(I,NEL) XFAC009B
C COMPOSED OF NODES I AND J. XFAC0036 PS = ST(2,NEL) XFAC0099
C XFAC0037 PNPRE = ST(I,NEL)-ST(3,NEL) XFAC0100
C ST (1, NEL) TOTAL NORMAL INTERFACE FORCE XFAC0038 PSPRE = ST(2,NEL)-ST(4,NEL) XFACOI0l
C ST(2,NEL) TOTAL SHEAR INTERFACE FORCE XFAC0039 RDUS = -S*ST(5,NEL) + C*ST(6,NEL) XFAC0102
C ST(3,NEL) = LATEST INCREMENT OF NORMAL FORCE XFAC0040 UN = C*(U(ND2)-U(ND1)) + S*(V(ND2)-V(ND1)) XFAC0103
C ST(4,NEL) LATEST INCREMENT OF SHEAR FORCE XFAC0041 BREAK = PN - TENSIL(MN) XFACOI04
C ST(5,NEL) = RELATIVE X-DISPLACEMENT INCREMENT, DU(J)-DU(I)XFAC0042 RESIST ~ FCOEF(MN)*ABS(PN) XFAC0105
N C ST(6,NEL) RELATIVE Y-DISPLACEMENT INCREMENT, DV(J)-DV(I)XFAC0043 APS = ABS (PS) XFAC0106
0
........ C XFAC0044 C XFAC0107
C CURRENT STATE OF INTERFACE ELEMENT IS GIVEN By •••• XFAC0045 C IF FREE-FREE IN PREVIOUS LOAD STEP, SET ABARN AND ABARS NONZERO. XFACOI0B
C XFAC0046 C XFACOI09
C MNX I, IMPLIES NODES ARE FIXED IN BOTH NORMAL AND XFACOO41 ABARN - 0.0 XFACO 11 0
C TANGENT DIRECTION. XFAC0048 ABARS - 0.0 XFAC0111
C MNX 2, IMPLIES NODES FIXED IN NORMAL DIRECTION XFAC0049 RDUN = C*ST(5,NEL) + S*ST(6,NEL) XFAC0112
C TANGENT SLIPPING WITH RDUS .LT. 0.0 XFAC0050 UN PRE - UN-RDUN XFAC0113
C MNX - 3, IMPLIES NODES FIXED IN NORMAL DIRECTION XFAC0051 If(UNPRE.LT.1.0E10-9) GO TO 5 XFAC0114
C TANGENT SLIPPING WITH RDUS .GT. 0.0 XFAC0052 IF(RDUN.GT.-l.OE10-9) GO TO 5 XFACO 11 5
C MNX ~ 4, IMPLIES FREE IN NORMAL DIRECTION AND FREE XFAC0053 ABARN = -UNPRE XFAC0116
C IN TANGENT DIRECTION XFAC0054 ABARS = RDUS*ABARNfRDUN XFAC0117
C XFAC0055 CONTINUE XFACO 11 8
C TESTING PARAMETERS FOR CHANGING STATE ARE XFAC0056 XFAC0119
C XFAC0057 Lines addded to force a FREE-FREE state. SCM 10-1B-B9 XFAC0120
C PN - TOTAL NORMAL FORCE XFAC005B XFAC0121
C PS = TOTAL SHEAR FORCE XFAC0059 IF(XFFLAG(NEL) .EQ.l) THEN XFAC0122
C RDUS - RELATIVE TANGENT DISPLACEMENT INC., DUS(J)-DUS(I) XFAC0060 MNX=4 XFAC0123
C SIGN - DIRECTION OF FRICTIONAL RESISTANCE ON NODE J XFACOO61 RN",O.O XFAC0124
C UN - TOTAL NORMAL DISPLACEMENT XFAC0062 RS=O.O XfAC0125
C XFAC0063 PN2=-PNPRE XFAC0126
XFAC0064 PS2=-PSPRE XFACOI27
Lines added to force a FREE-FREE state. SCM 10-18-B9 XFAC0065 CHECK=O.O XFAC0128
XFAC0066 GO TO 100 XfAC0129
IF(IA . EQ.l .OR. IA.EQ.O) lAXF - 0 XFAC0067 END IF XFAC0130
IF((IA-IAXF) .NE.O) THEN XfAC006B XFAC0131
00 I,J=l,NELEM XFAC0069 C XFAC0132
XFFLAG(J) = 0 XFAC0070 C DETERMINE CURRENT STATE OF ELEMENT XFAC0133
1 CONTINUE XFACOO71 C XFAC0134
END IF XFACOO72 GO TO (10,20,20,30),MNX XFAC0135
IAXF - IA XFAC0073 C XFAC0136
XFACOO74 C MNX =1, FIX-FIX ON ENTRY, ANY STATE POSSIBLE ON EXIT XFAC0137
•.0 ! ;:.

C XFAC0138 XFAC0201
10 IF(BREAK.LE.O.O) GO TO 11 XFAC0139 Add relaxation function to enhance convergence. SCM 3-20-90 XFAC0202
LKCHNG = 1 XFAC014 0 XFAC02D3
RN = 0.0 XFAC0141 IF(ITER.GT.2) PS2 0.S*PS2 + 0.S*ST(4,NEL) XFACD204
RS = 0.0 XFAC0142 XFAC020S
PN2 = -PNPRE XFAC0143 IF(PS2.EQ.0.0) GO TO 100 XFAC0206
PS2 -PSPRE XFACOl44 CHECK = ABS«PS2-ST(4,NEL))/PS2) XFAC0207
MNX~ XFAC014S IF(CHECK.GT.O.OS) LKCHNG = 1 XFAC02D8
XFAC0146 GO TO 100 XFAC0209
Lines added to force a FREE-FREE state. SCM 10-18-89 XFAC0147 C XFAC021D
XFAC0148 22 LKCHNG ~ XFAC0211
XFFLAG(NEL) XFAC0149 RN = 1. 0 XFAC0212
CHECK = 0.0 XFAC0150 RS - 1. 0 XFAC0213
XFAC0151 PN2 = 0.0 XFAC02H
GO TO 100 XFAC0152 PS2 = 0.0 XFAC0215
C XFAC01S3 MNX - 1.0 XFAC0216
11 IF(APS.LE . RESIST) GO TO 12 XFACOlS4 GO TO 100 XFAC0217
LKCHNG ~ 1 XFAC01S5 C XFAC0218
RN = 1.0 XFACOlS6 C MNX 4, FREE-FREE ON ENTRY, FREE-FREE OR FIX-FIX ON EXIT XFACD219
RS = 0.0 XFACOlS7 C XFAC0220
SIGN - PS/APS XFAC01S8 30 DIS - SQRT(ST(S,NEL)**2 + ST(6,NEL)*'2) XFAC0221
PN2 = 0.0 XFACOlS9 IF(UN/DIS.LT.-O.OOOOOl) GO TO 31 XFAC0222
PS2 = SIGN' RESIST - PSPRE XFAC0160 RN - 0.0 XFAC0223
XFAC0161 RS= 0 . 0 XFAC0224
Add relaxation function to enhance convergence. SCM 3-20-90 XFAC0162 PN2 - -PNPRE XFACD225
XFAC0163 PS2 = -PSPRE XFAC0226
IF(ITER.GT.2) PS2 0.S*PS2 + 0.S*ST(4,NEL) XFAC0164 GO TO 100 XFACD227
XFAC0165 C XFAC0228
MNX = 2 XFAC0166 31 LKCHNG = XFAC0229
IF(SIGN.GT.O.O) MNX = 3 XFAC0167 RN = 1.0 XFAC0230
GO TO 100 XFAC0168 RS = 1. 0 XFAC0231
N XFAC0169 PN2 = 0.0 XFAC0232
o C
12 RN = 1.0 XFAC0170 PS2 = 0.0 XFAC0233
N
RS = 1.0 XFAC011l MNX = 1 XFAC0234
PN2 ~ 0.0 XFACOl72 C XFAC023S
PS2 = 0.0 XFAC0173 C CONSTRUCT ELEMENT STIFFNESS (CONSTRAINT) MATRIX XFAC0236
GO TO 100 XFAC0174 C XFAC0237
C XFAC017S 100 CONTINUE XFAC0238
C MNX =2 OR 3, FIX-FREE ON ENTRY, ANY STATE POSSIBLE ON EXIT XFAC0176 Cl(l,S) - -C*RN XFAC0239
C XFAC0177 Cl(1,6) = S*RS XFAC0240
20 IF(BREAK.LE.O.O) GO TO 21 XFAC0178 C1(2,S) -S'RN XFAC0241
LKCHNG = 1 XFAC0119 C1(2,6) -C*RS XFAC0242
RN = 0.0 XFAC0180 C1(3,5) C*RN XFAC0243
RS = 0.0 XFAC0181 C1(3,6) = -S*RS XFAC0244
PN2 = -PNPRE XFAC0182 Cl(4,S) S*RN XFAC0245
PS2 - -PSPRE XFAC0183 C1(4,6) C*RS XFAC0246
MNX = 4 XFAC0184 DO 150 1=1,6 XFAC0247
XFAC018S DO 150 J=1,6 XFAC0248
Lines added to force a FREE-FREE state. SCM 10-18-89 XFAC0186 150 C1(J,I) - C1(I,J) XFAC0249
XFAC0187 C XFAC02S0
XFFLAG(NEL) = 1 XFAC0189 C COMPUTE INTERFACE LOAD INCREMENTS XFAC0251
CHECK = 0.0 XFAC0189 C XFAC0252
XFAC0190 IF(ITER.NE.1) GO TO 175 XFAC0253
GO TO 100 XFAC0191 PN2 = 0.0 XFAC0254
C XFAC0192 PS2 - 0.0 XFAC0255
21 SIGN = 1.0 XFAC0193 175 PX2 - C*PN2 - S'PS2 XFAC0256
IF(MNX.EQ.2) SIGN = -1 . 0 XFAC0194 PY2 S*PN2 + C*PS2 XFAC02S7
IF(FCOEF(MN) .EQ.O.O) SIGN=O . O XFAC019S ZY(l) PX2 XFAC02S8
IF(RDUS*SIGN.LT.O . O) GO TO 22 XFAC0196 ZY(2) PY2 XFAC02S9
RN = 1.0 XFAC0197 ZY(3) -PX2 XFAC0260
RS = 0.0 XFAC0198 ZY(4) - -PY2 XFAC0261
PN2 0.0 XFAC0199 ZY(S) - PN2*(1.-RN) + ABARN*RN XFAC0262
PS2 = SIGN' RESIST - PSPRE XFAC0200 ZY(6) = PS2*(1.-RS) + ABARS*RS XFAC0263
C XFAC0264
C PRINT-OUT RECORD OF INTERFACE ITERATIONS IF ITMAX IS .LT. ZERO XFAC0265
C XFAC0266
ITMl\XA~IABS (ITMAX) XFAC0267
XFAC0268
IF(ITMAXA.GT.MAXIT) MAXIT ~ ITMAXA XFAC0269
XFAC0270
Disable ITMAX as print control. SCM 3-4-89 XFAC0271
XFAC0272
l.
IF (ITMAX.GT.O) GO TO 200 XFAC0273
XFAC0274
Revise unit number for XFACES trace output. SCM 1-9-89 XFAC0275
Use IWRT for print control. SCM 3-4-89 XFAC0276
XFAC0277
IF (IA-IAP.NE.O) WRITE(6,6000) lA XFAC0278
XFAC0279
IF(IWRT.LT.3) GO TO 200 XFAC0280
IF (IA-IAP.NE.O) WRITE(17,6000) IA XFAC0281
XFAC0282
IAP~IA XFAC0283
XFAC0284
Revise iteration output variables and format . SCM 1-9-89 XFAC0285
XFAC0286
WRITE(6,6005)ITER,NEL,MNXP,MNX,ST(3,NEL),ST(4,NEL),RDUN,RDUS XFAC0287
XFAC0288
WRITE(17,6005)ITER,NEL,MNXP,MNX,ST(3,NEL),ST(4,NEL),RDUN,RDUS, XFAC0289
X BREAK,APS,RESIST,CHECK XFAC0290
XFAC0291
200 CONTINUE XFAC0292
C XFAC0293
C STORE CURRENT STATE OF ELEMENT AND CHECK CONVERGENCE XFAC0294
N XFAC0295
o
w
C
MNO(NEL) - 1000*MN + 10*lAC + MNX XFAC0296
IF(LKCHNG.NE.O) ICON = 0 XFAC0297
IF(ITER.EQ.I) ICON = 0 XFAC0298
XFAC0299
Revise test for printing warning_ SCM 3-11-89 XFAC0300
XFAC0301
IF lITER . GT . ITMAXA) WRITE(6,6010) NEL XFAC0302
XFAC0303
IF(ITER.GE.ITMAXA .AND. LKCHNG.NE.O) WRlTE(6,6010) NEL XFAC0304
XFAC0305
IF(lTER.GE.lTMAXA) ICON XFAC0306
C XFAC0307
RETURN XFAC0308
XFAC0309
FORMATS XFAC0310
XFAC0311
6000 FORMAT(lH1,46HINTERFACE-lTER.-TRACE (INCREMENT VALUES) STEP~,I2,//XFAC0312
X2X,4HITER,2X,4HELEM,3X,6HOLD-ST,lX,6HNEW-ST,4X,7HN-FORCE,5X, XFAC0313
X7HT-FORCE,5X,7HN-SEPAR,5X,7HT-SEPAR,7X,5HBREAK,7X,3HAPS,8X, XFAC0314
X6HRESIST,7X,5HCHECK,/) XFAC0315
6005 FORMAT(lX,I5,317,8F12.4) XFAC0316
XFAC0317
6010 FORMAT(// , 10X,59H *** WARNING INTERFACE DID NOT CONVERGE FOR ELEMEXFAC0318
XNT NUMBER ,13, 25H . PROGRAM WILL CONTINUE . ) XFAC0319
END XFAC0320

You might also like