Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Finding the Neutral Axis ANGLE for Biaxial bending of concrete members 6

Status
Not open for further replies.

mar2805

Structural
Dec 21, 2008
375
Hi!
Im interested how to find the angle of the neutral axis of a concrete members subjected to moments aboth 2 axis, x and y?
Could the simple formula of tan(alpha)=Mx/My be used?
Thank you.
 
Replies continue below

Recommended for you

@denial / @IDS - what is the programing like for something like this? Do you iterate the NA location?
I'd be interested in learning how to create such an algorithm for this problem.

EIT
 
Ryan,

There's probably no "standard" approach, and I had to machete my way though my own personal numerical jungle.[ ] The underlying assumption is that plane sections remain plane, from which it follows that the strain at any point (X,Y) on the cross-section is given by the "strain equation"
A + BX + CY
and the stress at any point follows directly from the strain equation and the material's stress-strain curve.
Once the three unknowns (A,B,C) are known the problem is solved, and the equation of the neutral axis is
A + BX + CY = 0

Start with an initial guess for (A,B,C).[ ] Use numerical integration to calculate the applied forces (P,Mx,My) that would be in equilibrium with that strain distribution.[ ] Compare these equilibrating forces with the actual applied forces:[ ] the difference ([δ]P,[δ]Mx,[δ]My) is a measure of your current error.

If this "error" is not sufficiently small, you need to revise your estimates for (A,B,C).[ ] But how?[ ] In effect, the method I used was to apply ([δ]P,[δ]Mx,[δ]My) to the cross-section, thereby calculating a "correction" to the strain equation's (A,B,C).[ ] In practice this was not as easy as it sounds, particularly for cases where the cross-sectional behaviour was highly non-linear, and I had to calculate the cross-section's "marginal stiffness" and apply ([δ]P,[δ]Mx,[δ]My) to that.

I have some very rough notes from when I was developing the method, which I will e-mail to you on a "no responsibility" and "no discussion" basis.
 
@Denial: I'd love to see your rough notes as well.

Attached is a printout from a MathCAD sheet that I wrote for this almost a decade ago (algorithms showing). It creates a graph of the plastic section over the cross section at the end. I'd be happy to share a live version if anyone's interested. Originally, I'd planned to do something as ambitious as Denial's spreadsheet. Unfortunately, the rabbit hole got too deep and the solver stopped running. I found the most difficult part to be simply handling the geometry of an arbitrary section and figuring out where the proposed NA crossed it mathematically. I used formulas from surveying class to calculate areas and such based on a matrix of corner points which was very helpful.

The greatest trick that bond stress ever pulled was convincing the world it didn't exist.
 
 http://files.engineering.com/getfile.aspx?folder=bcbfde93-bb5b-42b3-8783-5cda051bef45&file=Mathcad_-_Biaxial_Rectangular_Column.pdf
@ Denial / IDS,

R-E-S-P-E-C-T. That's what your algorithms mean to me! Seriously... cudos & thanks.

@ Denial: Your notes seem to suggest a finite element-ish approach. Is that how you tackled the implementation of the algorithm? Or did you do it as layers like IDS? Now that I think of it, I suspect that the layering approach is how this is handled in commercial packages. Also, did you program your own solver routine rather than attempting to use the Excel solver?

@ IDS: Awesome. I want to replicate what you've done in my MathCAD worksheet. Can you give me a brief, in English, summary of the algorithm? Something like:

1) Identify all vertices and draw layer lines there.
2) Split remaining section into more layers if desired.
3) Figure out where layer lines intersect section polygon.
4) Use ray tracing to identify the insides of the layers.
.......


The greatest trick that bond stress ever pulled was convincing the world it didn't exist.
 
Wow, Yeah, very impressive thanks guys.

I also would like to try something but in SMath Studio, the poor man's version of MathCAD (but I must say SMath is starting to impress)

EIT
 
KootK,

The approach is not FE-ish.[ ] It might, initially, appear that way because it breaks the concrete shape into a series of triangles, with each triangle being defined by the origin and one of the polygonal edges of the concrete boundary.[ ] The integration over each triangle is exact (within the limitations of Gaussian Integration).[ ] Nor does the approach use "layers", except insofar as it needs to establish where on the cross-section the strain values correspond with the defining points of the stress-strain curve(s).

While I am a great fan of the Solver I cannot see how it might be used on this problem.[ ] The solution process is entirely coded in VBA within the spreadsheet.[ ] This VBA is protected behind a password, but the password is given on the "Documentation" worksheet.[ ] (I use password protection on my VBA only in order to avoid confusing the user if something goes wrong:[ ] a "normal" engineer running the spreadsheet does not want to suddenly find himself deep within the VBA Editor, and an "abnormal" engineer can always remove the protection.)
 
KootK - Here is a brief algorithm for generating the trapezoidal layers for any shape defined by node coordinates:

Add node index numbers to the node coordinate list
Sort node coordinates and index numbers by increasing Y, then increasing X
List Y values for the bottom/top of each layer
For the base point(s) of the first layer:
_Count nodes with minimum Y value
_Check for vertex points; add a dummy node for each vertex
_List X values for each node
For each subsequent Y value
_Find IP X values for each line segment at or crossing this Y
_Where more than one end node has the same Y check for:
__Horizontal line segments defining the base or top of a layer
__Vertex points at the base or top of a layer
__Count nodes for the layer below and above Y (if any)
_List X values for the top of the layer below level Y
_List X values for the base of the layer above level Y, if any
Sort X values for each row in ascending order

I have also added that to the spreadsheet.

The basic algorithm is quite simple, but the code gets fairly complicated in checking situations where there are horizontal line segments or a top or bottom vertex. The code requires a check of the direction of the preceding and following line segments to check if the line forms part of the trapezium above or below the line. It also gets complicated at the end getting the node numbers right.

Doug Jenkins
Interactive Design Services
 
Thanks for taking the time to describe your algorithms guys. This should be more than enough to get me started down the right path.

The greatest trick that bond stress ever pulled was convincing the world it didn't exist.
 
Are we talking about ultimate strength calculations? Are we talking about biaxial bending alone or biaxial bending combined with axial forces?



BA
 
The approach I took in my spreadsheet allows for an axial force in addition to biaxial bending.[ ] And since it uses user-defined stress-strain curves the question of whether or not it is "ultimate strength" does not arise.
 
That sounds like a good approach. Spreadsheets are wonderful things, although I never developed much expertise in them before retiring.

BA
 
BA - the end purpose intended for my spreadsheet splitting a rotated shape into "horizontal" layers is to allow the section to be analysed with a closed form solution for any given rotation angle of the NA, so iteration will only be required to find the angle. I should be able to plug this routine into existing spreadsheets for both ULS and elastic analysis, including axial load. The only additional calculation required will be to find the moment about the Y axis, which should be straightforward.

I'm hoping that this approach will be faster than finding both the angle and position by iteration, but I'm really only doing it for my own interest. The RMNial solution looks like it should do just about anything anyone might require.

Doug Jenkins
Interactive Design Services
 
There seems to be difefrent procedures involved when caculating Moment Capacity of a column.
Some seem to use the "centroid of a concrete section" others use "plastic centroid".
Seem that plastic centroids are ONLY used if section is not symetrical (reinforcement included).
Is this correct?

Having a symetical section reinforced with different ratios in top and bottom portion should use P.C. wich would only have y coordinate. Correct?
Having a non-symetrical section with diferent rations in top and bottom portion should use P.C. wich would have x and y coordinates. Correct?

 
@Doug of IDS,
I can see how the layer system would be helpful for analyzing unsymmetrical sections under elastic conditions. It seems to me that, for ultimate conditions that after a trial Neutral Axis (N.A.) has been selected, the compression block is defined and the concrete stress will be uniform throughout that block, i.e. 0.85f'c. The centroid of the compression block can be calculated without using layers.

Steel stresses may vary according to the distance from the N.A. but cannot exceed fy in tension or compression.

As rectangular columns are commonly used in buildings, a useful application for a spreadsheet might be to focus on rectangular columns with symmetrical reinforcement and perhaps to prepare a chart of ultimate moments and axial capacity for commonly used column sizes.

BA
 
BA - yes, for any trial NA position the ultimate capacity can be calculated from the section properties of the stress block, without dividing the section into layers, you can do an elastic analysis as well. The purpose of dividing into layers is that I have a routine that will find the position of the NA without iteration, so I'm hoping the process of finding the NA angle and position will be faster, as iteration will only be required to find the angle. It will also handle triangular or parabolic-rectangular stress distributions, as well as rectangular.

I work mainly on bridges, which often have non-rectangular columns and deck beams are usually not rectangular, so I'd like the procedure to be as flexible as possible.

mar2805 - I'm not sure that I totally understood your question, but I hope the following points will answer it. For any member with non-zero axial load it is important that moments are taken about a well defined axis. It doesn't matter where that axis is, so long as the same axis is used for the load eccentricity, and the resulting reaction eccentricity. Load eccentricity is usually measured from the centroid of the concrete section (ignoring reinforcement), and in a frame analysis the columns are normally placed on the centroidal axis of the concrete section, so it usually makes sense to use this as the reference axis for analysis. Note that any reinforced concrete section will be asymmetric about the bending axis if the concrete is cracked in tension.

For a section that is symmetrical about the Y axis (taking the NA as the X axis), the centroid of the concrete stress block will always be on the Y axis, so we don't have to worry about bending about the Y axis. If the section (either concrete or steel) is not symmetric about the Y axis (either because of the section shape or biaxial bending) then we need to check for moment equilibrium about both axes.

Doug Jenkins
Interactive Design Services
 
@IDS:

I do a lot of sport programming too. It's my favorite way to learn something complex if I can find the time. If I can program something, I own it. Those surveying algorithms that I mentioned may be an elegant and robust way for you to complete your next step. I doubt that you need any help in the programming department but, if you're interested, I'd be happy to hook you up.

When I retire, I want to make a spreadsheet that will find the shear center of an arbitrary section, even a multiple, closed cell section. I consider that to be the holy grail of sectional analysis spreadsheets.

KootK

The greatest trick that bond stress ever pulled was convincing the world it didn't exist.
 
@Mar2805,

There are almost no practical design scenarios where you would want to use anything but the cracked section properties of a concrete section. Certainly, it the dominant way to go for strength design. And, even for deflection calculations, you're usually dealing with a cracked section.

Other than academic exercises, the only applications that that I can think of for elastic section properties are:

1) situations where concrete members are pre-stressed to the extent that they will remain uncracked.
2) in some codes, the column slenderness procedures require the calculation of an elastic moment of inertia for use in estimating an Euler buckling load.

KootK

The greatest trick that bond stress ever pulled was convincing the world it didn't exist.
 
As mentioned above, I have incorporated the function to split a shape into layers with a routine to find the ULS moment capacity of a reinforced or prestressed concrete section under combined axial load and bending, so that it will now work for biaxial bending and/or non-symmetrical sections.

See:

for more details and a link to the download file, which is free and open-source.

The spreadsheet will work to Australian codes, ACI, or Eurocode 2, but at the moment only for rectangular stress blocks.

Doug Jenkins
Interactive Design Services
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor