در این آموزش شما با دلایل بکارگیری سابروتین نویسی در آباکوس، ضرورت برنامه نویسی در آباکوس، نحوه کد نویسی در آباکوس، اجزای اصلی سابروتین در آباکوس و برخی سابروتین های معروف و پرکاربرد در آباکوس آشنا خواهید شد.
سرفصلهای این آموزش:
- دلایل بکارگیری سابروتین نویسی در آباکوس
- ضرورت برنامه نویسی در آباکوس
- مروری بر کد نویسی در آباکوس
- اجزای اصلی سابروتین در آباکوس
- برخی سابروتین های معروف و پرکاربرد در آباکوس
- مکان قرارگیری سابروتین در Abaqus/Standard
- ملزومات بکارگیری سابروتین در آباکوس
- نحوه لینک کردن Abaqus و Fortran
- بهروزرسانی: این آموزش در تاریخ 26 آذر 95 بهروز شد.
- بهروزرسانی: این آموزش در تاریخ 28 آبان 95 بهروز شد.
سابروتین چیست و دلایل بکارگیری سابروتین نویسی در آباکوس
قطعاً شما همراهان گرامی، در مجموعه پستهای معرفی و آموزش آباکوس و همچنین مجموعه مثالهای کاربردی آباکوس با گوشهای از تواناییها و قابلیتهای بینظیر Abaqus در حوزه شبیهسازی اجزای محدود آشنا شدهاید و میدانید که سابروتین نویسی در آباکوس یکی از ویژگیهای برجسته این نرمافزار است. طیف مسائل پوشش داده شده در کنار رابط کاربری ساده و قابل درک، آباکوس را به گزینهای بسیار جدی برای کاربران دنیای حل عددی مبدل ساخته است. اما تا کنون با خود اندیشیدهاید که آیا گزینههای پیشفرض موجود در آباکوس توانایی پاسخگویی به تمام نیازهای جدید کاربران را دارد؟ در جهانی که سرعت پیشرفت علم و ارائه مدلهای عددی و معادلات ساختاری توصیف رفتار ماده سرعت روزافزونی پیدا کرده است، نرمافزارهایی نظیر آباکوس چه راه حلی برای پاسخگویی به نیازهای بهروز محققین اتخاذ کردهاند؟
صرف میلیونها دلار هزینه در بحث تحقیق و توسعه و بروز نگاه داشتن هسته حل معادلات، استفاده از المانهای جدید با فرمولبندی خاص و منحصربفرد، توسعه مدلهای جدید ماده، افزودن حوزههای کاری و قابلیتهای شبیهسازی جدید و . . . تنها بخشی از نقشه راهی است که برای حضور در کورس رقابت در دنیای پرشتاب علمی قرن 21 باید بکار گرفت. اما آیا آباکوس نیز در این حوزه موفق بوده است؟
ضرورت برنامه نویسی در آباکوس
شاید با خواندن مقدمه فوق اندکی دقیقتر به قابلیتهای آباکوس نگاه کرده باشید. تمامی نرمافزارهایی که با آن آشنایی دارید از مجموعه قابلیتهای پیشفرضی برخوردارند که توسعه دهنده اصلی، برای پاسخگویی به بیش از 80 درصد از نیازهای کاربران در نرمافزار تعبیه کرده است. اما آیا تمامی مسائل موجود در حوزه علم و صنعت به کمک این ابزارهای پیشفرض قابل مدل سازی و بررسی هستند؟ متأسفانه پاسخ این پرسش منفی است.
اگر از کاربران پیشرفته و سطح بالای آباکوس هستید، میدانید که توسعه و بکارگیری مدلها، معادلات ساختاری، المانها و حتی بارگذاریهای خاص بهکمک گزینههای پیشفرض تعبیه شده در آباکوس امکانپذیر نیست؛ اما اگر از راهکارهای جایگزین گروه داسو سیستمز اطلاع داشته باشید، بیش از پیش این شاهکار دنیای محاسبات و مهندسی را تحسین خواهید کرد.
آباکوس در کنار تمامی امکانات و گزینههای ریز و درشت پیشفرض، این قابلیت را در اختیار کاربران علاقمند قرار داده تا بتوانند به کمک برنامهنویسی در محیط نرمافزار فرترن – FORTRAN (که پایه و اساس نرمافزارهای بزرگ محاسباتی همچون آباکوس است) نیازهای خود در بالاترین سطوح علمی، پژوهشی و صنعتی را مرتفع سازند. فقط کافیست بر اصول و قواعد اجزای محدود و برنامهنویسی به زبان فرترن تسلط داشته باشید تا هرگونه محدودیتی را دور بزنید و لذت وصفناپذیر توسعه یک حل عددی را تجربه کنید.
با توجه به درخواست شما عزیزان و همراهان گرامی، تصمیم گرفتیم تا در این پست آموزشی به معرفی اصول، قواعد و کاربردهای سابروتین نویسی در آباکوس بپردازیم و شما عزیزان را با معروفترین گزینههای سابروتین نویسی در آباکوس اشنا کنیم. با ما در این آموزش آباکوس نیز همراه باشید.
مروری بر کد نویسی در آباکوس (سابروتین نویسی در آباکوس)
اگر Documentation آباکوس را از نظر گذرانده باشید، بهخوبی میدانید که بخشهای مختلفی در این راهنمای بینظیر در اختیار شما قرار دارد. معرفی ابزارهای موجود، مسیر بکارگیری و اهداف استفاده از ابزار، آشنایی با تئوریهای بکارگرفته شده در توسعه یک روش، مجموعه مثالهای استاندارد و . . . از مهمترین و پرکاربردترین بخشهایی است که اکثر کاربران آباکوس از آن بهره می برند. اما شاید شما نیز هیچگاه از گزینه Abaqus User Subroutines Reference Guide استفاده نکرده باشید. اکنون وقت آن رسیده تا به کمی کنکاش و واکاوی در این بخش از راهنمای آباکوس نیز بپردازید: سابروتین نویسی در آباکوس!
تذکر: در پست آموزشی “اسکریپت نویسی در آباکوس” بصورت مجزا به بحث کد نویسی Python در آباکوس پرداخته شده است. در صورت نیاز به پست مربوطه مراجعه فرمایید.
کافیست بر روی این گزینه کلیک کنید تا به دنیای بینظیر و جذاب آموزش سابروتین نویسی در آباکوس وارد شوید. آباکوس بر حسب اینکه قصد دارید از کدام حلگر استفاده کنید، راهنمای مربوط به این بخش را در سه دسته مجزا قرار داده است:
-
- Abaqus/Standard Subroutines
-
- Abaqus/Explicit Subroutines
- Abaqus/CFD Subroutines
در واقع این راهنما به شما تأکید میکند پیش از شروع به کدنویسی برای مسئله خود، ماهیت حل و انتخاب حلگر مناسب را تعیین کنید و متناسب با نوع مسئله خود، به انتخاب و توسعه کد مورد نظر بپردازید.
اجزای اصلی سابروتین در آباکوس
پس از تعیین نوع حلگر و تصمیم به استفاده از سابروتین در آباکوس، باید به شناخت کد مورد نظر بپردازید. در ابتدا به شما توصیه میکنم کدنویسی را بهعنوان آخرین گزینه در حل یک مسئله در نظر داشته باشید؛ بهعبارت بهتر چنانچه گزینههای پیشفرض تعبیه شده در آباکوس جوابگوی نیازهای شماست، به سراغ کدنویسی نروید!
پس از اینکه فراخور مسئله و هدف مورد نیازتان تشخیص دادید که باید از چه سابروتین یا زیربرنامهای در آباکوس استفاده کنید، از طریق راهنمای نرمافزار به کسب اطلاعات در خصوص آن بپردازید.
کاری که شما قصد انجام آن را دارید به دقت نسبتاً بالایی نیازمند است؛ فقط کافیست تصور کنید برای یک لحظه کوتاه و البته به شکل ممتد و پیوسته، کنترل این غول محاسباتی را در دست گرفتهاید و فرمان مورد نظر خود را به آن صادر میکنید، محاسبات مربوطه را انجام میدهید و حاصل کار را برای ادامه حل به آباکوس وارد میکنید؛ در واقع شما واسطهای در حل شدهاید: در میانه راه کنترل را در دست گرفته و پس از انجام محاسبات مورد نظر مجدداً آباکوس را وارد میدان میکنید. ناگفته پیداست که تمرکز و تسلط بالا و اجتناب از کوچکترین خطای دستوری و برنامهنویسی، شرط اول در استفاده از یک سابروتین در آباکوس است.
پس از انتخاب سابروتین مورد نظر در راهنمای نرمافزار باید به شناخت ارکان اصلی کد بپردازید: هر سابروتین در آباکوس از مجموعهای از متغیرها و پارامترها تشکیل شده که در یک قالب خاص و از پیش تعیین شده باید نوشته شود. در واقع دو رکن اصلی هر سابروتین قالب یا Interface مربوطه و پارامترهای مورد استفاده در آن است. بهعنوان مثال، در شکل زیر قالب مربوط به UMAT (سابروتین مربوط به تعریف خواص و رفتار ماده در آباکوس) را مشاهده میکنید( برای آشنایی بیشتر با این سابروتین به آموزش مربوطه مراجعه کنید؛ اینجا: سابروتین رفتار ماده (UMAT ) در آباکوس).
همانطور که در این قالب نیز مشخص شده است، شما باید از مجموعه متغیرهای استاندارد و شناخته شده برای آباکوس در کدنویسی خود استفاده کنید. البته آباکوس این امکان را به شما داده است تا در صورت نیاز و از طریق متغیرهای حالت، بتوانید به رفع نیازهای خود بپردازید. بدیهی است هر کدام از متغیرهای موجود در یک سابروتین مفهوم و معنای منحصربفردی داشته و باید از یک الگوی منظم در محاسبه و آپدیت شدن پیروی کند.
برخی سابروتین های معروف و پرکاربرد در آباکوس
حال که با کلیات، اهداف و قالب یک سابروتین آشنا شدهاید، چند سابروتین معروف و پراستفاده در آباکوس را به شما معرفی خواهیم کرد:
سابروتین CREEP
سابروتین مورد استفاده برای تحلیلهای وابسته به دما، تغییر شکل ویسکوپلاستیک در ماده.
سابروتین DLOAD
سابروتین مناسب برای تعریف بارگذاری و توزیع بار غیریکنواخت در آباکوس (فشار و بار حجمی).
سابروتین FRIC
چنانچه از مدلهای پیچیده و پیشرفته در تعیین نیروی برشی بین سطوح گوناگون و رفتار اصطکاکی ماده در تحلیل خود استفاده میکنید، این سابروتین به شما کمک خواهد کرد.
سابروتین HETVAL
سابروتین مورد استفاده در تعریف مدلهای پیچیده در تولید حرارت داخلی در ماده.
سابروتین UEL
از پیشرفتهترین و در عین حال پیچیدهترین سابروتینهای مورد استفاده در Abaqus/Standard است که برای تعریف و ایجاد کردن یک المان خاص بکار میرود. استفاده از این سابروتین به دانش و تخصص بسیار بالایی نیاز دارد.
سابروتین UGENS
از این سابروتین در تعریف رفتار غیرخطی پیچیده مکانیکی در المانهای پوستهای بر اساس Stiffness سطح مقطع استفاده میشود.
سابروتین UMAT
این سابروتین برای تعریف رفتار ماده و معادلات ساختاری مورد نظر برای ماده مورد استفاده قرار میگیرد. UMAT از پیشرفتهترین و پیچیدهترین سابروتینهایی است که یک کاربر میتواند در تحلیل خود از آن استفاده کند. تسلط بر این زیربرنامه در گرو فراگیری مباحث مکانیک محیطهای پیوسته، ریاضیات، جبر تانسوری، پلاستیسیته و پلاستیسیته محاسباتی در بالاترین سطح آکادمیک است.
مکان قرارگیری سابروتین در Abaqus/Standard
هرچند شناخت کامل و درک عمیق از ساختار Abaqus، لازمه توسعه و استفاده از یک سابروتین نیست اما چنانچه شما بهعنوان یک توسعهدهنده، از ساختار و محتوای اصلی حل یک مسئله در آباکوس اطلاع داشته باشید، دید بسیار خوبی در خصوص سابروتین نیز پیدا خواهید کرد. در این قسمت روند کلی حل یک مسئله در آباکوس را در قالب یک فلوچارت از نظر خواهیم گذراند و مکان قرارگیری سابروتینهای مورد استفاده در آباکوس را به شما نشان خواهیم داد. شکل زیر روند پایه در استخراج داده و حل یک مسئله در Abaqus/standard را به شما نشان میدهد.
همانطور که ملاحظه میکنید هر یک از سابروتینهایی که در آباکوس مورد استفاده قرار میگیرد (با فونت قرمز مشخص شدهاند)، در مرحله خاصی از حل وارد عمل شده و پس از ایفای نقش خود، ادامه روند حل را به هسته اصلی آباکوس واگذار میکنند. حال اگر بهدنبال فهم دقیقتر و با جزئیات بیشتر از روند حل و بکارگیری سابروتین دارید، به شما توصیه میکنم فلوچارت زیر را با دقت واکاوی کنید:
ملزومات بکارگیری سابروتین در آباکوس
برای استفاده و بهرهمندی از زیربرنامه یا سابروتین در آباکوس نیاز دارید تا زبان برنامهنویسی فرترن (FORTRAN) را با Abaqus لینک کنید. برای این منظور بر حسب نسخه مورد استفاده آباکوس، باید در گام اول به نصب Microsoft Visual Studio بهعنوان بستر لازم جهت اجرا و شناخت زبانهای گوناگون برنامهنویسی بپردازید. سپس در ادامه، باید کامپایلر فرترن سازگار با نسخه آباکوس مورد نظر را دانلود کرده و نصب نمایید. با انجام این کار قادر خواهید بود تا کد مورد نظر را با رعایت قوانین برنامهنویسی فرترن در محیط ویژوال استودیو توسعه دهید و از کامپایلر زبان فرترن برای اجرای آن استفاده نمایید.
پس از نصب ویژوال استودیو و کامپایلر زبان فرترن باید توسط دستوراتی ساده ( و گاهاً پیچیده!) آباکوس را با فرترن لینک نمایید. با توجه به تخصصی بودن موضوع، سعی خواهم کرد در پستی جداگانه و در زمان مناسب، نحوه لینک کردن آباکوس و فرترن را به شما عزیزان آموزش دهم. عملاً با برقراری ارتباط بین این دو نرمافزار قادر خواهید بود کار مربوط به سابروتین نویسی در آباکوس را آغاز نمایید.
لینک کردن آباکوس و فرترن
در آموزشی جداگانه نحوه لینک کردن آباکوس 2017 با فرترن ارئه شد. شایان ذکر است که دستورالعمل موجود برای لینک کردن آباکوس 2016 با فرترن (Fortran) نیز قابل استفاده است و تفاوتی وجود ندارد. جهت مطالعه آموزش مربوطه روی لینک روبه رو کلیک کنید ⇐ لینک آباکوس و فرترن
م. ح
سلام
من برای مدل کردن انبساط در اباکوس از دو سابروتین uexpan و usdfld استفاده کردم. سابروتین usdfld رو قبل از uexpan آوردم. مشکل اینجاست که مدل کاملا ران میشه بدون هیچ وارنینگ و اروری.. ولی اباکوس اصلا سابروتین usdfld رو نمیخونه فقط uexpan رو میخونه و رو مدل پیاده میکنه. در اباکوس depvar رو هم اوردم…. مشکل از کجاست؟
یونس سروری(مدیر CAE)
سلام
در تعریف متریال، گزینه user defined field را انتخاب کردهاید؟
م.ح
در سابروتین field تعریف نکردم که بخوام تو آباکوس این گزینه رو انتخاب کنم. با این حال user defined field رو هم انتخاب کردم ولی نتیجه نداد.
م.ح
اصلا به درست یا غلط بودن جواب کاری ندارم فقط میخوام بدونم دلیلش چیه که سابروتین رو نمیخونه..چون هم در سابروتین uexpan و هم usdfld یه خط کد نوشتم که فایل تکست رو در جایی سیو کنه برای uexpan فایل تکست میسازه ولی برای usdfld نه…. از یه فیلمی یک مثال آماده usdfld همراه با سابروتین خودش ران گرفتم کاملا جواب ها با فیلم یکی بود و فایل تکست هم میساخت ولی برای مدل و کد خودم نمیدونم چرا اینجوری میشه.
یونس سروری(مدیر CAE)
وقتی در سابروتین field تعریف نشده چرا باید از USDFLD استفاده بشه؟!
یونس سروری(مدیر CAE)
نظری ندارم
حمید
سلام
وقت بخیر جناب مهندس
یه کد نوشتم متشکل از دو سابروتین، umat و sdvini
از sdvini برای صفر کردن statevariabel ها در اولین گام استفاده کردم
مدل مورد مطالعه دو استپ دارد
سوال؟
آیا در ابتدای هر دو استپ متغیرهای وضعیت صفر میشود؟
چکار کنم که فقط در ابتدای استپ اول، متغییرهای وضعیت صفر شود؟
یونس سروری(مدیر CAE)
سلام
خیلی ساده در خارج حلقه مقداردهی کنید
حمید
ممنون از پاسختون
ولی جواب نگرفتم
ببینید، در استپ اول و اولین اینکریمنت، سابروتین sdvini که متغییر های وضعیت را مقداردهی اولیه میکند، فراخوانی میشود، و سپس umat فراخوانی میگردد.
در استپ دوم و اینکریمنت اول، باز هم سابروتین sdvini فر اخوانی میشود و مقادیر statevariable هایی که از استپ قبل و در قالب سابروتین umat مقادیر جدیدی گرفته اند، دوباره برابر مقادیر اولیه قرار میدهد
***من در سابروتین umat سابروتین sdvini رو فراخوانی نمیکنم، sdvini یک سابروتین مستقل فرض شده و جزو سابروتین های پیش فرض اباکوس است.
یونس سروری(مدیر CAE)
بله، میدونم پیش فرضه
من راهکار دوم را عرض کردم
محمد
سلام وقت شما بخیر
من از سابروتین usdfld استفاده کردم. هم depvar هم user defined field معرفی کردم. در قسمت جاب هم فراخوانی کردم . مدل کاملا ران شد و نتایج خوبی هم داد و در مقایسه با حالت معمولی و بدون استفاده از سابروتین جواب ها کاملا متفاوت بود و این یعنی سابروتین درست کار کرده بود ولی مشکل اینجاست که در visualizaion اصلا استیت وریبل هایی که در کد معرفی کردم رو نشون رو نمیاره . ممنون میشم راهنمایی کنید
یونس سروری(مدیر CAE)
سلام
متغیرها را آپدیت میکنید؟
م.ح
سلام. من برای مدل کردن انبساط از دو کد usdfld و uexpan استفاده کردم. برای مدول الاستیسیته و concrete damage plasticity فیلد تعریف کردم و میخوام مقادیرشونو کاهش بدم.
دارم مقاله رو صحت سنجی میکنم. تو مقاله در یک کرنش هایی که در واقع انبساط نمونه استوانه ای بتن هستند گفته شده که مدول الاستیسته و مقاومت فشاری و کششی چند درصد کاهش پیدا میکنه.
فیلد رو در سابروتین به عنوان تابعی از زمان گرفتم ( 0.005*(2)TIME ).
در آباکوس هم برای مدول الاستیسته به ترتیب اعداد 0 و 0.0005 و 0.0025 و 0.001 رو گذاشتم و مقادیر الاستیسته رو به صوت کاهشی روبروش وارد کردم
و برای compressive behavior و tensile هم در قسمت فیلد یک ستون رو گذاشتم صفر. بعد روبروش مقادیر مقاومت فشاری که از اکسل مندر گرفتم رو گذاشتم برای کششی هم همینطور, در ادامش عدد 0.0005 رو گذاشتم و دوباره مقادیر مقاومت فشاری رو وارد کردم و همینطور تا 0.001. که در سابروتین فیلد مثلا به عدد 0.0005 رسید اعداد مربوط به مقاومت فشاری و کششی رو که به صورت ستونی وارد کردیم بخونه.
ولی وقتی نتایج رو دیدم متوجه شدم که آباکوس اصلا فیلد رو برای concrete damage plasticity اعمال نمیکنه فقط برای کاهش مدول الاستیسیته اعمال میکنه. نمیدونم طریقه فیلد تعریف کردنم برای concrete damage plasticity درست بوده یا نه.
یونس سروری(مدیر CAE)
سلام
اطلاعی ندارم
حمید
سلام جناب مهندس
وقت بخیر
ممنون میشم کمک کنید تو حل این مشکل
موقع خروجی گرفتن از state variable ها در کد یومت، اباکوس این ارور رو میده!
The selected primary variable is not available in the current frame for any elements in the current display group
چطور میشه این مشکل رو حل کرد؟
یونس سروری(مدیر CAE)
سلام
واضحه؛ متغیری که شما میخواهید خروجی بگیرید برای المانها در این استپ ساپورت نمیشه
اگر از چند استپ استفاده میکنید میتونید به استپهای دیگه برید و ببینید مشکل حل میشه یا خیر
حمید
سلام
ممنون از پاسختون
فقط یک استپ دارم.
در این شرایط برخی از state variable ها نمایش داده میشن، ولی برای برخی ارور بالا رو میده.
یونس سروری(مدیر CAE)
عرض کردم خدمتتون
متغیری که مد نظر شماست برای المانها در این استپ ساپورت نمیشه
مهندس
سلام. وقتتون بخیر
آیا می توان از سابروتین USDFLD و UMAT به طور همزمان استفاده کرد؟
من در USDFLD مشخصات مصالح رو با توجه به فیلد تغییر دادم. علاوه بر این میخوام جهت تنش های اصلی رو بدست بیارم. در UMAT با دستور SPRIND میشه اینکار رو کرد. برای جلوگیری از پیچیده شدن آیا میشه UMAT رو در کنار USDFLD استفاده کرد؟ یعنی من تغییر مشخصات مصالح رو با USDFLD انجام بدم و جهت تنش ها رو با UMAT.
یونس سروری(مدیر CAE)
سلام
مشکلی نداره
امین پورکاوه
سلام،
من قصد دارم مدل مواد جانسون کوک که در خود اباکوس هست رو با سابروتین بهبود بدم و Kinematic Hardening رو بهش اضافه کنم.
ابتدا میخواستم بدونم کد مدل جانسون کوک در UMAT یا VUMAT موجود یا قابل دسترس هست یا باید از ابتدا خودم بنویسم. سوال بعدم اینه که برای این هدف بهتر است از کدام سابروتین استفاده کنم UMAT ،UHARD یا اینکه VUMAT. پیشاپیش ممنون از توجه و زحمات شما.
یونس سروری(مدیر CAE)
سلام
باید خودتون بنویسید
انتخاب umat و vumat به صورت مسئله شما بستگی داره؛ اگر مسئله استاتیکی باشه باید umat بنویسید و اگر دینامیک باشه vumat
پردیس
سلام آقای مهندس وقتتون بخیر
من مدل سازی با آباکوس انجام دادم و میخواهم خروجی آباکوس را وارد یک برنامه کنم تا روی داده های آن با الگوریتم بهینه سازی کار کنم
به نظر شما این کار فقط با لینک آباکوس و فرترن امکان پذیر است یا اینکه با کد نویسی درون خود آباکوس هم امکان این کار وجود دارد؟
یونس سروری(مدیر CAE)
سلام
میتونید با اسکریپت پایتون به هر شکل دلخواهی که دوست دارید خروجی بگیرید؛ نیازی به لینک کردن اباکوس و فرترن نیست
یک راه ساده تر هم اینه که از طریق گزینه report در منوی اصلی ماژول Visualization کار را پیش ببریدریال قدرت انتخاب هم دست شماست، در نقاط انتگرالگیری، المان، نود و هر جایی که دوست دارید خروجی دلخواهتون را بگیرید
محسن
با سلام
من می خواهم یک ماده پلیمری را روش دو شبکه موازی (Parallel rheological framework) که برای مثال در یکی از روش neo-Hookean و در دیگری از رفتار الاستیک استفاده کنم که در نهایت برای بدست اوردن تنش نهایی تنش های این دو شبکه با هم جمع می شوند. برای انجام این مدلینگ ماژول تعریف شده ای در اباکوس وجود دارد و یا باید از سابروتین استفاده کنم؟ در صورت استفاده از سابروتین پیشنهاد شما کدام سابروتین است؟
با تشکر
یونس سروری(مدیر CAE)
سلام
میتونید لینک زیر را مطالعه کنید:
https://bit.ly/34OYR7H
reza.ahmadi@outlook.com
اگر بخواهیم یک ورق بعد از هر مرحله فورمینگ در راستای یک منحنی حرکت کند و مجددا فورمیگ انجام شود این شرایط مرزی رو چطور باید تعریف کنیم؟یعنی به جای x,y,z مسیر حرکت در راستای یک منحنی و به صورت استپ به استپ باشد
یونس سروری(مدیر CAE)
میتونید در چند تحلیل مجزا اینکار را پیش ببرید
اسداله زاده
با عرض سلام و ادب. امیدوارم خوب و سلامت باشید.
من می خواهم که با استفاده از سابروتین UMAT کدی را بنویسم که پس از هر step ماتریس DDSDDE را آپدیت کند. امکان این کار وجود دارد؟ و اگر بله، شما راهنمایی برای بنده دارید؟
با احترام
یونس سروری(مدیر CAE)
سلام
شما در UMAT مجبور به آپدیت کردن این ماتریس هستید
اسداله زاده
با عرض سلام مجدد و سپاس از پاسخگویی جنابعالی.
با اجازه ی شما من کمی بیشتر توضیح می دهم.
من برای هر درایه از ماتریس DDSDDE به جای یک عدد، یک ماتریس دارم.
همچنین برای هر درایه از بردار کرنش هم به جای یک عدد، یک بردار دارم.
آیا این امکان وجود دارد که تحلیل در هر step با اطلاعات جدید من انجام شود؟
با احترام
یونس سروری(مدیر CAE)
سلام
اگر بتونید ارتباط بین درایه ها و بردار را کدنویسی کنید مشکلی نداره
علی
سلام .
برای شبیه سازی کامپوزیت های پلیمری بخصوص شبیه سازی رزین و الیاف مختلف از کدام سابروتین باید استفاده کرد ؟
یونس سروری(مدیر CAE)
سلام
برای شبیه سازی رفتار مواد باید umat/vumat بنویسید