Fundamentals of Reinforced Concrete Design to Eurocode 2

An introduction to ultimate limit state design for bending and shear with optional calculation automation using Python.

Play Video about Fundamentals-of-Reinforced-Concrete-Design-to-Eurocode-2_600 |

What you'll learn

You’ll understand how to use the system of Eurocodes to turn characteristic loads into code-compliant design loadings.
You’ll understand how to model the flexural behaviour of reinforced concrete and how to use these models to determine suitable arrangements of steel reinforcement.
You’ll learn how to design for shear using the Variable Strut Inclination Model prescribed by Eurocode 2 for vertical and transverse shear.
You’ll learn how you can use Python scripting to reduce repetitive hand calculations and increase your efficiency (no prior Python knowledge assumed)


As engineers, one of the most widely used and versatile materials at our disposal is concrete and, more specifically steel reinforced concrete. It’s arguably the most important and certainly the most ubiquitous material in the construction industry globally. Twice as much concrete is used (by weight) as steel, wood, plastics and aluminium combined. Its global usage is estimated at 10 billion tons per year.

Reinforced concrete has many benefits over other materials; it’s strong, durable, naturally corrosion resistant, has fantastic fire resistance, has excellent inherent damping characteristics and when designed correctly, results in incredibly safe and robust structures.

Concrete-structures |

So, one of the core skill sets an engineer needs is the ability to design reinforced concrete. This can only come after establishing a solid understanding of the fundamental behaviour of reinforced concrete and the composite action developed between the concrete and embedded reinforcing steel.

We’ll focus on this foundational and fundamental knowledge in this course. This will serve as your entry point into the world of reinforced concrete design. If you’re a civil or structural engineer, this is just step one on a long road of learning to work with this material.

If you’re an engineer in a related discipline, then consider this course your cheat sheet to understand how and why reinforced concrete structures are designed the way they are.

Code-based design

When we move away from fundamental engineering theory and try to take our models into the real world, we quickly encounter a need for some degree of standardisation – some set of rules or guidelines we, as construction industry professionals, can all work within. This is where codes of practice become invaluable.

Codes of practice offer us a way to work more efficiently by baking standard best practices into our work. They ensure consistency in how things are designed across the industry.

This is particularly important when we move from analysis, which is generally a more binary process where the answer is the answer, into design, where the room for interpretation of what the best answer looks like is greater. Codes of practice help us enforce some consistency in the outcome of a given design process.

Since we’ll focus on fundamental design, we need to decide which of the many available codes of practice we’ll be working to. In this course, we’ll work with Eurocodes. As such, everything we do will be within and consistent with this framework.

Eurocodes |

By the end of the course, you should understand the mechanical models we use to characterise reinforced concrete behaviour. You’ll also develop an understanding of the rules and analysis techniques prescribed by Eurocode 2 for the analysis and design of reinforced concrete structures.

Course Outline

The aim of this course is to provide an introduction to the behaviour of reinforced concrete in bending and shear. Based on this understanding you will be able to design primary flexural and shear reinforcement. In addition, towards the end of the course, we’ll also explore how we can use Python scripting to speed up repetitive manual calculations.

The course is divided into 5 sections

Section 1: Overview and course breakdown

In section one, we’ll cover some basic housekeeping issues. In particular, we’ll address who this course is best suited to and the optional role of Python in the course. Before enrolling, you can watch the videos for section one below to decide if the course is right for you. The core course content kicks off in section 2

Section 2: Actions and Limit State Design

This course will focus on the design of reinforced concrete structures. But before we can design anything, we first need to determine what forces we’re designing for. Since we’re in the realm of code-based design, we need to carefully determine the design loads on our structures.

This section will focus on determining design loading (or actions) in line with the guidance provided in the relevant Eurocodes. This will require us to consider limit state design – a fundamental concept that applies to the design of structures in any material, not just reinforced concrete.

Section 3: Bending of Reinforced Concrete

Probably the most fundamental reinforced concrete design exercise is designing for flexure. In section 3, we’ll focus on developing an understanding of the flexural behaviour of reinforced concrete.

After completing this section, you’ll clearly understand how the concrete and steel reinforcement act compositely to develop an internal moment of resistance to counter the externally applied forces.

We’ll consider singly reinforced, double reinforced, over-reinforced and flanged cross-sections. In each case, we’ll complete some design exercises to put the theory into context.

Concrete-section-analysis |

Section 4: Shear Resistance of Reinforced Concrete

After designing for bending, designing to accommodate shearing forces is the next critical task. In this section, we’ll again use basic mechanics to develop a simple model of shear resistance. The model we’ll focus on is called the Variable Strut Inclination Model.

After explaining the fundamental mechanics at play, we’ll work through some design examples to bed in the theory discussed. After using the variable strut model to design vertical shear reinforcement, we’ll apply it to designing for transverse shear forces that develop at the web-flange interface in flanged beams, first introduced in the previous section.

Once complete, you’ll understand the mechanics of shear reinforcement and how to design for direct and transverse shear in reinforced concrete beams.

Rebar-arrangement |

Section 5: Automating section analysis in Python

In the final section of the course, we’ll explore how we can automate our calculations and speed up the analysis and design process. Most student and professional engineers will at some point, have used a spreadsheet to automate their work. In this section, we’ll go one step further and use the popular programming language, Python.

This section is optional – we won’t be covering anything new from a concrete analysis point of view, just revisiting material already covered and sprinkling some Python magic on top. In particular, we’ll return to our flexure calculations and use the worked examples from section 3 as a roadmap to help us build up some analysis scripts.

Coding concrete calculations |

The main aim of this section is to get you thinking about how you can use programming as a simple tool to speed up your engineering calculations and analysis workflows. You’ll find that with a little practice, scripting in Python (or any other language you like) is far superior to a spreadsheet when managing engineering calculations.

Once you’ve finished this section, you should be comfortable expanding your analysis scripts to cover other analyses from the course. But the big win from this section will be the application of scripting to your other engineering analyses and workflows.

Who this course is for

  • Students studying civil or structural engineering who want a first introduction to the topic of code-based reinforced concrete design.
  • Engineers from other related disciplines who want to better understand the fundamentals of reinforced concrete design.
  • Anyone who wants to explore how python programming might be used to speed up manual calculations.

This course might not be right for you if you routinely design reinforced concrete structures to Eurocode 2. You will likely already be familiar with what we cover in the course. However, you may find the final section on calculation automation with Python helpful.

The codes developed in this course are for educational purposes only and are not tested or certified for use beyond the educational scope of this course. Always employ your own engineering judgement first and foremost, regardless of what the computer says!

Course Completion Certificate

Certificate of Completion 19 |
  • Download your personalised Certificate of Completion once you’ve finished all course lectures.
  • Applying for jobs? Use your Certificate of Completion to show prospective employers what you’ve been doing to improve your capabilities.
  • Independently completing an online course is an achievement. Let people know about it by posting your Certificate of Completion on your Linkedin profile or workplace CPD portfolio.

Course preview

Lecture 2: Who is this course for?

Lecture 13: Cross-section analysis

Play Video about Who should take this course |
Play Video about Cross-section-analysis |

Course content

Introduction and Course Breakdown

Fundamentals of RC design 1 |
Course overview (Preview)
Fundamentals of RC design 2 |
Who is this course for? (Preview)
Fundamentals of RC design 3 |
The optional role of Python in this course (Preview)

Actions and Limit State Design

Fundamentals of RC design 4 |
Section overview (Preview)
Fundamentals of RC design 5 |
 The relevant codes for this course
