{"id":100013,"date":"2026-02-15T20:06:00","date_gmt":"2026-02-15T20:06:00","guid":{"rendered":"https:\/\/vibromera.eu\/?post_type=calculator&#038;p=100013"},"modified":"2026-02-15T20:06:00","modified_gmt":"2026-02-15T20:06:00","slug":"beam-bending-calculator","status":"publish","type":"calculator","link":"https:\/\/vibromera.eu\/nb\/calculators\/beam-bending-calculator\/","title":{"rendered":"Bjelkeb\u00f8yningskalkulator | Nedb\u00f8yning, moment og spenning | Gratis online verkt\u00f8y"},"content":{"rendered":"\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"WebApplication\",\"name\":\"Beam Bending Calculator\",\"alternateName\":[\"Beam Deflection Calculator\",\"Simply Supported Beam Calculator\",\"Cantilever Beam Calculator\"],\"description\":\"Free online beam bending calculator for simply supported and cantilever beams. Point load, UDL. Max moment, deflection, bending stress.\",\"url\":\"https:\/\/vibromera.eu\/calculators\/beam-bending-calculator\/\",\"applicationCategory\":\"Engineering Calculator\",\"operatingSystem\":\"Any (Web Browser)\",\"offers\":{\"@type\":\"Offer\",\"price\":\"0\",\"priceCurrency\":\"EUR\"},\"creator\":{\"@type\":\"Organization\",\"name\":\"Vibromera\",\"url\":\"https:\/\/vibromera.eu\/\"},\"datePublished\":\"2024-01-01\",\"dateModified\":\"2025-02-14\",\"inLanguage\":\"en\",\"isAccessibleForFree\":true,\"featureList\":[\"Simply supported beam - point load center\",\"Simply supported beam - point load at any position\",\"Simply supported beam - UDL\",\"Cantilever beam - point load at tip\",\"Auto-calculation on input change\",\"KaTeX formula rendering\"],\"keywords\":\"beam bending, beam deflection, simply supported, cantilever, point load, UDL, bending moment, bending stress\"}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[\n{\"@type\":\"Question\",\"name\":\"What is beam bending?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Beam bending occurs when a transverse load is applied to a structural member, causing it to deflect. The beam develops internal bending moments and shear forces to resist the load. The bending stress varies linearly from zero at the neutral axis to maximum at the extreme fibers.\"}},\n{\"@type\":\"Question\",\"name\":\"What is the difference between a simply supported beam and a cantilever?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"A simply supported beam rests on two supports at its ends and is free to rotate. A cantilever beam is rigidly fixed at one end and free at the other. Cantilevers generally experience higher deflections and moments at the fixed support compared to simply supported beams of the same span and load.\"}},\n{\"@type\":\"Question\",\"name\":\"How do I calculate beam deflection?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Beam deflection depends on the load type, span, elastic modulus (E), and moment of inertia (I). For a simply supported beam with central point load P: \u03b4_max = PL\u00b3\/(48EI). For UDL w: \u03b4_max = 5wL\u2074\/(384EI). For cantilever with tip load P: \u03b4_max = PL\u00b3\/(3EI).\"}},\n{\"@type\":\"Question\",\"name\":\"What is the moment of inertia in beam calculations?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The moment of inertia (I) is a geometric property of the beam cross-section that measures its resistance to bending. A larger I means less deflection and lower stress for the same load. For a rectangle: I = bh\u00b3\/12. For a circle: I = \u03c0d\u2074\/64.\"}},\n{\"@type\":\"Question\",\"name\":\"What is the maximum allowable deflection for a beam?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Common deflection limits are L\/360 for floor beams under live load, L\/240 for total load, and L\/180 for roofs. Industrial applications may use L\/500 or stricter. Always check the applicable building code or design standard for your specific application.\"}}\n]}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[\n{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/vibromera.eu\/\"},\n{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calculators\",\"item\":\"https:\/\/vibromera.eu\/calculators\/\"},\n{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Beam Bending Calculator\",\"item\":\"https:\/\/vibromera.eu\/calculators\/beam-bending-calculator\/\"}\n]}\n<\/script>\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&#038;family=JetBrains+Mono:wght@400;500;600&#038;family=Fraunces:opsz,wght@9..144,700;9..144,800&#038;display=swap\" rel=\"stylesheet\">\n\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/katex@0.16.11\/dist\/katex.min.css\">\n\n<style>\n:root{--vc-bg:#f4f1ec;--vc-surface:#ffffff;--vc-surface-alt:#f8f6f2;--vc-ink:#1a1a1a;--vc-ink-secondary:#5a5650;--vc-ink-muted:#8a857e;--vc-accent:#c85a2a;--vc-accent-hover:#b04d22;--vc-accent-light:#fdf0ea;--vc-blue:#2a5c8c;--vc-blue-light:#eaf1f8;--vc-green:#2a7a4b;--vc-green-light:#eaf8ef;--vc-yellow:#a67c00;--vc-yellow-light:#fef9e8;--vc-red:#b91c1c;--vc-red-light:#fef2f2;--vc-border:#d9d4cc;--vc-border-light:#e8e4dd;--vc-shadow:0 1px 3px rgba(26,26,26,0.06),0 4px 12px rgba(26,26,26,0.04);--vc-shadow-lg:0 4px 12px rgba(26,26,26,0.08),0 16px 40px rgba(26,26,26,0.06);--vc-radius:8px;--vc-radius-lg:12px;--vc-font:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--vc-mono:'JetBrains Mono','Consolas','Monaco',monospace;--vc-display:'Fraunces',Georgia,serif}\n.vc-calculator{font-family:var(--vc-font);font-size:15px;line-height:1.65;color:var(--vc-ink);max-width:960px;margin:0 auto;padding:20px 16px 40px;-webkit-font-smoothing:antialiased}\n.vc-calculator *,.vc-calculator *::before,.vc-calculator *::after{box-sizing:border-box}\n.vc-header{text-align:center;padding:48px 24px 40px;position:relative}\n.vc-header::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80px;height:3px;background:var(--vc-accent);border-radius:2px}\n.vc-header-eyebrow{font-family:var(--vc-mono);font-size:11px;font-weight:500;letter-spacing:0.15em;text-transform:uppercase;color:var(--vc-accent);margin:0 0 12px}\n.vc-header-title{font-family:var(--vc-display);font-size:clamp(24px,4vw,36px);font-weight:800;line-height:1.15;color:var(--vc-ink);margin:0 0 16px;letter-spacing:-0.02em}\n.vc-header-subtitle{font-size:15px;color:var(--vc-ink-secondary);margin:0 auto 20px;max-width:600px}\n.vc-badges{display:inline-flex;gap:8px;flex-wrap:wrap;justify-content:center}\n.vc-badge{font-family:var(--vc-mono);font-size:11px;font-weight:500;padding:4px 10px;border-radius:4px;background:var(--vc-surface);border:1px solid var(--vc-border);color:var(--vc-ink-secondary)}\n.vc-card{background:var(--vc-surface);border:1px solid var(--vc-border);border-radius:var(--vc-radius-lg);box-shadow:var(--vc-shadow);overflow:hidden;margin-top:32px}\n.vc-form{padding:24px}\n.vc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}\n@media(max-width:600px){.vc-form-grid{grid-template-columns:1fr}}\n.vc-field{display:flex;flex-direction:column}\n.vc-field-full{grid-column:1\/-1}\n.vc-label{font-size:12px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:var(--vc-ink-secondary);margin-bottom:6px}\n.vc-label-hint{font-weight:400;text-transform:none;letter-spacing:0;color:var(--vc-ink-muted);font-size:11px}\n.vc-select,.vc-input{width:100%;padding:10px 12px;border:1.5px solid var(--vc-border);border-radius:6px;font-family:var(--vc-font);font-size:14px;color:var(--vc-ink);background:var(--vc-surface);transition:border-color 0.15s,box-shadow 0.15s}\n.vc-select{padding-right:36px;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='16' height='16' fill='none' stroke='%235a5650' stroke-width='2'%3E%3Cpath d='M4 6l4 4 4-4'\/%3E%3C\/svg%3E\");background-repeat:no-repeat;background-position:right 10px center}\n.vc-select:focus,.vc-input:focus{outline:none;border-color:var(--vc-accent);box-shadow:0 0 0 3px rgba(200,90,42,0.12)}\n.vc-select:hover,.vc-input:hover{border-color:var(--vc-ink-muted)}\n.vc-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;padding-top:18px;border-top:1px solid var(--vc-border-light)}\n.vc-presets-label{font-family:var(--vc-mono);font-size:11px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--vc-ink-muted);width:100%;margin-bottom:2px}\n.vc-preset-btn{padding:5px 12px;font-family:var(--vc-font);font-size:12px;font-weight:500;border:1px solid var(--vc-border);border-radius:6px;background:var(--vc-surface-alt);color:var(--vc-ink-secondary);cursor:pointer;transition:all 0.15s}\n.vc-preset-btn:hover{border-color:var(--vc-accent);color:var(--vc-accent);background:var(--vc-accent-light)}\n.vc-results{border-top:1px solid var(--vc-border-light);background:var(--vc-surface-alt);padding:0;max-height:0;overflow:hidden;transition:max-height 0.5s cubic-bezier(0.4,0,0.2,1),padding 0.3s}\n.vc-results.vc-visible{max-height:2000px;padding:24px}\n.vc-results-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}\n.vc-results-title{font-family:var(--vc-display);font-size:20px;font-weight:700;color:var(--vc-ink);margin:0}\n.vc-copy-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:1px solid var(--vc-border);border-radius:6px;background:var(--vc-surface);font-family:var(--vc-font);font-size:12px;font-weight:500;color:var(--vc-ink-secondary);cursor:pointer;transition:all 0.15s}\n.vc-copy-btn:hover{border-color:var(--vc-accent);color:var(--vc-accent)}\n.vc-copy-btn.vc-copied{background:var(--vc-green-light);border-color:var(--vc-green);color:var(--vc-green)}\n.vc-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}\n@media(max-width:500px){.vc-result-grid{grid-template-columns:1fr}}\n.vc-rcard{background:var(--vc-surface);border:1px solid var(--vc-border-light);border-radius:var(--vc-radius);padding:16px;transition:transform 0.2s}\n.vc-rcard:hover{transform:translateY(-1px)}\n.vc-rcard-primary{border-color:var(--vc-accent);border-width:2px;background:linear-gradient(135deg,#fdf6f2 0%,var(--vc-surface) 100%);grid-column:1\/-1}\n.vc-rcard-label{font-family:var(--vc-mono);font-size:10px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--vc-ink-muted);margin-bottom:4px}\n.vc-rcard-value{font-family:var(--vc-mono);font-size:22px;font-weight:600;color:var(--vc-ink);line-height:1.2}\n.vc-rcard-primary .vc-rcard-value{font-size:30px;color:var(--vc-accent)}\n.vc-rcard-unit{font-size:14px;font-weight:400;color:var(--vc-ink-secondary)}\n.vc-section{margin-top:24px;border:1px solid var(--vc-border);border-radius:var(--vc-radius-lg);background:var(--vc-surface);box-shadow:var(--vc-shadow);overflow:hidden}\n.vc-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border:none;background:transparent;cursor:pointer;font-family:var(--vc-font);text-align:left;transition:background 0.15s}\n.vc-section-toggle:hover{background:var(--vc-surface-alt)}\n.vc-section-toggle-text{display:flex;align-items:center;gap:10px}\n.vc-section-icon{font-size:20px;line-height:1}\n.vc-section-title{font-family:var(--vc-display);font-size:18px;font-weight:700;color:var(--vc-ink);margin:0}\n.vc-section-chevron{width:20px;height:20px;color:var(--vc-ink-muted);transition:transform 0.3s;flex-shrink:0}\n.vc-section.vc-open .vc-section-chevron{transform:rotate(180deg)}\n.vc-section-body{max-height:0;overflow:hidden;transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1)}\n.vc-section.vc-open .vc-section-body{max-height:20000px}\n.vc-section-inner{padding:0 24px 24px;border-top:1px solid var(--vc-border-light)}\n.vc-theory h3{font-family:var(--vc-display);font-size:17px;font-weight:700;color:var(--vc-ink);margin:28px 0 10px}\n.vc-theory h3:first-child{margin-top:20px}\n.vc-theory p{font-size:14px;color:var(--vc-ink-secondary);margin:0 0 10px}\n.vc-theory ul,.vc-theory ol{font-size:14px;color:var(--vc-ink-secondary);margin:0 0 12px 18px;padding:0}\n.vc-theory li{margin-bottom:5px}\n.vc-formula-box{background:var(--vc-surface-alt);border:2px solid var(--vc-border);border-radius:6px;padding:14px 20px;font-family:var(--vc-mono);font-size:16px;font-weight:500;text-align:center;margin:14px 0;color:var(--vc-ink);overflow-x:auto}\n.vc-info-box{background:var(--vc-blue-light);border-left:3px solid var(--vc-blue);padding:14px 16px;border-radius:0 6px 6px 0;margin:14px 0}\n.vc-info-box p{margin:0;font-size:14px;color:var(--vc-ink-secondary)}\n.vc-warning-box{background:var(--vc-yellow-light);border-left:3px solid var(--vc-yellow);padding:14px 16px;border-radius:0 6px 6px 0;margin:14px 0}\n.vc-example-box{background:var(--vc-surface-alt);border:1px solid var(--vc-border-light);border-radius:6px;padding:16px;margin:14px 0}\n.vc-example-title{font-family:var(--vc-mono);font-size:13px;font-weight:600;color:var(--vc-accent);margin-bottom:8px}\n.vc-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13px}\n.vc-table th,.vc-table td{padding:10px 12px;border:1px solid var(--vc-border-light);text-align:left}\n.vc-table th{background:var(--vc-surface-alt);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--vc-ink-secondary)}\n.vc-table tr:nth-child(even){background:var(--vc-surface-alt)}\n@media(max-width:600px){.vc-table{font-size:12px}.vc-table th,.vc-table td{padding:8px}}\n.vc-faq-list{display:flex;flex-direction:column;gap:8px;margin-top:20px}\n.vc-faq-item{border:1px solid var(--vc-border-light);border-radius:6px;overflow:hidden}\n.vc-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:none;background:var(--vc-surface-alt);cursor:pointer;font-family:var(--vc-font);font-size:15px;font-weight:600;color:var(--vc-ink);text-align:left;transition:background 0.15s}\n.vc-faq-q:hover{background:#ede9e3}\n.vc-faq-chevron{width:16px;height:16px;color:var(--vc-ink-muted);flex-shrink:0;transition:transform 0.25s}\n.vc-faq-item.vc-open .vc-faq-chevron{transform:rotate(180deg)}\n.vc-faq-a{max-height:0;overflow:hidden;transition:max-height 0.35s}\n.vc-faq-item.vc-open .vc-faq-a{max-height:1200px}\n.vc-faq-a-inner{padding:14px 16px;border-top:1px solid var(--vc-border-light);font-size:14px;color:var(--vc-ink-secondary)}\n.vc-faq-a-inner p{margin:0 0 8px}\n.vc-faq-a-inner p:last-child{margin-bottom:0}\n.vc-faq-a-inner ul{margin:4px 0 8px 16px;padding:0}\n.vc-faq-a-inner li{margin-bottom:3px}\n.vc-related{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}\n.vc-related-link{display:inline-block;padding:8px 16px;font-family:var(--vc-font);font-size:13px;font-weight:600;background:var(--vc-surface-alt);color:var(--vc-ink-secondary);border:1px solid var(--vc-border);border-radius:var(--vc-radius);text-decoration:none;transition:all 0.15s}\n.vc-related-link:hover{border-color:var(--vc-accent);color:var(--vc-accent);background:var(--vc-accent-light)}\n.vc-promo{margin-top:24px;padding:20px;background:linear-gradient(135deg,var(--vc-accent-light),var(--vc-surface));border:1px solid var(--vc-border);border-radius:var(--vc-radius-lg);display:flex;align-items:center;gap:16px}\n.vc-promo-text{flex:1;font-size:14px;color:var(--vc-ink-secondary)}\n.vc-promo-text strong{color:var(--vc-ink)}\n.vc-promo-link{padding:8px 20px;font-size:13px;font-weight:700;color:#fff;background:var(--vc-accent);border-radius:var(--vc-radius);text-decoration:none;white-space:nowrap;transition:background 0.15s}\n.vc-promo-link:hover{background:var(--vc-accent-hover)}\n.vc-footer{text-align:center;padding:32px 16px;font-size:13px;color:var(--vc-ink-muted)}\n.vc-footer a{color:var(--vc-accent);text-decoration:none}\n.vc-footer a:hover{text-decoration:underline}\n.vc-footer-links{margin-top:8px;font-size:12px}\n.vc-footer-links a{margin:0 8px}\n@media print{.vc-section-body{max-height:none!important}.vc-faq-a{max-height:none!important}.vc-results{max-height:none!important;padding:24px!important}.vc-copy-btn,.vc-section-chevron,.vc-faq-chevron,.vc-presets,.vc-promo{display:none!important}}\n.vc-results.vc-visible{max-height:5000px}\n.vc-viz{margin:20px 0;background:var(--vc-surface);border:1px solid var(--vc-border-light);border-radius:var(--vc-radius);padding:16px;overflow:hidden}\n.vc-viz svg{width:100%;height:auto;display:block}\n.vc-viz-title{font-family:var(--vc-mono);font-size:11px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--vc-ink-muted);margin-bottom:12px}\n<\/style>\n\n<div class=\"vc-calculator\" id=\"vc-beam-bending\">\n\n<header class=\"vc-header\">\n    <p class=\"vc-header-eyebrow\">Free Engineering Tool<\/p>\n    <h1 class=\"vc-header-title\">Beam Bending Calculator<\/h1>\n    <p class=\"vc-header-subtitle\">Calculate maximum bending moment, deflection, and stress for simply supported and cantilever beams under various load types.<\/p>\n    <div class=\"vc-badges\">\n        <span class=\"vc-badge\">Point Load<\/span>\n        <span class=\"vc-badge\">UDL<\/span>\n        <span class=\"vc-badge\">Cantilever<\/span>\n        <span class=\"vc-badge\">#164<\/span>\n    <\/div>\n<\/header>\n\n<div class=\"vc-card\">\n    <form class=\"vc-form\" id=\"vc-form\" autocomplete=\"off\">\n        <div class=\"vc-form-grid\">\n            <div class=\"vc-field vc-field-full\">\n                <label class=\"vc-label\" for=\"vc-loadcase\">Load Case<\/label>\n                <select class=\"vc-select\" id=\"vc-loadcase\">\n                    <option value=\"ss_center\">Simply Supported \u2014 Point Load at Center<\/option>\n                    <option value=\"ss_any\">Simply Supported \u2014 Point Load at Distance a<\/option>\n                    <option value=\"ss_udl\">Simply Supported \u2014 Uniformly Distributed Load (UDL)<\/option>\n                    <option value=\"cant_point\">Cantilever \u2014 Point Load at Free End<\/option>\n                    <option value=\"cant_udl\">Cantilever \u2014 Uniformly Distributed Load (UDL)<\/option>\n                <\/select>\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-L\">Beam Length L <span class=\"vc-label-hint\">(m)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-L\" inputmode=\"decimal\" step=\"any\" min=\"0.001\" placeholder=\"e.g. 6\" value=\"6\">\n            <\/div>\n            <div class=\"vc-field\" id=\"vc-field-a\" style=\"display:none;\">\n                <label class=\"vc-label\" for=\"vc-a\">Distance a from left support <span class=\"vc-label-hint\">(m)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-a\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 2\" value=\"2\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-P\" id=\"vc-P-label\">Point Load P <span class=\"vc-label-hint\">(kN)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-P\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 10\" value=\"10\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-E\">Elastic Modulus E <span class=\"vc-label-hint\">(GPa)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-E\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 200\" value=\"200\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-I\">Moment of Inertia I <span class=\"vc-label-hint\">(cm\u2074)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-I\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 8356\" value=\"8356\">\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-c\">Distance to Extreme Fiber c <span class=\"vc-label-hint\">(mm)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-c\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 150\" value=\"150\">\n            <\/div>\n        <\/div>\n\n        <div class=\"vc-presets\">\n            <div class=\"vc-presets-label\">Quick presets<\/div>\n            <button type=\"button\" class=\"vc-preset-btn\" data-case=\"ss_center\" data-L=\"6\" data-P=\"10\" data-E=\"200\" data-I=\"8356\" data-c=\"150\">IPE 300 \/ 6m \/ 10kN center<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-case=\"ss_udl\" data-L=\"5\" data-P=\"8\" data-E=\"200\" data-I=\"3892\" data-c=\"125\">IPE 250 \/ 5m \/ 8kN\/m UDL<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-case=\"cant_point\" data-L=\"3\" data-P=\"5\" data-E=\"200\" data-I=\"8356\" data-c=\"150\">Cantilever IPE 300 \/ 3m \/ 5kN<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-case=\"ss_any\" data-L=\"8\" data-P=\"20\" data-E=\"200\" data-I=\"23130\" data-c=\"200\" data-a=\"3\">IPE 400 \/ 8m \/ 20kN at 3m<\/button>\n        <\/div>\n    <\/form>\n\n    <div class=\"vc-results\" id=\"vc-results\">\n        <div class=\"vc-results-head\">\n            <h2 class=\"vc-results-title\">Results<\/h2>\n            <button type=\"button\" class=\"vc-copy-btn\" id=\"vc-copy-btn\">\n                <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg>\n                Copy\n            <\/button>\n        <\/div>\n        <div class=\"vc-result-grid\">\n            <div class=\"vc-rcard vc-rcard-primary\">\n                <div class=\"vc-rcard-label\">Maximum Bending Moment<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-moment\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Maximum Deflection<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-deflection\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Maximum Bending Stress<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-stress\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Span\/Deflection Ratio<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-ratio\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Load Case<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-case\">\u2014<\/div>\n            <\/div>\n        <\/div>\n        <div class=\"vc-viz\" id=\"vc-beam-viz\"><\/div>\n    <\/div>\n<\/div>\n\n<!-- Theory -->\n<div class=\"vc-section vc-open\" id=\"vc-sec-theory\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"true\">\n        <span class=\"vc-section-toggle-text\"><span class=\"vc-section-icon\">\ud83d\udcd8<\/span><span class=\"vc-section-title\">Theory &amp; Formulas<\/span><\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner vc-theory\">\n            <h3>Simply Supported \u2014 Point Load at Center<\/h3>\n            <div class=\"vc-formula-box\" id=\"vc-katex-1\"><\/div>\n            <h3>Simply Supported \u2014 UDL<\/h3>\n            <div class=\"vc-formula-box\" id=\"vc-katex-2\"><\/div>\n            <h3>Cantilever \u2014 Point Load at Tip<\/h3>\n            <div class=\"vc-formula-box\" id=\"vc-katex-3\"><\/div>\n            <h3>Bending Stress<\/h3>\n            <div class=\"vc-formula-box\" id=\"vc-katex-4\"><\/div>\n            <p>Where <strong>\u03c3<\/strong> is bending stress, <strong>M<\/strong> is bending moment, <strong>c<\/strong> is distance to extreme fiber, and <strong>I<\/strong> is moment of inertia.<\/p>\n            <table class=\"vc-table\">\n                <thead><tr><th>Load Case<\/th><th>M_max<\/th><th>\u03b4_max<\/th><\/tr><\/thead>\n                <tbody>\n                    <tr><td>SS \u2014 Center Point<\/td><td>PL\/4<\/td><td>PL\u00b3\/(48EI)<\/td><\/tr>\n                    <tr><td>SS \u2014 Point at a<\/td><td>Pa(L\u2212a)\/L<\/td><td>complex formula<\/td><\/tr>\n                    <tr><td>SS \u2014 UDL w<\/td><td>wL\u00b2\/8<\/td><td>5wL\u2074\/(384EI)<\/td><\/tr>\n                    <tr><td>Cantilever \u2014 Tip Point<\/td><td>PL<\/td><td>PL\u00b3\/(3EI)<\/td><\/tr>\n                    <tr><td>Cantilever \u2014 UDL w<\/td><td>wL\u00b2\/2<\/td><td>wL\u2074\/(8EI)<\/td><\/tr>\n                <\/tbody>\n            <\/table>\n            <div class=\"vc-warning-box\"><p style=\"margin:0;font-size:14px;color:var(--vc-ink-secondary);\"><strong>\u26a0\ufe0f Note:<\/strong> These formulas assume linear-elastic behavior, small deflections, and prismatic (constant cross-section) beams. For complex loading, use superposition.<\/p><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- Related -->\n<div class=\"vc-section\" id=\"vc-sec-related\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\">\n        <span class=\"vc-section-toggle-text\"><span class=\"vc-section-icon\">\ud83d\udd17<\/span><span class=\"vc-section-title\">Related Calculators<\/span><\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner\">\n            <div class=\"vc-related\">\n                <a class=\"vc-related-link\" href=\"\/calculators\/section-moment-of-inertia\/\">Section Moment of Inertia<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/stress-calculator\/\">Stress Calculator<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/euler-buckling-calculator\/\">Euler Buckling<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/safety-factor-calculator\/\">Safety Factor<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/pressure-vessel-calculator\/\">Pressure Vessel<\/a>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- FAQ -->\n<div class=\"vc-section\" id=\"vc-sec-faq\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\">\n        <span class=\"vc-section-toggle-text\"><span class=\"vc-section-icon\">\u2753<\/span><span class=\"vc-section-title\">Frequently Asked Questions<\/span><\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner\">\n            <div class=\"vc-faq-list\" id=\"vc-faq-list\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<div class=\"vc-promo\">\n    <div class=\"vc-promo-text\"><strong>Vibromera \u2014 Portable Balancing &amp; Vibration Analysis<\/strong><br>Professional field balancing instruments and software. Used in 50+ countries.<\/div>\n    <a class=\"vc-promo-link\" href=\"https:\/\/vibromera.eu\/\" target=\"_blank\" rel=\"noopener\">Learn More<\/a>\n<\/div>\n\n<footer class=\"vc-footer\">\n    <p>\u00a9 2024\u20132025 <a href=\"https:\/\/vibromera.eu\/\">Vibromera<\/a> \u2014 Engineering Calculators<\/p>\n    <p style=\"font-size:12px;margin-top:4px;\">Beam bending formulas \u2014 standard structural analysis. Last updated: February 2025<\/p>\n    <div class=\"vc-footer-links\"><a href=\"\/calculators\/engineering-calculators\/\">All Calculators<\/a><a href=\"https:\/\/vibromera.eu\/contacts\/\">Contact<\/a><\/div>\n<\/footer>\n\n<\/div>\n\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/katex@0.16.11\/dist\/katex.min.js\"><\/script>\n<script>\n(function(){\n'use strict';\nvar SLUG='beam-bending-calculator';\nfunction $(id){return document.getElementById(id)}\nfunction fmt(n,d){if(isNaN(n)||!isFinite(n))return'\u2014';var f=n.toFixed(d===undefined?2:d);return f.replace(\/(\\.\\d*?)0+$\/,'$1').replace(\/\\.$\/,'')}\n\nfunction updateUI(){\n    var c=$('vc-loadcase').value;\n    $('vc-field-a').style.display=(c==='ss_any')?'':'none';\n    var isUDL=(c==='ss_udl'||c==='cant_udl');\n    $('vc-P-label').innerHTML=isUDL?'Distributed Load w <span class=\"vc-label-hint\">(kN\/m)<\/span>':'Point Load P <span class=\"vc-label-hint\">(kN)<\/span>';\n}\n\nfunction calculate(){\n    updateUI();\n    var c=$('vc-loadcase').value;\n    var L=parseFloat($('vc-L').value);\n    var P=parseFloat($('vc-P').value);\n    var E=parseFloat($('vc-E').value);\n    var Iv=parseFloat($('vc-I').value);\n    var cv=parseFloat($('vc-c').value);\n    var a=parseFloat($('vc-a').value)||0;\n\n    if(!L||L<=0||!P||P<=0||!E||E<=0||!Iv||Iv<=0){$('vc-results').classList.remove('vc-visible');return}\n\n    var Pn=P*1e3;\/\/ N or N\/m\n    var En=E*1e9;\/\/ Pa\n    var In=Iv*1e-8;\/\/ m^4\n    var cn=cv*1e-3;\/\/ m\n    var Mmax,dmax,caseName;\n\n    switch(c){\n        case'ss_center':\n            Mmax=Pn*L\/4;\n            dmax=Pn*Math.pow(L,3)\/(48*En*In);\n            caseName='SS \u2014 Center Point Load';\n            break;\n        case'ss_any':\n            if(a<=0||a>=L){$('vc-results').classList.remove('vc-visible');return}\n            var b=L-a;\n            Mmax=Pn*a*b\/L;\n            dmax=Pn*b*(3*L*L-4*b*b<0?Pn*a*(3*L*L-4*a*a)\/(48*En*In*L):Pn*b*(3*L*L-4*b*b)\/(48*En*In*L));\n            \/\/ Correct general formula for max deflection when a<=L\/2\n            if(a<=L\/2){\n                dmax=Pn*a*(L*L-a*a)*Math.sqrt(L*L-a*a)\/(9*Math.sqrt(3)*En*In*L);\n            } else {\n                dmax=Pn*b*(L*L-b*b)*Math.sqrt(L*L-b*b)\/(9*Math.sqrt(3)*En*In*L);\n            }\n            caseName='SS \u2014 Point at a='+fmt(a,1)+'m';\n            break;\n        case'ss_udl':\n            Mmax=Pn*L*L\/8;\n            dmax=5*Pn*Math.pow(L,4)\/(384*En*In);\n            caseName='SS \u2014 UDL';\n            break;\n        case'cant_point':\n            Mmax=Pn*L;\n            dmax=Pn*Math.pow(L,3)\/(3*En*In);\n            caseName='Cantilever \u2014 Point at Tip';\n            break;\n        case'cant_udl':\n            Mmax=Pn*L*L\/2;\n            dmax=Pn*Math.pow(L,4)\/(8*En*In);\n            caseName='Cantilever \u2014 UDL';\n            break;\n    }\n\n    var stress=cn>0?Mmax*cn\/In:0;\n    var ratio=dmax>0?L\/dmax:Infinity;\n\n    $('vc-r-moment').innerHTML=fmt(Mmax\/1e3,2)+' <span class=\"vc-rcard-unit\">kN\u00b7m<\/span>';\n    $('vc-r-deflection').innerHTML=fmt(dmax*1e3,2)+' <span class=\"vc-rcard-unit\">mm<\/span>';\n    $('vc-r-stress').innerHTML=fmt(stress\/1e6,1)+' <span class=\"vc-rcard-unit\">MPa<\/span>';\n    $('vc-r-ratio').innerHTML='L\/'+fmt(ratio,0);\n    $('vc-r-case').innerHTML='<span style=\"font-size:14px\">'+caseName+'<\/span>';\n\n    $('vc-results').classList.add('vc-visible');\n\n    var u=new URL(window.location);\n    u.searchParams.set('case',c);u.searchParams.set('L',L);u.searchParams.set('P',P);u.searchParams.set('E',E);u.searchParams.set('I',Iv);u.searchParams.set('c',cv);\n    if(c==='ss_any')u.searchParams.set('a',a);\n    history.replaceState(null,'',u.toString());\n\n    saveHistory({case:c,L:L,P:P,E:E,I:Iv,c:cv,a:a,_summary:caseName+', M='+fmt(Mmax\/1e3,1)+'kN\u00b7m'});\n    drawBeamViz(c,L,P,Pn,En,In,a,Mmax,dmax);\n}\n\nfunction drawBeamViz(cas,L,Pdisp,Pn,En,In,aV,Mmax,dmaxVal){\n    var el=$('vc-beam-viz');if(!el)return;\n    if(cas==='ss_any'&&(aV<=0||aV>=L)){el.innerHTML='';return;}\n    var bV=L-aV,isCant=cas==='cant_point'||cas==='cant_udl',isUDL=cas==='ss_udl'||cas==='cant_udl';\n    var N=60,df=[],mm=[];\n    for(var i=0;i<=N;i++){\n        var x=i\/N*L,d=0,m=0;\n        switch(cas){\n        case'ss_center':\n            if(x<=L\/2){d=Pn*x*(3*L*L-4*x*x)\/(48*En*In);m=Pn*x\/2;}\n            else{var xm=L-x;d=Pn*xm*(3*L*L-4*xm*xm)\/(48*En*In);m=Pn*xm\/2;}break;\n        case'ss_any':\n            if(x<=aV){d=Pn*bV*x\/(6*En*In*L)*(L*L-bV*bV-x*x);m=Pn*bV*x\/L;}\n            else{var xr=L-x;d=Pn*aV*xr\/(6*En*In*L)*(L*L-aV*aV-xr*xr);m=Pn*aV*xr\/L;}break;\n        case'ss_udl':d=Pn*x*(L*L*L-2*L*x*x+x*x*x)\/(24*En*In);m=Pn*x*(L-x)\/2;break;\n        case'cant_point':d=Pn*x*x*(3*L-x)\/(6*En*In);m=Pn*(L-x);break;\n        case'cant_udl':d=Pn*x*x*(x*x-4*L*x+6*L*L)\/(24*En*In);m=Pn*(L-x)*(L-x)\/2;break;\n        }\n        df.push(Math.max(0,d));mm.push(Math.abs(m));\n    }\n    var SW=600,SH=300,ml=70,mr=30,by=75,bw=SW-ml-mr;\n    var maxD=0,maxM=0;for(var i=0;i<=N;i++){if(df[i]>maxD)maxD=df[i];if(mm[i]>maxM)maxM=mm[i];}\n    if(!maxD)maxD=1e-9;if(!maxM)maxM=1e-9;\n    var dSc=55\/maxD,mTop=185,mHt=85,mSc=mHt\/maxM;\n    var s='<svg viewBox=\"0 0 600 300\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"font-family:var(--vc-mono)\">';\n    s+='<defs><marker id=\"bm-a\" markerWidth=\"6\" markerHeight=\"6\" refX=\"3\" refY=\"3\" orient=\"auto\"><path d=\"M0,0L6,3L0,6\" fill=\"var(--vc-ink-muted)\"\/><\/marker><\/defs>';\n    s+='<line x1=\"'+ml+'\" y1=\"'+by+'\" x2=\"'+(ml+bw)+'\" y2=\"'+by+'\" stroke=\"var(--vc-ink)\" stroke-width=\"3\" stroke-linecap=\"round\"\/>';\n    if(isCant){\n        s+='<rect x=\"'+(ml-14)+'\" y=\"'+(by-22)+'\" width=\"14\" height=\"44\" fill=\"var(--vc-surface-alt)\" stroke=\"var(--vc-ink)\" stroke-width=\"1.5\" rx=\"1\"\/>';\n        for(var h=-16;h<=16;h+=7)s+='<line x1=\"'+(ml-13)+'\" y1=\"'+(by+h)+'\" x2=\"'+(ml-3)+'\" y2=\"'+(by+h-8)+'\" stroke=\"var(--vc-ink-muted)\" stroke-width=\"1\"\/>';\n    }else{\n        [ml,ml+bw].forEach(function(cx){\n            s+='<polygon points=\"'+cx+','+by+' '+(cx-10)+','+(by+18)+' '+(cx+10)+','+(by+18)+'\" fill=\"var(--vc-surface-alt)\" stroke=\"var(--vc-ink)\" stroke-width=\"1.5\"\/>';\n            s+='<line x1=\"'+(cx-13)+'\" y1=\"'+(by+18)+'\" x2=\"'+(cx+13)+'\" y2=\"'+(by+18)+'\" stroke=\"var(--vc-ink)\" stroke-width=\"1.5\"\/>';\n        });\n    }\n    if(isUDL){\n        for(var i=0;i<=10;i++){var ax=ml+i\/10*bw;\n            s+='<line x1=\"'+ax+'\" y1=\"'+(by-38)+'\" x2=\"'+ax+'\" y2=\"'+(by-6)+'\" stroke=\"var(--vc-red)\" stroke-width=\"1.2\"\/>';\n            s+='<polygon points=\"'+ax+','+(by-6)+' '+(ax-3)+','+(by-12)+' '+(ax+3)+','+(by-12)+'\" fill=\"var(--vc-red)\"\/>';\n        }\n        s+='<line x1=\"'+ml+'\" y1=\"'+(by-38)+'\" x2=\"'+(ml+bw)+'\" y2=\"'+(by-38)+'\" stroke=\"var(--vc-red)\" stroke-width=\"1.2\"\/>';\n        s+='<text x=\"'+(ml+bw\/2)+'\" y=\"'+(by-44)+'\" text-anchor=\"middle\" fill=\"var(--vc-red)\" font-size=\"10\">w = '+Pdisp+' kN\/m<\/text>';\n    }else{\n        var lx=cas==='ss_center'?ml+bw\/2:cas==='cant_point'?ml+bw:ml+aV\/L*bw;\n        s+='<line x1=\"'+lx+'\" y1=\"'+(by-48)+'\" x2=\"'+lx+'\" y2=\"'+(by-6)+'\" stroke=\"var(--vc-red)\" stroke-width=\"2\"\/>';\n        s+='<polygon points=\"'+lx+','+(by-6)+' '+(lx-4)+','+(by-14)+' '+(lx+4)+','+(by-14)+'\" fill=\"var(--vc-red)\"\/>';\n        s+='<text x=\"'+lx+'\" y=\"'+(by-53)+'\" text-anchor=\"middle\" fill=\"var(--vc-red)\" font-size=\"10\">P = '+Pdisp+' kN<\/text>';\n    }\n    var dp='M';for(var i=0;i<=N;i++){dp+=(i?' L':'')+((ml+i\/N*bw).toFixed(1)+','+(by+df[i]*dSc).toFixed(1));}\n    s+='<path d=\"'+dp+'\" fill=\"none\" stroke=\"var(--vc-accent)\" stroke-width=\"2.5\" stroke-dasharray=\"6,3\"\/>';\n    var mdi=0;for(var i=1;i<=N;i++)if(df[i]>df[mdi])mdi=i;\n    var mdx=ml+mdi\/N*bw,mdy=by+df[mdi]*dSc;\n    s+='<circle cx=\"'+mdx.toFixed(1)+'\" cy=\"'+mdy.toFixed(1)+'\" r=\"3.5\" fill=\"var(--vc-accent)\"\/>';\n    var dAnc=mdx>ml+bw*0.55?'end':'start',dOff=mdx>ml+bw*0.55?-8:8;\n    s+='<text x=\"'+(mdx+dOff).toFixed(1)+'\" y=\"'+(mdy+14).toFixed(1)+'\" text-anchor=\"'+dAnc+'\" fill=\"var(--vc-accent)\" font-size=\"9.5\">\\u03B4max = '+fmt(dmaxVal*1e3,2)+' mm<\/text>';\n    s+='<text x=\"'+ml+'\" y=\"'+(mTop-8)+'\" fill=\"var(--vc-blue)\" font-size=\"10\" font-weight=\"600\">Bending Moment<\/text>';\n    s+='<line x1=\"'+ml+'\" y1=\"'+mTop+'\" x2=\"'+(ml+bw)+'\" y2=\"'+mTop+'\" stroke=\"var(--vc-ink-muted)\" stroke-width=\"0.8\"\/>';\n    var mp='M '+ml+','+mTop;for(var i=0;i<=N;i++){mp+=' L'+(ml+i\/N*bw).toFixed(1)+','+(mTop+mm[i]*mSc).toFixed(1);}\n    mp+=' L'+(ml+bw)+','+mTop+' Z';\n    s+='<path d=\"'+mp+'\" fill=\"rgba(42,92,140,0.15)\" stroke=\"var(--vc-blue)\" stroke-width=\"1.5\"\/>';\n    var mmi=0;for(var i=1;i<=N;i++)if(mm[i]>mm[mmi])mmi=i;\n    var mmx=ml+mmi\/N*bw,mmy=mTop+mm[mmi]*mSc;\n    s+='<circle cx=\"'+mmx.toFixed(1)+'\" cy=\"'+mmy.toFixed(1)+'\" r=\"3.5\" fill=\"var(--vc-blue)\"\/>';\n    var mAnc=mmx>ml+bw*0.55?'end':'start',mOff=mmx>ml+bw*0.55?-8:8;\n    s+='<text x=\"'+(mmx+mOff).toFixed(1)+'\" y=\"'+(mmy+14).toFixed(1)+'\" text-anchor=\"'+mAnc+'\" fill=\"var(--vc-blue)\" font-size=\"9.5\">Mmax = '+fmt(Mmax\/1e3,2)+' kN\\u00B7m<\/text>';\n    s+='<line x1=\"'+ml+'\" y1=\"'+(SH-12)+'\" x2=\"'+(ml+bw)+'\" y2=\"'+(SH-12)+'\" stroke=\"var(--vc-ink-muted)\" stroke-width=\"0.7\" marker-start=\"url(#bm-a)\" marker-end=\"url(#bm-a)\"\/>';\n    s+='<text x=\"'+(ml+bw\/2)+'\" y=\"'+(SH-2)+'\" text-anchor=\"middle\" fill=\"var(--vc-ink-muted)\" font-size=\"9.5\">L = '+L+' m<\/text>';\n    s+='<\/svg>';\n    el.innerHTML='<div class=\"vc-viz-title\">Beam Diagram &amp; Bending Moment<\/div>'+s;\n}\n\ndocument.querySelectorAll('.vc-preset-btn').forEach(function(btn){\n    btn.addEventListener('click',function(e){\n        e.preventDefault();\n        $('vc-loadcase').value=this.getAttribute('data-case');\n        $('vc-L').value=this.getAttribute('data-L');\n        $('vc-P').value=this.getAttribute('data-P');\n        $('vc-E').value=this.getAttribute('data-E');\n        $('vc-I').value=this.getAttribute('data-I');\n        $('vc-c').value=this.getAttribute('data-c');\n        if(this.getAttribute('data-a'))$('vc-a').value=this.getAttribute('data-a');\n        calculate();\n    });\n});\n\n$('vc-form').addEventListener('input',calculate);\n$('vc-form').addEventListener('change',calculate);\n\n$('vc-copy-btn').addEventListener('click',function(){\n    var text='Beam Bending Calculation\\n\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\n'+\n        'Load Case: '+$('vc-r-case').textContent+'\\n'+\n        'Max Moment: '+$('vc-r-moment').textContent+'\\n'+\n        'Max Deflection: '+$('vc-r-deflection').textContent+'\\n'+\n        'Max Stress: '+$('vc-r-stress').textContent+'\\n'+\n        'Span\/Deflection: '+$('vc-r-ratio').textContent+'\\n'+\n        '\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\nvibromera.eu\/calculators\/beam-bending-calculator\/';\n    if(navigator.clipboard){navigator.clipboard.writeText(text).then(function(){\n        var btn=$('vc-copy-btn');btn.classList.add('vc-copied');btn.innerHTML='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Copied!';\n        setTimeout(function(){btn.classList.remove('vc-copied');btn.innerHTML='<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg> Copy';},2000);\n    })}\n});\n\ndocument.querySelectorAll('.vc-section-toggle').forEach(function(btn){\n    btn.addEventListener('click',function(){var s=this.closest('.vc-section');s.classList.toggle('vc-open');this.setAttribute('aria-expanded',s.classList.contains('vc-open'));});\n});\n\nvar faqData=[\n    {q:'What is beam bending?',a:'<p>Beam bending occurs when a transverse load is applied to a structural member, causing it to deflect. The beam develops internal bending moments and shear forces. Bending stress varies linearly across the section \u2014 zero at the neutral axis and maximum at the extreme fibers.<\/p>'},\n    {q:'What is the difference between a simply supported beam and a cantilever?',a:'<p>A simply supported beam rests on two supports at its ends and is free to rotate at those points. A cantilever beam is rigidly fixed at one end and free at the other.<\/p><p>Cantilevers have larger deflections and moments at the fixed support than equivalently loaded simply supported beams.<\/p>'},\n    {q:'How do I calculate beam deflection?',a:'<p>Deflection depends on load type, span length (L), elastic modulus (E), and moment of inertia (I):<\/p><ul><li><strong>SS center point load:<\/strong> \u03b4 = PL\u00b3\/(48EI)<\/li><li><strong>SS UDL:<\/strong> \u03b4 = 5wL\u2074\/(384EI)<\/li><li><strong>Cantilever tip load:<\/strong> \u03b4 = PL\u00b3\/(3EI)<\/li><\/ul>'},\n    {q:'What is the moment of inertia I?',a:'<p>The second moment of area (I) is a geometric property that measures the cross-section\\'s resistance to bending. Larger I means less deflection and stress for the same load. For a rectangle: I = bh\u00b3\/12. For a circle: I = \u03c0d\u2074\/64.<\/p>'},\n    {q:'What is an acceptable deflection limit?',a:'<p>Common limits per building codes:<\/p><ul><li><strong>L\/360<\/strong> \u2014 Floor beams (live load)<\/li><li><strong>L\/240<\/strong> \u2014 Total load<\/li><li><strong>L\/180<\/strong> \u2014 Roof beams<\/li><li><strong>L\/500<\/strong> \u2014 Precision machinery supports<\/li><\/ul><p>Always check applicable design standards.<\/p>'}\n];\n\nvar fl=$('vc-faq-list');\nfaqData.forEach(function(f){fl.innerHTML+='<div class=\"vc-faq-item\"><button type=\"button\" class=\"vc-faq-q\"><span>'+f.q+'<\/span><svg class=\"vc-faq-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg><\/button><div class=\"vc-faq-a\"><div class=\"vc-faq-a-inner\">'+f.a+'<\/div><\/div><\/div>';});\nfl.addEventListener('click',function(e){var b=e.target.closest('.vc-faq-q');if(!b)return;b.closest('.vc-faq-item').classList.toggle('vc-open');});\n\nfunction saveHistory(entry){var key='vc_history_'+SLUG;var arr=[];try{arr=JSON.parse(localStorage.getItem(key))||[]}catch(e){}entry._ts=new Date().toISOString();arr.unshift(entry);if(arr.length>10)arr=arr.slice(0,10);try{localStorage.setItem(key,JSON.stringify(arr))}catch(e){}}\n\nfunction loadParams(){var p=new URLSearchParams(window.location.search);p.forEach(function(v,k){var el=$(k)||$('vc-'+k);if(el)el.value=v})}\n\nfunction renderFormulas(){\n    try{\n        katex.render('M_{max}=\\\\frac{PL}{4},\\\\quad \\\\delta_{max}=\\\\frac{PL^3}{48EI}',  $('vc-katex-1'),{displayMode:true,throwOnError:false});\n        katex.render('M_{max}=\\\\frac{wL^2}{8},\\\\quad \\\\delta_{max}=\\\\frac{5wL^4}{384EI}', $('vc-katex-2'),{displayMode:true,throwOnError:false});\n        katex.render('M_{max}=PL,\\\\quad \\\\delta_{max}=\\\\frac{PL^3}{3EI}', $('vc-katex-3'),{displayMode:true,throwOnError:false});\n        katex.render('\\\\sigma_{max}=\\\\frac{M_{max}\\\\cdot c}{I}', $('vc-katex-4'),{displayMode:true,throwOnError:false});\n    }catch(e){}\n}\n\nfunction init(){loadParams();renderFormulas();calculate()}\nif(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',init)}else{init()}\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Gratis online bjelkeb\u00f8yekalkulator for enkeltst\u00f8ttede og utkragede bjelker. Beregn maksimalt moment, nedb\u00f8yning og b\u00f8yespenning for punktlaster og UDL.<\/p>","protected":false},"featured_media":0,"template":"","meta":{"ai_generated_summary":"","footnotes":""},"categories":[],"tags":[],"class_list":["post-100013","calculator","type-calculator","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator\/100013","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator"}],"about":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/types\/calculator"}],"version-history":[{"count":1,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator\/100013\/revisions"}],"predecessor-version":[{"id":100326,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator\/100013\/revisions\/100326"}],"wp:attachment":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/media?parent=100013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/categories?post=100013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/tags?post=100013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}