// Numbas version: exam_results_page_options {"name": "3D Stress - Principal stresses calculation", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"name": "3D Stress - Principal stresses calculation", "tags": [], "metadata": {"description": "
Determine the principal stresses for a 3D stress state (with null third invariant).
", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "The principal stresses and maximum shear stress, and the von Mises stress, can all be determined from the 3D stress matrix and its invariants, i.e., if:
\n\\[\\sigma=\\begin{pmatrix}\\sigma_x & \\tau_{xy} & \\tau_{zx} \\\\ \\tau_{xy} & \\sigma_y & \\tau_{yz} \\\\ \\tau_{zx} & \\tau_{yz} & \\sigma_z\\end{pmatrix}\\]
\nthen the three invariants are:
\nFrom these we can easily calculate:
\nThe principal stresses can be found by solving the eigenvalue/eigenvector matrix problem (the eigenvalues are the principal stresses), or by finding the three roots (the three roots - $\\lambda_1$, $\\lambda_2$, $\\lambda_3$ - are the principal stresses) of the equation:
\n\\[\\lambda^3 - I_1 \\lambda^2 + I_2 \\lambda - I_3 = 0\\]
\nNote A. If the three principal stresses [Units: Pa] are different (which is usually but not always the case):
\nNote B: 1 MPa = $10^6$ Pa = $10^6$ N/m$^2$ = 1 N/mm$^2$
\nNote C: 1 MPa$^2$ = $10^{12}$ Pa$^2$, etc.
", "advice": "Calculate the invariants:
\nTo calculate the principal stresses, solve the cubic equation:
\n\\[\\lambda^3 - I_1 \\lambda^2 + I_2 \\lambda - I_3 = 0\\]
\nwhich, since $I_3 \\approx 0$, simplifies to:
\n\\[\\lambda^3 - I_1 \\lambda^2 + I_2 \\lambda =\\lambda \\left( \\lambda^2 - I_1 \\lambda + I_2 \\right) = 0\\]
\nwhich has a root at $\\lambda = 0$ and the quadratic formula can be used to find the other two roots:
\n$\\lambda = {I_1 \\pm \\sqrt{I_1^2 - 4 I_2} \\over 2} = {\\var{siground(I1,3)} \\pm \\sqrt{(\\var{siground(I1,3)})^2 - 4 \\times (\\var{siground(I2,3)})} \\over 2} = \\var{siground(lambda1,3)}$MPa or $\\var{siground(lambda2,3)}$MPa.
", "rulesets": {}, "extensions": [], "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true}, "constants": [], "variables": {"lambda2": {"name": "lambda2", "group": "Ungrouped variables", "definition": "(I1-delta)/2", "description": "Root of cubic poly - principal stress.
", "templateType": "anything", "can_override": false}, "tauyz": {"name": "tauyz", "group": "Ungrouped variables", "definition": "random(-5..5)/10", "description": "Shear stress in $yz$ plane.
", "templateType": "anything", "can_override": false}, "sigmay": {"name": "sigmay", "group": "Ungrouped variables", "definition": "random(-16..17#3)/10", "description": "Normal stress in $y$ direction.
", "templateType": "anything", "can_override": false}, "sigmaz": {"name": "sigmaz", "group": "Ungrouped variables", "definition": "-siground((2*tauxy*tauyz*tauzx-sigmax*tauyz^2-sigmay*tauzx^2)/(sigmax*sigmay-tauxy^2),3)", "description": "Normal stress in $z$ direction
", "templateType": "anything", "can_override": false}, "I3": {"name": "I3", "group": "Ungrouped variables", "definition": "sigmax*sigmay*sigmaz+2*tauxy*tauyz*tauzx-sigmax*tauyz^2-sigmay*tauzx^2-sigmaz*tauxy^2", "description": "Third invariant.
", "templateType": "anything", "can_override": false}, "delta": {"name": "delta", "group": "Ungrouped variables", "definition": "sqrt(I1^2-4*I2)", "description": "Part of root solution.
", "templateType": "anything", "can_override": false}, "tauxy": {"name": "tauxy", "group": "Ungrouped variables", "definition": "random(-15..-5)/10", "description": "Shear stress in $xy$ plane.
", "templateType": "anything", "can_override": false}, "I2": {"name": "I2", "group": "Ungrouped variables", "definition": "sigmax*sigmay+sigmay*sigmaz+sigmaz*sigmax-tauzx^2-tauxy^2-tauyz^2", "description": "Second invariant.
", "templateType": "anything", "can_override": false}, "sigmamax": {"name": "sigmamax", "group": "Ungrouped variables", "definition": "if(lambda1<0,0,lambda1)", "description": "Maximum principal stress.
", "templateType": "anything", "can_override": false}, "I1": {"name": "I1", "group": "Ungrouped variables", "definition": "sigmax+sigmay+sigmaz", "description": "First invariant.
", "templateType": "anything", "can_override": false}, "sigmamiddle": {"name": "sigmamiddle", "group": "Ungrouped variables", "definition": "if(lambda1<0,lambda1,if(lambda2>0,lambda2,0))", "description": "Middle principal stress.
", "templateType": "anything", "can_override": false}, "sigmamin": {"name": "sigmamin", "group": "Ungrouped variables", "definition": "if(lambda2>0,0,lambda2)", "description": "Minimum principal stress.
", "templateType": "anything", "can_override": false}, "lambda1": {"name": "lambda1", "group": "Ungrouped variables", "definition": "(I1+delta)/2", "description": "Root of cubic poly - principal stress.
", "templateType": "anything", "can_override": false}, "sigmax": {"name": "sigmax", "group": "Ungrouped variables", "definition": "random(-17..16#3)/10", "description": "Normal stress in $x$ direction.
", "templateType": "anything", "can_override": false}, "tauzx": {"name": "tauzx", "group": "Ungrouped variables", "definition": "random(5..15)/10", "description": "Shear stress in $zx$ plane.
", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["sigmax", "sigmay", "sigmaz", "tauxy", "tauyz", "tauzx", "I1", "I2", "I3", "delta", "lambda1", "lambda2", "sigmamax", "sigmamin", "sigmamiddle"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "The stress at a particular point in a component has been calculated as:
\n\\[\\sigma=\\begin{pmatrix} \\var{sigmax} & \\var{tauxy} & \\var{tauzx} \\\\ \\var{tauxy} & \\var{sigmay} & \\var{tauyz} \\\\ \\var{tauzx} & \\var{tauyz} & \\var{sigmaz} \\end{pmatrix} \\text{[Units: MPa]}\\]
\nCalculate the invariants:
\nAssuming $I_3 \\approx 0$ and can be neglected, determine:
\n(The answer here should be close to zero.)
", "strictPrecision": false, "showPrecisionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "numberentry", "useCustomName": false, "customName": "", "marks": "1", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "sigmamax", "maxValue": "sigmamax", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "sigfig", "precision": "3", "precisionPartialCredit": "45", "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "numberentry", "useCustomName": false, "customName": "", "marks": "1", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "sigmamiddle", "maxValue": "sigmamiddle", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "sigfig", "precision": "3", "precisionPartialCredit": "45", "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "numberentry", "useCustomName": false, "customName": "", "marks": "1", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "sigmamin", "maxValue": "sigmamin", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "sigfig", "precision": "3", "precisionPartialCredit": "45", "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always", "contributors": [{"name": "Francis Franklin", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1887/"}]}]}], "contributors": [{"name": "Francis Franklin", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1887/"}]}