Recommendations for Pseudo-Static Deformation for Seismic Analyses of Tunnels

Before Introduction This is the paper we have written with my dear wife Pinar Akdogan Demir, based on our experience from Istanbul tunnels. I was already considering uploading the paper here, but when I saw that my paper was not inside the proceedings USB due to a mistake (which also was almost preventing me from presenting - because they simply forgot us), it was a must. So, here it is. As always, get in touch if you have any comments. ...

September 9, 2022 · 19 min · Berk Demir

Roof Slab with Grasshopper and FemDesign

I have been working on StruSoft ’s FEM-Design and Grasshopper connection for a trial case of a precast roof slab for a shaft. The results were great and even more than I expected! I was OK with some post-processing, but getting the results directly with a one-click from Grasshopper was amazing. It can handle shell connections, supports, load combinations and all I needed for this case. It is still improving a lot every day.

July 25, 2022 · 1 min · Berk Demir

MR Data from Tatone et. al. (2022)

A new paper from Tatone et. al. is published here . Using the data of the authors, following violin graph is drawn to estimate Modulus Ratio (MR = E / UCS) of the different rocks. Update: Aly Abdelaziz has proposed an update on the code and graph. Thanks to him, it looks better now. Code and data are in the Github Gist . # Data from Tatone, B. S., Abdelaziz, A., & Grasselli, G. (2022). Novel Mechanical Classification Method of Rock Based on the Uniaxial Compressive Strength and Brazilian Disc Strength. Rock Mechanics and Rock Engineering, 1-5. import pandas as pd import seaborn as sns # Rock Category rock_type = {"Sedimentary": ["SL", "SSh", "SS", "SC"], "Metamorphic": ["MG", "MS", "MQ", "MM"], "Igneous": ["IG", "IF", "ID"]} ordered_box_list = [] for i, v in rock_type.items(): ordered_box_list += v df = pd.read_csv("data.csv") df = df[df.E != "-"] df = df.astype({"E": float, "UCS": float}) df["MR"] = df["E"] / df["UCS"] * 1000 sns.set(rc={"figure.figsize": (20, 8.27), "figure.dpi": 300}) ax = sns.violinplot(x="Type", y="MR", data=df, order=ordered_box_list) ax.set_ylim(0) The data.csv file can be saved from here or from Gist. [[Notion/Quick Note/BDEM (1)/Blog Posts/_assets/data.csv]]

February 4, 2022 · 1 min · Berk Demir

Topology Optimization in Plaxis

Topology optimization is very similar to sculpting. You give a bulk volume to the algorithm and some constraints, it gives you the best shape that it can find. It is possible to use this in any software, as long as you can calculate the stresses - or any other criteria that you can use to eliminate the unnecessary volumes. I have been planning to try this in Plaxis for a long time. Using a couple of hours of coding and trials, it turns out Plaxis - Python connection works pretty well for topology optimization. This code lacks too much such as unstable volume check (stiffness matrix errors) or stop-criteria. But it was fun.

December 23, 2021 · 1 min · Berk Demir

Plaxis and Steel Fibre Reinforced Concrete

Crack propogation during three point bending beam test using Concrete model in Plaxis. In this case, we have tried to capture the behavior of steel fibre reinforced concrete and results are really promising. The actual photo of the 3 point bending beam test is shown below from Buttignol et. al. (2008) .

July 6, 2021 · 1 min · Berk Demir

Plaxis-Python MN Interaction

Recently, I have prepared a Moment-Axial Force Interaction Diagram that fetches the structural forces from Plaxis automatically. Using the amazing Streamlit module, I have created a simple GUI for MN diagram and published its video in Linkedin. The response was amazing and I got a lot of questions regarding the procedure, Python-Plaxis connection and Streamlit. You can see the video here. I will not publish the code since it will require me to check every aspect of the code, do extensive tests and prepare a documentation. Instead, I want to give some insights on the methods that I have used in the code. I had to try and fail too many times and contacted Plaxis support several times. Since this is a gray area still with lot to develop, it is not easy to find discussions on the internet, so even a brain-storming with Plaxis support is really valuable. (Thanks to Stefanos) So, to create a record of these functions, I will share small gists (a little code snippets sharing tool by Github.) ...

May 2, 2021 · 7 min · Berk Demir

Hoek-Brown Parameters Database

If you will use Hoek-Brown in your Python code, you may want to recommend some constants based on rock type. There is a widely used table in literature by Hoek and others that we use to select Modulus Ratio and material constant (mi) in the absence of high quality laboratory tests. I have done the manual labour, don’t write it all again. A dictionary called RockDict is given in the following Gist. Rock types are given as keys of dict and a sub-dictionary with: ...

March 12, 2021 · 4 min · Berk Demir

Plaxis and Plate Properties - A Look into the FE Adaptation of Long Term Stiffness Changes

There was a question regarding Plaxis in Bentley forum: A user asked the following question -paraphrased-: When we changed the plate parameters to simulate long term stiffness, there is no change in deformations. Is there something wrong? I have tried my best to explain this in the forum, but it is not an isolated case. In fact, there are many examples of design reports that do not take this into account. For example, changing the plate parameters from shotcrete to final lining is not a correct approach to simulate long-term degradation of the temporary lining. Why are deformations not changed when we changed the stiffness of structural elements? There is a clear explanation for that: Because finite element method does not work that way. As can be seen below or in Appendix of Scientific Manual of Plaxis, the incremental deformations are caused by unbalanced load. If there is no unbalanced load, the deformations will not increase since the equation results in 0. But let’s consider a tunnel. As you can see below, the real case is in first row. If we want the ground loads to act on the permanent lining, we can’t just change the material properties and hope for the best. We have to simulate the degradation of the temporary lining. There are several methods for this such as gray rock or assuming a certain thickness of shotcrete thickness is degraded. However, some project requirements do not allow for the consideration of temporary lining for permanent lining analyses at all. This is the case for subway projects in Turkey. In the second row, you see the wrong way of using plates for tunnel design. If we use this method, structural forces will be less than actual. Why? Let’s remember few things and consider the above case of wrong use of plates: ...

February 25, 2021 · 4 min · Berk Demir

Plaxis-Python Seismic Deformation

For underground structures, a rough but reasonable simplification is pseudo-static deformation method. In this method, we apply seismic strain which can be calculated as the ratio of effective PGV (Peak Ground Velocity) to effective shear wave velocity. $$ \gamma = \frac{PGV_e}{VS_e} $$ Effective PGV can be multiplied with depth dependent reduction factors (see FHWA-NHI-10-034) and maximum shear wave velocity obtained from geophysical tests with almost zero strain can be converted to effective shear wave velocity based on recommendations of FHWA or Eurocode 8. A simple Python code can be written to implement lateral deformation profile in Plaxis to simulate seismic loading. If you locate this Python file inside the Bentley folder (< PLAXIS installation folder >\pytools\input) this can be directly called from Plaxis Input. ...

February 21, 2021 · 5 min · Berk Demir

Comparison of Building Rigidity Calculation Approaches to Estimate Tunnelling-induced Deformations

Estimating damage level on the existing buildings due to tunnelling is a tricky business which depend on many factors and cannot be over-simplified. But one of the simplifications that has been used commonly is equivalent beam method. Equivalent beam method allows us to simplify the rigidity of buildings in a simple Mindlin beam. Why do we need the rigidity of the building to come into our numerical models? We have many evidences that show us greenfield deformations (which are deformations due to tunnelling on level ground without any structure.) are much higher and narrower than building deformations caused by tunnelling. One evidence is given my Frischman et. al. (1994) and reported by Mair, Taylor and Burland (1996). So, we need the rigidity of the structure to be modelled and we need it as close as possible to the reality. How? We can model the structure every time we model a tunnel problem, this is an option of course, but an option for people with lot of time. We need a simpler solution. The simpler solution is equivalent beam method. To determine the EI and EA of the beam, we have to come up with a methodology that allows us to simplify the building. Potts and Addenbrooke (1997) have proposed calculating moment of inertia of the building with respect to neutral axis, considering only slabs using parallel axis theorem. (If you forget: Moment of inertia of a beam at point P at a distance y to its neutral axis is I_P=I+Ay². As authors state, this is an over-estimation since this assumption holds true only for rigidly framed structures. But they also summarize another method which is also described in CIRIA report 200 by Mair and Taylor (2001). Using this method, authors have predicted the deformations before the construction (Class A prediction) and results are very close to measurements. In this method, moment of inertia of each slab is summed up by neglecting Ay² term. Note that in both methods equivalent area of the beam can be calculated using sum of the area of each slab. Goh and Mair (2014) developed a third approach which adds column stiffening factor, C of Meyerhof to approach given in Mair and Taylor (2001). However, calculation of C requires detailed information on column and beam positions which may not be readily available in every project. But, to make a note, I should state that, if you will perform a detailed analysis for a significant building, you should definitely use this paper (if you will not model the building in full detail.)s Goh and Mair (2014) states that parallel axis method is over-estimation of the building rigidity while algebraic sum of moment of inertias is under-estimation. To be honest, parallel axis method was looking better for me. However, a very very simple experiment proved me wrong. I have modelled a building in almost-full detail. Of course, there are still many simplifications such as connections of slabs and columns, but it is a simple trial, so this should do. I have created three models using Plaxis 2D 2019: ...

May 24, 2020 · 4 min · Berk Demir