Skip to content

Instantly share code, notes, and snippets.

@panagop
Created November 19, 2020 02:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save panagop/14f1177428b8485b664f3d8ae27139c6 to your computer and use it in GitHub Desktop.
Save panagop/14f1177428b8485b664f3d8ae27139c6 to your computer and use it in GitHub Desktop.
/jupyters/TEI/BetonI-Examples2020/beams_shear_reinforcement.ipynb
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {},
"cell_type": "markdown",
"source": "# Παράδειγμα διαστασιολόγησης δοκού σε διάτμηση"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "import math",
"execution_count": 1,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Εισαγωγή δεδομένων"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "bw = 0.40 # [m] Το πλάτος της δοκού\nh = 1.20 # [m] Το ύψος της δοκού\nd1 = 0.05 # [m] H \"επικάλυψη\" μέχρι το κέντρο βάρους του εφελκυόμενου οπλισμού\nVsd = 470.00 # [kN] Η τιμή της τέμνουσας στη στήριξη που εξετάζεται. Πχ στο κέντρο βάρους ενός στύλου\nVsd_παρ = 416.12 # [kN] Η τιμή της τέμνουσας στην παρειά του υποστυλώματος\nVsd_d = 339.82 # [kN] Η τιμή της τέμνουσας σε απόσταση d από την παρειά του υποστυλώματος\nVsd_lcr = 336.84 # [kN] Η τιμή της τέμνουσας σε απόσταση lcr από την παρειά του υποστυλώματος\n# p = 66.80 # [kN/m] Το ομοιόμορφα κατανεμημένο φορτίο στη δοκό\ncotθ = 1.2 # Η συνεφαπτομένη της γωνίας των διαγώνιων θλιπτήρων θ. \n # Λαμβάνεται 1.2 (θ=39.81) σύμφωνα με το ελληνικό εθνικό προσάρτημα, ή 1.0 για θ=45\n # Φυσικά ο μηχανικός μπορεί να επιλέξε και άλλη τιμή μέσα στα επιτρεπόμενα όρια\nα = math.pi/2 # Η γωνία των συνδετήρων με τον άξονα του δομικού στοιχείου. Λαμβάνεται π/2 = 90μοίρες\nhυπ = 1.20 # [m] Η πλευρά του υποστυλώματος. Χρησιμοποιείται για να υπολογιστεί η τέμνουσα στην παρειά.\nfck = 20.0 # [MPa] Η χαρακτηριστική τιμή της θλιπτικής αντοχής του σκυροδέματος\nfyk = 500.0 # [MPa] Η χαρακτηριστική τιμή για το όριο διαρροής του χάλυβα\nDC = 'M' # Κατηγορία πλαστιμότητας. 'M' για μέση, 'H' για υψηλή (λατινικοί χαρακτήρες)\nAsl = 10.18 # [cm2] Το εμβαδό του διαμήκους εφελκυόμενου οπλισμού στη στήριξη\nΦLmin = 20 # [mm] Η ελάχιστη διάμετρος των διαμήκων ράβδων στη διατομή \nNEd = 0.00 # [kN] Το αξονικό φορτίο που ασκείται στη διατομή που ελέγχεται. Η θλίψη με θετικό πρόσημο.",
"execution_count": 2,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Επιλογή τύπου συνδετήρων\n\nΗ επιλογή της διαμέτρου των συνδετήρων και ο αριθμός των σκελών δεν είναι στην πραγματικότητα ένα δεδομένο αλλά μια επιλογή που θα κάνει στην πορεία της επίλυση ο μηχανικός. Απαιτείται όμως να γίνει μια προεπιλογή ώστε να είναι εφικτός ο υπολογισμός των μέγιστων αποστάσεων στον 3ο έλεγχο."
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "Φw = 8 # [mm] Η διάμετρος των συνδετήρων\nn = 2 # σκέλη συνδερήτων, π.χ. 2 για δίτμητους, 3 για τρίτμητους κ.ο.κ.",
"execution_count": 3,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Λύση"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Υλικά"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "fcd = fck/1.5\nfyd = fyk/1.15\n\nprint(f'fcd = {fcd:.2f}MPa')\nprint(f'fyd = {fyd:.2f}MPa')",
"execution_count": 4,
"outputs": [
{
"output_type": "stream",
"text": "fcd = 13.33MPa\nfyd = 434.78MPa\n",
"name": "stdout"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Υπολογισμός τεμνουσών στις χαρακτηριστικές θέσεις"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "if DC=='M':\n lcr = h\nelif DC=='H':\n lcr = 1.5 * h\nelse:\n print('Λάθος στην εισαγωγή της κατηγορίας πλαστιμότητας')\n\nd = h - d1\n# Vsd_παρ = Vsd - p * hυπ/2\n# Vsd_d = Vsd - p * (hυπ/2 + d)\n# Vsd_lcr = Vsd - p * (hυπ/2 + lcr)\n\nprint(f'Το κρίσιμο μήκος της δοκού είναι lcr={lcr:.2f}m')\nprint(f'Το στατικό ύψος της δοκού είναι d={d:.3f}m')\nprint()\nprint(f'Η τέμνουσα στην παρειά της στήριξης της δοκού είναι Vsd_παρ={Vsd_παρ:.2f}kN')\nprint(f'Η τέμνουσα σε απόσταση d από την παρειά της στήριξης της δοκού είναι Vsd_d={Vsd_d:.2f}kN')\nprint(f'Η τέμνουσα σε απόσταση lcr από την παρειά της στήριξης της δοκού είναι Vsd_lcr={Vsd_lcr:.2f}kN')",
"execution_count": 5,
"outputs": [
{
"output_type": "stream",
"text": "Το κρίσιμο μήκος της δοκού είναι lcr=1.20m\nΤο στατικό ύψος της δοκού είναι d=1.150m\n\nΗ τέμνουσα στην παρειά της στήριξης της δοκού είναι Vsd_παρ=416.12kN\nΗ τέμνουσα σε απόσταση d από την παρειά της στήριξης της δοκού είναι Vsd_d=339.82kN\nΗ τέμνουσα σε απόσταση lcr από την παρειά της στήριξης της δοκού είναι Vsd_lcr=336.84kN\n",
"name": "stdout"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### 1ος έλεγχος.\tΑπαίτηση τοποθέτησης οπλισμού διάτμησης\n\nΣυγκρίνεται η τέμνουσα στην σε απόσταση $d$ από την παρειά της στήριξης $V_{sd}^{x = d}$ με την τέμνουσα αντοχής ${V_{Rd,c}}$. Ουσιαστικά, γίνεται έλεγχος αν η διατμητική αντοχή του σκυροδέματος, με τη βοήθεια του εφελκυόμενου οπλισμού (ελκυστήρας) μπορεί να παραλάβει τις διατμητικές δυνάμεις (κύριες εφελκυστικές τάσεις), χωρίς να απαιτείται οπλισμός διάτμησης (συνδετήρες).\n\n$V_{sd}^{x = d} \\leqslant {V_{Rd,c}}$\n\nΑν ισχύει ο έλεγχος δεν απαιτείται οπλισμός διάτμησης (τοποθετείται ο ελάχιστος).\n\nH $V_{Rd,c}$ υπολογίζεται από την παρακάτω σχέση (μονάδες: N, mm):\n\n$V_{Rd,c} = \\max \\left\\{ \\begin{gathered}\n\\left[C_{Rd,c} \\cdot k \\cdot (100 \\cdot {\\rho _l} \\cdot f_{ck})^{1/3} + {k_1} \\cdot {\\sigma _{cp}}\\right] \\cdot {b_w} \\cdot d \\hfill \\\\\n(v_{\\min } + k_1 \\cdot \\sigma _{cp}) \\cdot b_w \\cdot d \\hfill \\\\ \n\\end{gathered} \\right. $\n\nόπου:\n\n- $C_{Rd,c}$ συνιστώμενη τιμή $0.18/γ_c=0.12$\n- $k = 1 + \\sqrt {\\dfrac{200}{d}} \\leqslant 2.0 $\n- $ρ_l = \\dfrac{A_{sl}}{b_w \\cdot d} \\leqslant 0.02 $ \n- $A_{sl}$ διατομή διαμήκους εφελκυόμενου οπλισμού, ο οποίος επεκτείνεται πέραν της διατομής στην οποία υπολογίζεται η $V_{Rd,c}$ κατά $d+l_{bd}$ (χρησιμοποιείται ο διαμήκης οπλισμός στην στήριξη)\n- $σ_{cp}=\\dfrac{N_{Ed}}{A_c}$ η τάση λόγω του αξονικού φορτίου (θετική η θλίψη)\n- $k_1$ \tσυνιστώμενη τιμή 0.15\n- $f_{ck}$ \tχαρακτηριστική θλιπτική αντοχή σκυροδέματος\n- $N_{Ed}$ \tαξονική δύναμη στη διατομή σε $N$\n- $A_c$ \tεμβαδόν της διατομής του σκυροδέματος σε $mm^2$\n- $b_w$ \tτο ελάχιστο πλάτος της διατομής την εφελκυόμενη ζώνη\n- $d$ \tτο στατικό ύψος της διατομής\n\n$ v_{min} = 0.035 \\cdot k^{3/2} \\cdot f_{ck}^{1/2} $\n"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# Μετατρέπω τα μεγέθη σε N και mm\n\n_NEd = NEd * 1000 # Από kN σε N\n_Asl = Asl * 100 # από cm2 σε mm2\n_fck = fck # MPa = N/mm2 οπότε δεν αλλάζει\n_bw = bw * 1000 # από m σε mm\n_d = d * 1000 # από m σε mm\n_h = h * 1000 # από m σε mm\n_Ac = _bw * _h # σε mm2\n_σcp = _NEd / _Ac # σε N/mm2\n\nγc = 1.5\nCRdc = 0.18/γc\nρl = min(_Asl / (_bw * _d), 0.02)\nk = min(1 + (200.0 / _d) ** 0.5, 2.0)\nvmin = 0.035 * k **1.5 * _fck **0.5\nk1 = 0.15\n\nVRdc1 = (CRdc * k *(100. * ρl * _fck)**(1/3) + k1 * _σcp) * _bw * _d\nVRdc2 = (vmin + k1 * _σcp) * _bw * _d\n\nVRdc = .001 * max(VRdc1, VRdc2)\n\nprint(f'ρl = {ρl:.5f}')\nprint(f'k = {k:.3f}')\nprint(f'vmin = {vmin:.3f}')\n\nprint(f'VRdc1 = {VRdc1:.1f}N = {VRdc1/1000:.2f}kN')\nprint(f'VRdc2 = {VRdc2:.1f}N = {VRdc2/1000:.2f}kN')\n\nprint()\nprint(f'VRdc = {VRdc:.2f}kN')\n\n\nif Vsd_d < VRdc:\n print(f'Vsd_d = {Vsd_d:.2f}kN < VRdc = {VRdc:.2f}kN')\n print('Ο έλεγχος ικανοποιείται και δεν απαιτείται οπλισμός διάτμησης. Θα τοποθετηθεί ο ελάχιστος')\nelse:\n print(f'Vsd_d = {Vsd_d:.2f}kN > VRdc = {VRdc:.2f}kN')\n print('Ο έλεγχος δεν ικανοποιείται και απαιτείται οπλισμός διάτμησης.')\n\n",
"execution_count": 6,
"outputs": [
{
"output_type": "stream",
"text": "ρl = 0.00221\nk = 1.417\nvmin = 0.264\nVRdc1 = 128427.4N = 128.43kN\nVRdc2 = 121453.2N = 121.45kN\n\nVRdc = 128.43kN\nVsd_d = 339.82kN > VRdc = 128.43kN\nΟ έλεγχος δεν ικανοποιείται και απαιτείται οπλισμός διάτμησης.\n",
"name": "stdout"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### 2ος Έλεγχος. Περιορισμός λοξής θλίψης σκυροδέματος κορμού\n\nΟι διαστάσεις του κορμού πρέπει να είναι τέτοιες ώστε να ικανοποιείται η σχέση:\n\n$V_{sd}^{\\pi \\alpha \\rho \\varepsilon \\iota \\alpha } \\leqslant {V_{Rd,\\max }}$\n\nΓίνεται ο έλεγχος αν η διατομή του σκυροδέματος μπορεί να παραλάβει τις διατμητικές δυνάμεις που αναπτύσσονται (κύριες θλιπτικές τάσεις). Ο έλεγχος γίνεται σε απόσταση στην παρειά του υποστυλώματος. Αν δεν ισχύει η σχέση επέρχεται αστοχία από συντριβή της θλιβόμενης διαγωνίου. Η σχέση αυτή συνήθως ικανοποιείται (η $V_{Rd,max}$ δηλαδή προκύπτει πολύ μεγαλύτερη της $V_{sd}^{\\pi \\alpha \\rho}$ ), ιδιαίτερα για μεγάλες τιμές της γωνίας $θ$, εκτός από κάποιες σπάνιες περιπτώσεις σε διατομές με λεπτό κορμό.\n\nΗ τέμνουσα αντοχής $V_{Rd,\\max }$ υπολογίζεται ως εξής (μονάδες: N, mm)::\n\n$V_{Rd,max} = \\dfrac{\\alpha _{cw} \\cdot b_w \\cdot z \\cdot \\nu _1 \\cdot f_{cd}}{\\cot \\theta + \\tan \\theta }$\n\nόπου:\n\n- $α_{cw}$ συντελεστής για συνεκτίμηση εντατικής κατάστασης στο θλιβόμενο πέλμα ίσος με 1 για μη προεντεταμένες κατασκευές\n- $ \\nu_1 = 0.6 \\cdot \\left[ {1 - \\dfrac{f_{ck}}{250}} \\right] $ δείκτης μείωσης αντοχής σκυροδέματος ρηγματωμένου από διάτμηση\n- $z = 0.9 \\cdot d $ ο μοχλοβραχίονας των εσωτερικών δυνάμεων της διατομής\n- $θ$ γωνία κλίσης θλιβόμενων διαγωνίων σκυροδέματος\n\n*Παρατήρηση:* \nΕάν η τάση σχεδιασµού του οπλισµού διάτµησης είναι µικρότερη του 80\\% της χαρακτηριστικής τιµής της τάσης διαρροής (του διαμήκους οπλισμού) $f_{yk}$, τότε μπορεί να λαμβάνεται $ \\nu_1 = 0.6$ (για $f_{ck}\\le 60MPa$). Αυτό ενδέχεται να συμβαίνει στην περίπτωση που δε χρησιμοποιούνται ίδιες ποιότητες διαμήκους και εγκάρσιου οπλισμού.\n"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "_fyk = fyk # MPa = N/mm2 οπότε δεν αλλάζει\n_fywk = _fyk # Θεωρούμε εδώ ότι συνδετήρες και διαμήκης οπλισμός έχουν την ίδια ποιότητα\n_fcd = fcd # MPa = N/mm2 οπότε δεν αλλάζει\n\n_VRdmax = {}\n\nαcw = 1.0\nz = 0.9 * _d\n\nif _fywk < 0.8 * _fyk:\n if _fck <= 60:\n v1 = 0.6\n else:\n v1 = max(0.5, 0.9 - _fck / 200)\nelse:\n v1 = 0.6 * (1 - _fck / 250)\n \nθ = math.atan(1/cotθ)\n\nVRdmax = αcw * _bw * z * v1 * _fcd / (math.tan(θ) + 1 / math.tan(θ))\n\nprint(f'αcw = {αcw:.1f}')\nprint(f'z = {z:.0f}mm')\nprint(f'v1 = {v1:.3f}')\nprint(f'θ = {θ:.3f}rad = {θ*180./math.pi:.2f} μοίρες')\n\nprint()\nprint(f'VRdmax = {VRdmax:.1f}N = {VRdmax/1000:.2f}kN')\n\nVRdmax *= 0.001 \n\nprint()\nif Vsd_παρ < VRdmax:\n print(f'Vsd_παρ = {Vsd_παρ:.2f}kN < VRdmax = {VRdmax:.2f}kN')\n print('Ο έλεγχος ικανοποιείται και δεν απαιτείται αλλαγή διατομής.')\nelse:\n print(f'Vsd_παρ = {Vsd_παρ:.2f}kN > VRdmax = {VRdmax:.2f}kN')\n print('Ο έλεγχος δεν ικανοποιείται και απαιτείται αλλαγή διατομής.')",
"execution_count": 7,
"outputs": [
{
"output_type": "stream",
"text": "αcw = 1.0\nz = 1035mm\nv1 = 0.552\nθ = 0.695rad = 39.81 μοίρες\n\nVRdmax = 1498544.3N = 1498.54kN\n\nVsd_παρ = 416.12kN < VRdmax = 1498.54kN\nΟ έλεγχος ικανοποιείται και δεν απαιτείται αλλαγή διατομής.\n",
"name": "stdout"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### 3ος έλεγχος. Υπολογισμός οπλισμού διάτμησης\n\n\nΟ έλεγχος πρέπει να γίνει δύο φορές, η πρώτη για να υπολογιστεί ο οπλισμός διάτμησης που απαιτείται εντός της κρίσιμης περιοχής (χρησιμοποιείται η τέμνουσα σε απόσταση $d$ από την παρειά) και η δεύτερη για τον οπλισμός διάτμησης εκτός της κρίσιμης περιοχής (χρησιμοποιείται η τέμνουσα στη θέση όπου τελειώνει η κρίσιμη περιοχή $V_{sd}^{x=l_{cr}}$). \n\n$V_{sd}^{x = d \\text{ ή } x = l_{cr}}\\leqslant V_{Rd,s}$\n\nΓια στοιχεία με οπλισμό διάτμησης κάθετο στον άξονά τους, η αντοχή σε τέμνουσα $V_{Rd,s}$ λαμβάνεται από τη σχέση:\n\n$V_{Rd,s}=\\dfrac{A_{sw}}{s} \\cdot z \\cdot f_{ywd} \\cdot \\cotθ$\n\nόπου:\n\n- $A_{sw} = n \\cdot A_{\\rho \\alpha \\beta \\delta o\\upsilon}$ με $n=2$ για μονούς συνδετήρες (δίτμητους), $n=4$ για διπλούς (τετράτμητους) κτλ.\n- $s$ η απόσταση μεταξύ των συνδετήρων\n- $f_{ywd} = \\dfrac{f_{ywk}}{γ_s}$ η τιμή σχεδιασμού της αντοχής του οπλισμού διάτμησης\n\n Αν η τάση σχεδιασµού του οπλισµού διάτµησης είναι µικρότερη του 80\\% της χαρακτηριστικής τιµής της τάσης διαρροής τότε $f_{ywd} = 0.8\\cdot f_{ywk}$\n\nΟπότε, λύνοντας ως προς το άγνωστο σκέλος της εξίσωσης προκύπτει:\n\n$\\dfrac{A_{sw}}{s} = \\dfrac{V_{sd}^{x = d \\text{ ή } x = l_{cr}}}{z \\cdot f_{ywd} \\cdot \\cotθ}$\n\nΘεωρώντας αυθαίρετα (από την εμπειρία μας) διάμετρο και αριθμό σκελών συνδετήρων, το μόνο άγνωστο μέγεθος είναι η απόσταση $s$ "
},
{
"metadata": {},
"cell_type": "markdown",
"source": "#### Οπλισμός διάτμησης εντός κρίσιμης περιοχής\n\nΛαμβάνεται η τέμνουσα σε απόσταση $x=d$ από την παρειά.\n\nΤο ελάχιστο ποσοστό εγκάρσιου οπλισμού $\\rho_{w,min}$ προκύπτει από τη σχέση:\n\n$\\rho _w = \\dfrac{A_{sw}}{s \\cdot {b_w} \\cdot \\sin a} \\geqslant \\rho _{w,min } = \\dfrac{0.08 \\cdot \\sqrt {f_{ck}}}{f_{yk}}$\n\nΛύνοντας ως προς $s$ προκύπτει η μέγιστη επιτρεπόμενη απόσταση των συνδετήρων βάσει του ελάχιστου ποσοστού (EC2):\n\n$s\\leqslant \\dfrac{A_{sw}\\cdot f_{yk}}{b_w \\cdot \\sin{a}\\cdot 0.08 \\cdot \\sqrt {f_{ck}}}$\n\nΟι μέγιστες επιτρεπόμενες αποστάσεις (EC8) των συνδετήρων είναι:\n\n- Για δοκούς ΚΠΜ: $s\\leq\\begin{cases}\nh/4\\\\\n24\\cdot\\varnothing_w\\\\\n8\\cdot\\varnothing_{L,min}\\\\\n225\\text{mm}\n\\end{cases}$\n\n- Για δοκούς ΚΠΥ: $s\\leq\\begin{cases}\nh/4\\\\\n24\\cdot\\varnothing_w\\\\\n6\\cdot\\varnothing_{L,min}\\\\\n175\\text{mm}\n\\end{cases}$"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "_Vsd_d = 1000 * Vsd_d\n_fywd = _fywk / 1.15\n# _fywd = 0.8 * _fywk \n\nAsw = n * math.pi * Φw**2 /4\n\n# Ελάχιστο ποσοστό οπλισμού διάτμησης\nρwmin = 0.08 * math.sqrt(_fck) / _fyk\n\n# Μέγιστη απόσταση βάσει τέμνουσας\ns_shear = Asw * z * _fywd * cotθ / _Vsd_d\n\n# Ποσοστό διάτμησης για την παραπάνω απόσταση\nρ_s_shear = Asw / (s_shear * _bw * math.sin(α))\n\n# Μέγιστη απόσταση βάσει ποσοστού διάτμησης \ns_ρwmin = Asw * _fyk / (_bw * math.sin(α) * 0.08 * math.sqrt(_fck))\n\n# Μέγιστη απόσταση βάσει κριτηρίων EC8\nif DC == 'M':\n s_max = min(_h/4, 24*Φw, 8*ΦLmin, 225)\nelif DC == 'H':\n s_max = min(_h/4, 24*Φw, 6*ΦLmin, 175)\n\ns_final = min(s_shear, s_ρwmin, s_max)\n\ns_top = math.floor(s_final/5)*5\n\nprint(f'Asw = {Asw:.1f}mm2')\nprint(f'Vsd_d = {_Vsd_d:.1f}N = {Vsd_d:.2f}kN')\nprint(f'fywd = {_fywd:.2f}N/mm2')\nprint(f'cotθ = {cotθ:.2f}')\nprint()\nprint(f'ρwmin = {ρwmin:.5f}. To ελάχιστο ποσοστό του οπλισμού διάτμησης.')\nprint()\nprint(f's_shear = {s_shear:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει της τιμής της τέμνουσας.')\nprint(f'ρw = {ρ_s_shear:.3f}. To ποσοστό του οπλισμού διάτμησης για την παραπάνω απόσταση.')\nif ρ_s_shear<ρwmin:\n print('Παρατηρείται ότι: ρw < ρwmin \\n')\nelse:\n print('Παρατηρείται ότι: ρw > ρwmin \\n')\n\nprint(f'sinα = {math.sin(α):.2f}')\nprint(f's_ρwmin = {s_ρwmin:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει του ελάχιστου ποσοστού διάτμησης. \\n')\nprint(f's_max = {s_max:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει των κριτηρίων του EC8. \\n')\nprint(f's_final = {s_final:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση από όλες τις παραπάνω \\n')\nprint(f's_top = {s_top:.0f}mm. Η απόσταση που επιλέγεται με στρογγυλοποίηση ανά 5mm \\n')\nprint(f'Τελικά, τοποθετούνται εντός κρίσιμης περιοχής: {n}τμητοι Φ{Φw}/{s_top}mm')",
"execution_count": 8,
"outputs": [
{
"output_type": "stream",
"text": "Asw = 100.5mm2\nVsd_d = 339820.0N = 339.82kN\nfywd = 434.78N/mm2\ncotθ = 1.20\n\nρwmin = 0.00072. To ελάχιστο ποσοστό του οπλισμού διάτμησης.\n\ns_shear = 160mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει της τιμής της τέμνουσας.\nρw = 0.002. To ποσοστό του οπλισμού διάτμησης για την παραπάνω απόσταση.\nΠαρατηρείται ότι: ρw > ρwmin \n\nsinα = 1.00\ns_ρwmin = 351mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει του ελάχιστου ποσοστού διάτμησης. \n\ns_max = 160mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει των κριτηρίων του EC8. \n\ns_final = 160mm. Η μέγιστη επιτρεπόμενη απόσταση από όλες τις παραπάνω \n\ns_top = 155mm. Η απόσταση που επιλέγεται με στρογγυλοποίηση ανά 5mm \n\nΤελικά, τοποθετούνται εντός κρίσιμης περιοχής: 2τμητοι Φ8/155mm\n",
"name": "stdout"
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "#### Οπλισμός διάτμησης εκτός κρίσιμης περιοχής\n\nΛαμβάνεται η τέμνουσα σε απόσταση $x=l_{cr}$ από την παρειά.\n\nΥπολογίζεται η μέγιστη επιτρεπόμενη απόσταση βάσει της τέμνουσας και στη συνέχεια συγκρίνεται με αυτήν βάσει του ελάχιστου ποσοστού διάτμησης και το παρακάτω όριο:\n\n$s_{max} = 0.75\\cdot d \\cdot(1+\\cot{a})$"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "_Vsd_lcr = 1000 * Vsd_lcr # Από kN σε N\n\n# Μέγιστη απόσταση βάσει τέμνουσας\ns_shear_ektos = Asw * z * _fywd * cotθ / _Vsd_lcr\n\n# Μέγιστη απόσταση\ns_max_ektos = 0.75*_d*(1+(1.0/math.tan(α)))\n\ns_final_ektos = min(s_shear_ektos, s_ρwmin, s_max_ektos)\n\ns_top_ektos = math.floor(s_final_ektos/5)*5\n\nprint(f's_shear = {s_shear_ektos:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει της τιμής της τέμνουσας. \\n')\nprint(f's_ρwmin = {s_ρwmin:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει του ελάχιστου ποσοστού διάτμησης. \\n')\nprint(f's_max = {s_max_ektos:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση \\n')\nprint(f's_final = {s_final_ektos:.0f}mm. Η μέγιστη επιτρεπόμενη απόσταση από όλες τις παραπάνω \\n')\nprint(f's_top = {s_top_ektos:.0f}mm. Η απόσταση που επιλέγεται με στρογγυλοποίηση ανά 5mm \\n')\nprint(f'Τελικά, τοποθετούνται εντός κρίσιμης περιοχής: {n}τμητοι Φ{Φw}/{s_top_ektos}mm')\n",
"execution_count": 9,
"outputs": [
{
"output_type": "stream",
"text": "s_shear = 161mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει της τιμής της τέμνουσας. \n\ns_ρwmin = 351mm. Η μέγιστη επιτρεπόμενη απόσταση βάσει του ελάχιστου ποσοστού διάτμησης. \n\ns_max = 862mm. Η μέγιστη επιτρεπόμενη απόσταση \n\ns_final = 161mm. Η μέγιστη επιτρεπόμενη απόσταση από όλες τις παραπάνω \n\ns_top = 160mm. Η απόσταση που επιλέγεται με στρογγυλοποίηση ανά 5mm \n\nΤελικά, τοποθετούνται εντός κρίσιμης περιοχής: 2τμητοι Φ8/160mm\n",
"name": "stdout"
}
]
}
],
"metadata": {
"_draft": {
"nbviewer_url": "https://gist.github.com/1e4b69d7322e13c2e255395cbcaa17ea"
},
"gist": {
"id": "1e4b69d7322e13c2e255395cbcaa17ea",
"data": {
"description": "/jupyters/TEI/BetonI-Examples2020/beams_shear_reinforcement.ipynb",
"public": true
}
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3",
"language": "python"
},
"language_info": {
"name": "python",
"version": "3.7.9",
"mimetype": "text/x-python",
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"pygments_lexer": "ipython3",
"nbconvert_exporter": "python",
"file_extension": ".py"
},
"toc": {
"nav_menu": {},
"number_sections": true,
"sideBar": true,
"skip_h1_title": false,
"base_numbering": 1,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": true,
"toc_window_display": true
},
"varInspector": {
"window_display": false,
"cols": {
"lenName": 16,
"lenType": 16,
"lenVar": 40
},
"kernels_config": {
"python": {
"library": "var_list.py",
"delete_cmd_prefix": "del ",
"delete_cmd_postfix": "",
"varRefreshCmd": "print(var_dic_list())"
},
"r": {
"library": "var_list.r",
"delete_cmd_prefix": "rm(",
"delete_cmd_postfix": ") ",
"varRefreshCmd": "cat(var_dic_list()) "
}
},
"types_to_exclude": [
"module",
"function",
"builtin_function_or_method",
"instance",
"_Feature"
]
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment