


{"id":377516,"date":"2024-08-07T09:42:38","date_gmt":"2024-08-07T09:42:38","guid":{"rendered":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/geometry-nonlinear-fem-iteration-process-how-to-compute-internal-force\/"},"modified":"2024-08-08T08:43:12","modified_gmt":"2024-08-08T08:43:12","slug":"geometry-nonlinear-fem-iteration-process-how-to-compute-internal-force","status":"publish","type":"topic","link":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/geometry-nonlinear-fem-iteration-process-how-to-compute-internal-force\/","title":{"rendered":"Geometry nonlinear FEM iteration process ( How to compute internal force?)"},"content":{"rendered":"<div class=\"flex-shrink-0 flex flex-col relative items-end\">\n<div>\n<div class=\"pt-0\">\n<div class=\"gizmo-bot-avatar flex h-8 w-8 items-center justify-center overflow-hidden rounded-full\">&nbsp;<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"group\/conversation-turn relative flex w-full min-w-0 flex-col agent-turn\">\n<div class=\"flex-col gap-1 md:gap-3\">\n<div class=\"flex max-w-full flex-col flex-grow\">\n<div class=\"min-h-[20px] text-message flex w-full flex-col items-end gap-2 whitespace-pre-wrap break-words [.text-message+&amp;]:mt-5 overflow-x-auto\" dir=\"auto\" data-message-author-role=\"assistant\" data-message-id=\"96b1e2b8-24b5-4007-bf57-207e770658e5\">\n<div class=\"flex w-full flex-col gap-1 empty:hidden first:pt-[3px]\">\n<div class=\"markdown prose w-full break-words dark:prose-invert light\">\n<hr>\n<p>&nbsp;<\/p>\n<p>Hello everyone,<\/p>\n<p>I am working on implementing a nonlinear finite element analysis (FEA) code in MATLAB. I have verified that my linear analysis results are accurate and that the initial displacement values match perfectly with those from ANSYS. However, when I proceed to compute internal forces and perform iterations for the nonlinear analysis, I am encountering issues where the residuals do not decrease and the iteration process diverges.<\/p>\n<p>Here&#8217;s a summary of my approach and where I suspect the issue might be:<\/p>\n<ul>\n<li>\n<p>Nonlinear Analysis Process:<\/p>\n<ul>\n<li>In each iteration, I update the global stiffness matrix by adding the stress stiffness matrix <span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord\"><span class=\"mord mathbf\">S<\/span><span class=\"msupsub\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mathnormal mtight\">i<\/span><\/span><\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span>.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723024445-mceclip1.png\" data-wpel-link=\"internal\"><img decoding=\"async\" src=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723024445-mceclip1.png\"><\/a><\/p>\n<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723023918-mceclip0.png\"><img decoding=\"async\" src=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723023918-mceclip0.png\"><\/a><\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>I compute <span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord\"><span class=\"mord mathbf\">S<\/span><span class=\"msupsub\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mathnormal mtight\">i<\/span><\/span><\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span> using the Cauchy stress tensor &nbsp;in the global cartesian system and then use it to determine the local coordinate system&#8217;s Cauchy stress vector.( By mltiplying Rotation matrix\/ value doesn&#8217;t changed a lot)<\/li>\n<li>The strain-displacement matrix<span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathbf\">B<\/span><\/span><\/span><\/span> is used for linear stiffness matrix calculations, which I believe is correctly implemented as it matches with linear analysis results.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathbf\">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723023993-mceclip1.png\"><img decoding=\"async\" src=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723023993-mceclip1.png\"><\/a><\/span><\/span><\/span><\/span><\/p>\n<p><span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathbf\">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723024426-mceclip0.png\" data-wpel-link=\"internal\"><img decoding=\"async\" src=\"https:\/\/innovationspace.ansys.com\/forum\/wp-content\/uploads\/sites\/2\/2024\/08\/07-08-2024-1723024426-mceclip0.png\"><\/a><\/span><\/span><\/span><\/span><\/p>\n<p>&nbsp;<\/p>\n<p>The issue is that the newton raphson restoring force(internal force) <span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord\"><span class=\"mord mathbf\">F<\/span><span class=\"msupsub\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mtight\"><span class=\"mord mathnormal mtight\">n<\/span><span class=\"mord mathnormal mtight\">r<\/span><\/span><\/span><\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span> become excessively large, causing the iterations to diverge.<\/p>\n<p>I have ensured that the strain-displacement matrix <span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathbf\">B<\/span><\/span><\/span><\/span> is used correctly and consistently, as it is crucial for calculating the linear stiffness matrix.<\/p>\n<p>&nbsp;<\/p>\n<p>When computing the internal forces, I average the strains at Gaussian points and multiply them by the&nbsp; <span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathbf\">D to get cauchy stress tensor. <\/span><\/span><\/span><\/span>Since the only new value I am calculating is the Cauchy stress tensor, I suspect that this might be the source of the problem.&nbsp; &nbsp;<\/p>\n<p>Given the above, is there a common pitfall or error in the approach of incorporating the stress stiffness matrix <span class=\"katex\"><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord\"><span class=\"mord mathbf\">S<\/span><span class=\"msupsub\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mathnormal mtight\">i<\/span><\/span><\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span> into the global stiffness matrix that could cause divergence?<\/p>\n<p>&nbsp;<\/p>\n<p>Any insights or suggestions to help resolve this issue would be greatly appreciated.<\/p>\n<p>Thank you in advance for your assistance<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"template":"","class_list":["post-377516","topic","type-topic","status-publish","hentry","topic-tag-fem","topic-tag-material-nonlinearity-1","topic-tag-newton-raphson-residuals"],"aioseo_notices":[],"acf":[],"custom_fields":[{"0":{"_bbp_subscription":["80516","13386"],"_bbp_author_ip":["166.104.168.157"]," _bbp_last_reply_id":["0"]," _bbp_likes_count":["0"],"_btv_view_count":["400"],"_bbp_topic_status":["unanswered"],"_edit_lock":["1723106489:80516"],"_bbp_topic_id":["377516"],"_bbp_forum_id":["27791"],"_bbp_engagement":["13386","80516"],"_bbp_voice_count":["2"],"_bbp_reply_count":["3"],"_bbp_last_reply_id":["379270"],"_bbp_last_active_id":["379270"],"_bbp_last_active_time":["2024-08-16 12:30:56"]},"test":"dhjang4522gmail-com"}],"_links":{"self":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/377516","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics"}],"about":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":3,"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/377516\/revisions"}],"predecessor-version":[{"id":377663,"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/377516\/revisions\/377663"}],"wp:attachment":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/media?parent=377516"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}