Fundamentals of RC design 6 |
Actions on structures
Fundamentals of RC design 7 |
Ultimate limit state design
Fundamentals of RC design 8 |
Serviceability limit state design
Fundamentals of RC design 9 |
Worked example 1: Determining ULS actions
Fundamentals of RC design 10 |
Worked example 2: Determining ULS actions

Bending of Reinforced Concrete

Fundamentals of RC design 11 |
Section overview (Preview)
Fundamentals of RC design 12 |
Material properties
Fundamentals of RC design 13 |
Cross-section analysis (Preview)
Fundamentals of RC design 14 |
Ultimate moment capacity
Fundamentals of RC design 15 |
Worked example 3: Basic section design
Fundamentals of RC design 16 |
 Worked example 4: Calculate section moment capacity
Fundamentals of RC design 17 |
Worked example 5a: Over-reinforced sections
Fundamentals of RC design 18 |
Worked example 5b: Automating the search for x
Fundamentals of RC design 19 |
Doubly-reinforced sections
Fundamentals of RC design 20 |
Worked example 6: Doubly reinforced section design
Fundamentals of RC design 21 |
Worked example 7: Doubly reinforced moment capacity
Fundamentals of RC design 22 |
Flanged Beam Design
Fundamentals of RC design 23 |
Worked example 8: Flanged section moment capacity
Fundamentals of RC design 24 |
Worked example 9: Flanged section design

Shear Resistance of Reinforced Concrete

Fundamentals of RC design 25 |
Section overview (Preview)
Fundamentals of RC design 26 |
Shear behaviour in beams
Fundamentals of RC design 27 |
A model of reinforced shear resistance
Fundamentals of RC design 28 |
Worked Example 10: Full design including shear
Fundamentals of RC design 29 |
Worked Example 11: Shear design
Fundamentals of RC design 30 |
Longitudinal shear in flanged beams
Fundamentals of RC design 31 |
Worked Example 12: Full flanged beam design

Automating section analysis in Python

Fundamentals of RC design 32 |
Section overview (Preview)
Fundamentals of RC design 33 |
Designing singly reinforced sections
Fundamentals of RC design 34 |
Expanding to doubly reinforced sections
Fundamentals of RC design 35 |
Expanding to singly reinforced flanged sections
Fundamentals of RC design 36 |
Determining the correct analysis case
Fundamentals of RC design 37 |
Under-reinforced section analysis
Fundamentals of RC design 38 |
Over-reinforced section analysis
Fundamentals of RC design 39 |
Doubly reinforced section analysis
Fundamentals of RC design 40 |
Flanged section analysis

Course wrap up and certificate of completion

Fundamentals of RC design 41 |
Course wrap up and certificate of completion

All Access Members can access a full text version through ...

Our members-only resource hub.

Frequently Asked Questions

You’re buying lifetime access. You’ll also get all the course updates and new lessons for FREE forever. Come back to this course for reference any time in the future.

Absolutely. Even if you watched the full course, if you’re not satisfied, contact me in the first 30 days and I will give you a full refund, no questions asked. It would be helpful if you could tell me how I can improve the course for other students.

This is a video course hosted by Podia that requires you to log in and stream the videos. The course may also include downloadable PDFs, and Jupyter Notebooks.
Yes! I’ve partnered with Podia and Stripe to handle billing and provide a secure payment facility. DegreeTutors (me) never directly handle or store your credit card information.


Try this first...

This course covers the fundamentals of beam bending behaviour and shear and moment diagrams. You should be very comfortable with this fundamental theory before moving on to indeterminate structures.

...and maybe this first...

This course contains more worked examples of constructing shear and moment diagrams for statically determinate beams and frames. You should be comfortable building these before moving on.

📍 You're here

Try this next...

This course covers the moment distribution method which is suitable for analysing indeterminate structures. This is a good next step after completing the current course.

...or this next...

This course is a first introduction to the direct stiffness method. This is another method suitable for indeterminate structures and is much faster and more efficient than manual methods like virtual work.