loading...

درباره نویسنده

یونس سروری

کارشناس ارشد مکانیک دانشگاه صنعتی اصفهان - مدیر بخش شبیه سازی و اجزا محدود - رزومه

احتمالا مایل به بررسی این مطالب نیز هستید

113 نظر

  1. 1

    امیرحسین

    سلام .من دانشجوی کارشناسی هستم پروژه من درباره ضربه در کامپزیت است که باید تو اباکوس مدل کنم .و معیار شکست را باید کد نویسی کنم خواهشا کتاب یا مرجع کاملی درباره umat و vumat نویسی معرفی کند هر سایتی سر زدم خیلی مختصر توضیح داده

    پاسخ
    1. 1.1

      یونس سروری

      درود بر شما
      شاید بتونم بگم اصول UMAT، VUMAT و به شکل کلی کدنویسی چیزی فراتر از توضیحات راهنمای آباکوس نیست. اون چیزی که که کار را سخت میکنه لزوم تسلط بر تئوریهای پلاستیسیته، مکانیک شکست، روابط و مباحث تانسوری است.
      امیرحسین عزیز، شما باید تئوریهای مورد نظر را در قالب یک فایل فرترن قابل فهم برای آباکوس دربیارید. این قابل فهم بودن ایجاب میکنه که پارامترها به خوبی شناخته شده باشن و بعد شما بتونید، فرمولها، روابط و . . را در اون قالب قرار بدید.
      در نتیجه شما هیچ مطلب بیشتری پیدا نخواهید کرد در خصوص UMAT. مهم روابطه. روی اون بخش تمرکز کنید.
      پاینده باشید

      پاسخ
  2. 2

    مکانیک -طراحی کاربردی

    با سلام و خسته نباشید
    اقای سروری من کد vumat رو در محیط ویژوال استودیو نوشتم و با فرمت.f90 سیو کردم. برای فراخوانی و استفاده از کد در اباکوس (در قسمت job/General/User subroutine file) یابد یه چه شکلی ادرس رو وارد کنم؟ آیا فرمت .f90 که فایل به این فرمت ذخیره شده، فرمت مناسبی است؟ منظورتون از فرمت .for چی هستش؟ چون همچین فرمتی رو در قسمت ذخیره کد مشاهده نکردم…
    ممنونم

    پاسخ
    1. 2.1

      یونس سروری

      درود بر شما
      مسیر کامل فایل مورد نظر باید وارد بشه (مثلا C:\desktop\umat.for)
      فرمت فایل باید for. باشه، شما حتی میتونید کد را در یک نرم افزار ویرایش متن مثل notepad بنویسید (البته به شرط رعایت قواعد ساختاری زبان فرترن) و بعد از ذخیره سازی با هر فرمت دلخواه، به شکل دستی فرمت را به for. تغییر بدهید

      موفق باشید. . .

      پاسخ
  3. 3

    مکانیک -طراحی کاربردی

    ممنونم اقای مهندس.
    این کار رو انجام دادم و با error زیر در قسمت job اباکوس روبرو شدم. ممنون میشم راهنمایی بفرمایید.
    با چه روشی میتونم مطمئن بشم که خطا از نوع دستورات به کار رفته در کد umat هست یا از نحوه ی لینک شدن با اباکوس؟؟
    سپاسگزارم
    problem during compilation – C:\umat.for

    پاسخ
    1. 3.1

      یونس سروری

      Abaqus Verification را اجرا کنید و اجازه بدهید که روند کامل بشه، بعد فایل verify.log ایجاد شده در پوشه پیش‎فرض آباکوس را باز کنید، باید پیغام PASS…. را در موارد موجود مشاهده کنید
      اگر لینک بدرستی برقرار نشده باشه، پیغام ERROR… نمایش داده میشه

      پاسخ
      1. 3.1.1

        رویا

        سلام.خسته نباشید
        آقای مهندس من هم با این ارور مواجه میشم، تو verify.log هم پیغام pass… نمایش داده میشه. الان مشکل از کجاس؟تو کامپایل کردنش مشکل وجود داره؟ اگه آره میشه لطفا بفرمایین چطوری حلش کنم؟ خیلی متشکرم

        پاسخ
        1. 3.1.1.1

          یونس سروری

          عرض کردم
          ممکنه مشکل در عدم تطبیق بین نسخه فرترن و آباکوس باشه
          سرچ کنید تا از نسخه های منطبق با هم مطلع بشید

  4. 4

    مکانیک -طراحی کاربردی

    خیلی ممنونم از پاسخ دادن سریع شما.
    اقای مهندس من abaqus verification رو تا مشاهده پیغام verification procedure complete ادامه دادم ولی در پوشه verify (verify.log رو پیدا نکردم متاسفانه) پوشه هایی به نام fortran-make یا cpp-make که دارای فایل تکست هم بودن رو باز کردم و با پیغام زیر مواجه شدم
    Abaqus Error: Unable to locate compiler! Please verify your PATH settings and/or refer to Abaqus answer 4302. – [Errno 2] ifort
    The Abaqus Make execution procedure exited with errors

    پاسخ
    1. 4.1

      یونس سروری

      بنده نگفتم پوشه verify
      عرض کردم پوشه پیش فرض فایلهای آباکوس ( مثلا C:\temp)

      پاسخ
  5. 5

    مکانیک -طراحی کاربردی

    اگر امکان داره میتونید ادرس دقیق تری برای پیدا کردن verify.log جهت مطمئن شدن از وجود پیغام pass… لطف بفرمایید؟ ممنونم

    پاسخ
  6. 6

    مکانیک -طراحی کاربردی

    فایل رو پیدا کردم اقای مهندس. این ارور نوشته شده بود: لطف میفرمایید اگه بنده رو راهنمایی بفرمایید.ایا باید ورژن اباکوس رو ارتقا بدم؟
    من الان فرترن 13 و ویژوال استودیو 2012 رو با اباکوس 6.13 لینک کردم که این خطاها مشاهده شد:
    LINK : fatal error LNK1181: cannot open input file ‘oldnames.lib’
    Abaqus Error: Problem during linking – Abaqus/Standard User Subroutines.
    This error may be due to a mismatch in the Abaqus user subroutine arguments

    پاسخ
    1. 6.1

      یونس سروری

      intel fortran composer 2013 و visual studio 2012 باید استفاده بشه برای Abaqus 6.13
      فایلی که خدمتتون عرض کردم اطلاعات کاملتری میده، مثلا :

      Abaqus/Standard
      …PASS
      Continuing…

      اگر همه موارد pass بشه یعنی لینک بدرستی برقرار شده
      وقتی از لینک شدن آباکوس و فرترن مطمئن شدید و خطا همچنان پابرجا بود کد را بررسی کنید؛ ممکنه متغیری استفاده کرده باشید که تعریف نشده باشه

      پاسخ
  7. 7

    مکانیک -طراحی کاربردی

    با سلام و تشکر فراوان بابت کمک های بی دریغ شما…
    بله متاسفانه همه ی موارد pass داده نشده و اینکه در ابتدای صفحه این پیغام نمایش داده میشه:
    Abaqus/Standard with user subroutines

    …ERROR

    Abaqus did not complete successfully.

    Please see std_user.log for details.

    Continuing…

    پاسخ
    1. 7.1

      یونس سروری

      خواهش می‎کنم؛ پس فرآیند لینک به درستی انجام نشده

      پاسخ
  8. 8

    مکانیک طراحی کاربردی

    باسلام و عرض خسته نباشید.
    اقای مهندس سروری بنده موفق به انجام فرآیند لینک کردن فرترن و اباکوس علی رغم سعی بسیار نشدم. میخواستم از حضورتون جویا شم که امکان داره بنده رو راهنمایی بفرمایید؟

    پاسخ
    1. 8.1

      یونس سروری

      درود
      یه جستجوی ساده کنید مطالب بسیار زیادی از نحوه لینک کردن آباکوس 6.13 با فرترن پیدا می‎کنید

      پاسخ
  9. 9

    مکانیک طراحی کاربردی

    بله تمام مسیرهای موجود در فایل های راهنمای لینک کردن رو امتحان کردم و نهایتا نسخه آباکوس رو ارتقا دادم به 6.14-1
    ولی کماکان مشکل وجود داره.

    پاسخ
    1. 9.1

      یونس سروری

      برای 6.14 شما به visual studio و کامپایلر فرترن متفاوتی نیاز دارید
      روشهایی موجوده که میتونید با جستجو پیدا کنید

      موفق باشید . . .

      پاسخ
  10. 10

    محمد

    سلام.
    با تشکر از سایت و آموزش های عالی که قرار می دهید.
    و البته پاسخگویی با حوصله ی جناب سروری.
    من می خواستم مدول الاستیسیته رو برای یه ماده یه کم تغییر بدم، این کار رو از طریق edit keyword داخل نرم افزار انجام دادم ظاهرا داخل فایل .inp این تغییر اعمال شده اما داخل بخش تعریف متریال اصلاح نشده… می خواستم بپرسم آیا این کافیه که داخل فایل ورودی تغییر دیده بشه؟
    یا لازمه که یو مت بنویسم؟

    البته متاسفانه با اینکه نصب نرم افزار رو قدم به قدم از سایت شما دنبال کردم اما هنوز نتونستم از documentation خود آباکوس استفاده کنم.
    ممنون از پاسخگویی صبورانه تون.

    پاسخ
    1. 10.1

      یونس سروری

      سلام و ممنون از اظهار لطف شما
      من دقیق متوجه موضوع نشدم
      umat برای چه موضوعی؟
      اینکه فقط مدول یانگ را عوض کنید؟

      پاسخ
      1. 10.1.1

        محمد

        مدول یانگ رو میخوام بصورت عدد مختلط وارد کنم… این کار رو از طریق edit keyword انجام دادم و این تغییر در فایل .inp ثبت شده…
        حالا این کافیه یا لازمه یومت بنویسمم؟

        پاسخ
        1. 10.1.1.1

          یونس سروری

          فکر نمی‎کنم نیازی به UMAT باشه

  11. 11

    مریم

    سلام
    وقتتون بخیر
    من هم با این خطا در آباکوسم مواجهم problem during compilation و بعد هم ادرس فایل یومت.چند روز پیش هم از فایل یومتم خروجی گرفتم و از درستیش مطمئنم. الان ورژن آباکوسم رو عوض کردم و با این مشکل مواجه شدم.
    ذر فایلverify.log هم همه ی موارد Pass هستند و خط اخر این فایل به این صورت هست:
    Clean-up…

    Verification directory C:\SIMULIA\Abaqus\6.13-1\installation_info\verify has
    been deleted.
    ممنون میشم بفرمایید مشکا کجاست.

    پاسخ
    1. 11.1

      یونس سروری

      سلام
      ممکنه نسخه فرترن و ویژوال استودیو تطبیق نداشته باشن
      میتونید سرچ کنید در اینترنت و اطلاعات لازم در خصوص نسخه‎ها را پیدا کنید

      پاسخ
  12. 12

    مهرزاد کاهنی

    با سلام
    میخواستم بدونم آیا نرم افزار انسیس هم قابلیتی مثل اضافه کردن کد UMAT داره؟یا چیزی مشابه اون که بشه خواص موادمون رو در قالب یک کد به نرم افزار بدیم.
    با تشکر از شما

    پاسخ
    1. 12.1

      یونس سروری

      سلام
      بله، سابروتین USERMAT در انسیس نقشی مشابه UMAT در آباکوس را ایفا میکنه

      موفق باشید . . .

      پاسخ
  13. 13

    سعید

    سلام
    یه سوال فنی داشتم.
    رشد و نمو دما در هر increment که به عنوان DTEMP هست، در سابروتین UMAT توسط خود نرم افزار محاسبه میشه و نیاز نیست توسط کاربر کدنویسی بشه. ولی در سابروتین VUMAT این جوری نیست و باید توسط خود کاربر مقدار نمو دما در هر increment نوشته بشه. می خواستم بپرسم آیا کسی هست که بدونه این کدنویسی چطوری باید انجام بشه؟ آیا باید از معادله کلی heat equation یا معادله انتقال گرمای فوریه نوشته بشه یا نه یه معادله دیگه ؟
    با سپاس فراوان

    پاسخ
    1. 13.1

      یونس سروری

      سلام
      کدنویسی بر اساس اطلاعات و فرمولبندی مدل انجام میشه
      شما روابط مربوط به هر متغیری را که داشته باشید میتونید به شکل نموی محاسبه و آپدیتش کنید
      در خصوص استفاده از معادله هم میتونید در مقالات سرچ کنید؛ قطعا به نتیجه میرسید

      موفق باشید . . .

      پاسخ
  14. 14

    دانشجوی مکانیک

    سلام، خسته نباشید
    من آباکوس ورژن 6.14 را با ویژوال استودیو 2012 و فرترن 2013 لینک کردم و Abaqus Verification را هم اجرا کردم و همه موارد به درستی انجام شده و pass نشان میدهد اما موقعی که میخواهم Umat مورد نظر را در فایل Implicit شبیه سازی شده ایمپورت کنم ارور Problem during compilation را دریافت میکنم، درحالیکه همین فایل Umat را در یکی از Sample های آباکوس اجرا کردم و انجام شد!! به نظر شما اشکال کار از کجاست؟
    ممنون.

    پاسخ
    1. 14.1

      یونس سروری

      سلام
      اگر از لینک شدن فرترن و آباکوس اطمینان دارید، مشکل از اینترفیس کد شماست

      پاسخ
  15. 15

    امین

    با عرض سلام و خسته نباشید
    ببخشید من بخشی که دقیقا مرتبط با سوالم باشه پیدا نکردم برای همین سوالم رو اینجا میپرسم.
    من میخوام ثابت های جانسون-کوک رو که در مقاله ها بصورت A,B,C,m.n داده شده برای تعریف ماده وارد نرم افزار کنم اما نمیدونم دقیقا ترتیبش به چه صورت هست اخه تو اباکوس پارامترها به صورت d1,d2تاd5 هستش تویه help اباکوس رو نگاه کردم اما دقیقا نفهمیدم ترتیب به چه صورت هستش چون معادله ای که داده بود کمی متفاوت با معادله ی جانسون کوک بود. ممنون میشم منو راهنمایی کنید.

    پاسخ
    1. 15.1

      یونس سروری

      سلام
      دوست عزیز پارامترهایی که در آباکوس وارد میکنید مربوط به معیار Damage جانسون – کوک هست و اگر به راهنمای آباکوس توجه کرده باشید اشاره شده که فرمول، مربوط به استخراج کرنش پلاستیک معادل هست
      چیزی که در ذهن شماست سطح تسلیم جانسون – کوک هست، به عبارت دیگر پارامترهایی که شما دنبالش هستید (A,B,C,m) در محاسبات تنش وارد میشن
      توصیه میکنم این مقاله را مطالعه کنید (لینک دانلود) ، هر دو رابطه مورد نظر شما داخلش هست

      موفق باشید . . .

      پاسخ
  16. 16

    حامد

    با سلام و خسته نباشید.
    من یه سابروتین vumat برای تعریف رفتار پلاستیسته با سخت شوندگی سینماتیک نوشتم و نتایج حاصل از اون رو با نتایج حاصل از حل گر خود آباکوس برای یک تک المان c3d8r تحت کشش تک محوره ، مقایسه کردم و چیزی حدود 10 درصد خطا بین نتایج مربوط به کانتور جابجایی و تنش فون میزز و نمودار تنش کرنش مشاهده شد. می خواستم بپرسم که آیا این خطا طبیعیه و مشکلی نداره؟ یا نه ، نتایج باید کاملا بر هم منطبق باشند؟
    اگه این مقدار از خطا طبیعیه و مشکلی نداره ،می خواستم بپرسم ریشه این خطا چیه؟ مگه خود حل گر آباکوس همون کاری رو نمی کنه که ما تو کد سابروتین نوشتیم؟!
    با تشکر فراوان

    پاسخ
    1. 16.1

      یونس سروری

      سلام
      اگر مدلی نوشتید که در پیش فرض آباکوس هم موجوده و یا با صفر کردن برخی پارامترها به مدل تعبیه شده در آباکوس میرسید خطا باید “صفر” باشه
      خطا عوامل زیادی میتونه داشته باشه؛ باید کدی که نوشتید را واکاوی کنید تا دلیل اختلاف را متوجه بشید
      شما کدی مینویسید که حلگر آباکوس اجراش کنه؛ ریش و قیچی دست شماست، تنها کدنویسی مهم نیست؛ بهینه بودن کد و بالا بودن سرعت اجرا هم مهمه

      موفق باشید . . .

      پاسخ
  17. 17

    صبا

    سلام.وقت بخیر
    آقای مهندس یه سوال داشتم.من کد UMAT رو برای کامپوزیت با المان لایه ای سالید نوشتم ولی از LAYER داخل کد استفاده نکردم فقط تو قسمت HEADER UMAT از LAYER اسم آورده.الان این کد همگرا نمیشه شاید بخاطر اتصالات.بخاطر همین میخوام کد رو در VUMAT بنویسم میخوام بدونم در این حالت محاسبات برای لایه ها انجام میگیره یا نه؟یعنی نتایج رو برای لایه ها میبینم یا نه؟ممنون میشم راهنماییم کنین

    پاسخ
    1. 17.1

      یونس سروری

      سلام
      فرقی نداره
      محاسبات در VUMAT به شکل Explicit خواهد بود

      پاسخ
      1. 17.1.1

        صبا

        ببخشید یه سوال دیگه، تنش و کرنش رو تو VUMAT چطوری باید حساب کنم؟
        و اینکه STATEV هارو که قراره آپدیت شه از همون اول باید با STATENEW , STATEOLD تعریف کنم یا اولش با STATEV خالی تعریف کنم؟

        پاسخ
        1. 17.1.1.1

          یونس سروری

          مگر شما UMAT ننوشته‎اید؟!
          روند به شکل مشابه هست

        2. 17.1.1.2

          صبا

          UMAT رو نوشتم ولی VUMAT رو اصلا بلد نیستم.یعنی این NEW,OLD ها منو به اشتباه میندازن.من با SDVINI اومدم STATEV هارو اول وارد کردم ولی اینو نمیدونم

  18. 18

    صبا

    سلام
    وقت بخیر
    یه سوال داشتم.در UMAT چگونه میتوانیم یک خاصیت اصلی مانند مدول الاستیسیته را به عنوان متغیر(STATEV) تعریف کنیم؟مدول الاستیسیته رو هم به عنوان PROPS تعریف کنیم و هم به عنوان STATEV؟؟و در مقدار دهی اولیه به STATEV برای مدول الاستیسیته مقدارش را قرار دهیم یا اسم مدول یا PROPS؟من هر مدل مینویسم این مدول الاستیسیته رو ارور میده!
    ممنون میشم راهنماییم کنین

    پاسخ
    1. 18.1

      یونس سروری

      نیازی نیست مدول یانگ را بعنوان متغیر حالت بدهید
      متغیرهای حالت در طول پروسه حل مدام آپدیت میشن؛ ما که در مسائل معمولی نیازی به آپدیت کردن مدول یانگ نداریم (مسائل آسیب متفاوت هستند)
      یا در کد مقداردهی کنید (یعنی مثلا E=210e9) و یا اینکه بعنوان Props تعریف کنید که از داخل آباکوس و ماژول property مقداردهی کنید ((E=props(1، حالا در آباکوس اولین مقداری که در props وارد میکنید به E تعلق میگیره)
      اگر هم نیاز دارید به هر دلیلی در قالب متغیر حالت تعریف کنید که باید در پروسه حل آپدیت بشه؛ این دیگه اصول اولیه برنامه نویسی هست(با هر زبان برنامه نویسی)
      یک مقدار اولیه تعریف کنید، روابط و فرمولها را که در اختیار دارید پیاده سازی کنید و در یک حلقه تکرار، هر بار مقدار جدید E که بدست اومد داخل ظرف STATEV مربوطه قرار بدهید

      پاسخ
      1. 18.1.1

        صبا

        آقای مهندس مسئله من آسیب هست، در این حالت وقتی مدول رو به عنوان statev تعریف میکنم دیگه نیازی نیست که به عنوان props هم تعریف کنم.درسته؟

        پاسخ
        1. 18.1.1.1

          یونس سروری

          خب یک مقدار اولیه که لازم دارید
          مقدار اولیه را در قالب props وارد کنید، بعد میتونید میقداری که دائم داره آپدیت میشه را در یک STATEV بریزید و از همون در محاسبه تنش استفاده کنید

        2. 18.1.1.2

          صبا

          واقعا ممنون مرسی،حل شد.مشکل اینجا بود که من STATEV مربوط به خواص اصلی رو پیش بقیه STATEV ها که در کدSDIVINI در ابتدای کد آورده بودم مینوشتم ولی الان اونا رو در قسمت بعد از تعریف خواص اصلی آوردم و حل شد!!!!!!!!

        3. یونس سروری

          موفق باشید . . .

  19. 19

    fatemeh

    سلام . میشه توی ویندوز 10 ، فورترن و ویژوال و آباکوس رو لینک کرد؟

    پاسخ
    1. 19.1

      یونس سروری

      سلام
      بله

      پاسخ
      1. 19.1.1

        fatemeh

        آیا نسخه ی خاصی لازمه ؟
        من چند نسخه رو امتحان کردم نشد!

        پاسخ
        1. 19.1.1.1

          یونس سروری

          برای نسخه 6.14 میتونید ویژوال استودیو 2012 و Fortran XE composer 2013 را امتحان کنید

  20. 20

    محمد رضا

    سلام پروژه ی من در رابطه با مواد تابعی
    Functional graded material
    است در این پروژه یادگیری اباکوس بهتر خواهد بود یا انسیس؟

    پاسخ
    1. 20.1

      یونس سروری

      سلام
      هر دو نرم افزار توانایی مدلسازی FGM را دارا هستند؛ برتری خاصی وجود نداره و بستگی به تسلط شما روی نرم افزار داره
      * لطف کنید بعد از طرح سؤال منتظر پاسخ باشید و از تکرار مجدد بپرهیزید؛ سپاس

      پاسخ
  21. 21

    حامد

    با سلام و خسته نباشید
    من یک معیار شکست رو به صورت یک سابروتین vumat نوشتم و قسمت تکامل آسیب یا همون Damage Evolution رو هم می خوام کد نویسی کنم. می خواستم بپرسم که نرم شدن و تنزل سفتی ماده (Material Degradation) از مرحله شروع آسیب (Damage Initiation) که با پارامتر D نشان داده می شود، هم بر روی مدول الاستیسیته و هم بر روی تنش تسلیم اثر می کند؟ و اثر این پارامتر بر هر دوی این ها به یک صورت و به صورت زیر می باشد؟
    (E = E * (1 – D
    (Sy = Sy * (1 – D
    با تشکر.

    پاسخ
    1. 21.1

      یونس سروری

      سلام
      ممنونم از شما
      وقتی که روی بحث Dmage کار کرده‎اید باید با الفبای اولیه بحث آشنا باشید؛ کدنویسی چیزی جز پیاده‎سازی عددی تئوری نیست
      توصیه میکنم مجدداً تئوریهای مکانیک آسیب را از کتاب Engineering Damage Mechanics لمتر مطالعه کنید

      موفق باشید . . .

      پاسخ
  22. 22

    دیندارلو

    با سلام.
    این پیغام به چه معنی هست:

    WARNING: Unable to determine if Fortran Compiler is present.

    Making C:\SIMULIA\Abaqus\6.14-1\installation_info\verify. All verification
    files will reside in this directory.

    پاسخ
    1. 22.1

      یونس سروری

      سلام
      لینک فرترن و آباکوس بدرستی انجام نشده

      پاسخ
  23. 23

    مهران

    با سلام
    من ی ورق سه لایه فلزی رو میخوام تو اباکوس مدل کنم ،یعنی نمونه کشش رو تحت کشش تک محوره(طولی)مدل کنم و لایه ی وسط خواصش ناهمسانگرد هست و میخوام ک تنش در جهت عرض این کامپوزیت رو بررسی کنم بعد از ران گرفتن،میخواستم ببینم باید از umat استفاده کنم یا نیازی نیست ؟(نتایج و داده های تست های کشش تجربی رو برای هر کدام از ورق ها و خود کامپوزیت هم دارم)اگه امکان داره راهنماییم کنید
    ممنون

    پاسخ
    1. 23.1

      یونس سروری

      سلام
      در خصوص مدلسازی کامپوزیت مثال آموزش در سایت موجوده، میتونید استفاده کنید:
      مدلسازی رشد ترک در مواد کامپوزیت با آباکوس

      موفق باشید . . .

      پاسخ
  24. 24

    sepehr

    سلام وقتتون بخیر
    وقتی درون سابروتین یومت، state variable داشته باشیم (مثلا متغیر آسیب)، پس از گرفتن job چطوری میتونیم اون متغیر مورد نظر در نتایج مشاهده کنیم و به عنوان نتایج خروجی اون ها را استخراج کنیم؟
    با تشکر فراوان از مطالب آموزنده تان

    پاسخ
    1. 24.1

      یونس سروری

      سلام
      در ماژول step، بخش Field Output Request تیک گزیته SDV که معرف solution dependent state variable است را فعال کنید (در زیر بخش State/Field/User/Time) ؛ متغیرهای حالت ثبت شده و قابل نمایش خواهند بود

      پاسخ
      1. 24.1.1

        sepehr

        خیلی ممنونم.

        پاسخ
  25. 25

    nima

    سلام و عرض ادب
    برای بررسی تخمین عمر خستگی با استفاده مکانیک آسیب در حال کدنویسی هستم. برای همین منظور از سابروتین های umat برای تعریف آسیب و UAMP برای بارگذاری استفاده میکنم. با توجه به این موضوع، بخش step به صورت general static باید تعریف شود یا به صورت dynamic implicit و یا مورد دیگر تعریف گردد؟ و اینکه عدد time period را با توجه به چه چیزی مشخص کنم؟
    خیلی ممنونم از شما.

    پاسخ
    1. 25.1

      یونس سروری

      سلام
      انتخاب نوع حلگر به ماهیت مسئله شما بستگی داره؛ اگر مسئله شما استاتیک یا شبه استاتیک باشه میتونید از general static استفاده کنید، اگر هم مسئله دینامیکه که از حلگر Dynamic استفاده کنید
      Time در مسائل استاتیکی معیاری برای تقسیم فرایند حله و لزوما با مقدار زمانی مسئله شما در واقعیت یکسان نیست؛ مثلا اگر شما قراره 100 سیکل را طی کنید میتونید 1 ثانیه زمان در نظر بگیرید و با amplitude، اسکریپت نویسی یا سابروتین نویسی این زمان را بین 100 سیکل خودتون تقسیم کنید
      همچنین میتونید 100 عدد step مجزا ایجاد کنید و هر سیکل را در یک step اعمال کنید
      حلگر Explicit زمان معنی واقعی به خودش میگیره، اگر مسئله شما در واقعیت n واحد زمانی طول کشیده، اینجا هم باید همون مقدار لحاظ بشه

      موفق باشید

      پاسخ
  26. 26

    nima

    سلام آقای مهندس وقتتون بخیر
    پیشاپیش به دلیل طولانی بودن سوال و عدم احتمالی هماهنگی پرسش با این بخش عرض خواهی میکنم
    (به علت استفاده از سابروتین umat و در ادامه سوال قبلی خودم، این پرسش را نیز اینجا مطرح کردم)
    همان گونه که در سوال قبلی خدمتتان عرض کردم برای بررسی عمر خستگی با استفاده از مکانیک آسیب، در حال استفاده از سابروتین های umat برای تعریف آسیب و UAMP برای بارگذاری هستم. پس از job گرفتن ، run به صورت کامل انجام شده منتهی همه نتایج صفر است و در قسمت warning پیغام زیر نشان داده می شود. (ورژن اباکوس بنده 6.14 است)
    Note that the number of arguments for user subroutines uamp and vuamp have been changed for v6.12. The arguments nprops and props have been added. If the number of arguments are incorrect, then the analysis will not run properly. Please read the abaqus user subroutines reference manual for more details.

    Amplitude, definition=user has been specified in the input file. This amplitude type is not supported for modal procedures and steady-state dynamic analysis with the response computed directly in terms of the physical degrees of freedom. It will be ignored if it is used with any of those procedures.
    بنده برای بررسی سابروتین ها از umat صرف نظر کردم و تنها بارگذاری با سابروتین UAMP را برای یک المان مکعبی از ماده ایزوتروپیک بکار گرفتم که مجددا با همان مشکل مواجه می شوم (نتایج صفر و همان پیغام warning داده می شود)
    هدف بنده اعمال بارگذاری به صورت چرخه ای می باشد
    اگر ممکن است در خصوص اعمال سابروتین UAMP برای بارگذاری نوسانی توضیح بفرمایید؟، و اینکه آیا ممکن است بنده کد UAMP را درست نوشته ام اما در نحوه تعیین step (یک step استاتیکی با زمان دوره 1 تعریف کردم) و یا نحوه اعمال سابروتین UAMP برای بارگذاری نوسانی و یا از این قبیل اشتباهات در محیط cae داشته باشم که نتایج صفر می شود؟
    خواهشمندم در صورت امکان توضیحی در مورد اشکال بنده و اعمال سابروتین UAMP برای بارچرخه ای بفرمایید
    ممنون از حسن نظرتان
    با تشکر و سپاس فراوان

    پاسخ
    1. 26.1

      یونس سروری

      سلام
      چه حلگری برای تحلیل در نظر گرفته اید؟

      پاسخ
      1. 26.1.1

        nima

        نوع بارگذاری و مدل آسیب را از روی یک پایان نامه خارجی دارم شبیه سازی می کنم. در اونجا اشاره کرده بود که از المان های C3D20R, استفاده شده. بنده از حلگر اباکوس استاندارد و یک step بصورت general,static با time period 1 تعریف کردم.

        پاسخ
        1. 26.1.1.1

          یونس سروری

          احتمالا مشکل از uamp باشه
          من برای مثال یک نمونه uamp مثلثی مینویسم که مثلا در زمان صفر جابجایی از مینیمم دامنه شروع کنه، در زمان T/2 به مقدار ماکزیمم دامنه برسه و در زمان T مقدارش مجددا به مینیمم دامنه برسه
          شما سعی کنید کد خودتون را با این سابروتین مقایسه کنید، الگو بگیرید و مشکل را پیدا کنید

          Real*8 Amax,Amin,T,n
          Parameter(T=1. , Amax=1.)
          n=idint(time(1)/T)
          IF(time(1)>n*T .AND. time(1)(2.*n+1.)*(T/2.) .AND. time(1)<=(n+1.)*T)THEN
          AmpValueNew=((Amin-Amax)/(T/2.))*(time(1)-n*T)+2.*Amax-Amin
          ENDIF

  27. 27

    nima

    جسارتا آقای مهندس سابروتین UAMP که نوشتم ساده هستش و کد آن برای بارگذاری چرخه ای را بصورت زیر نوشتم
    omega = 2.d0*3.141592654d0
    med = 0.d0
    amp = 100.d0
    fun = sin(omega*(time(iStepTime)-int(time(iStepTime))))
    AmpValueNew = med+amp*fun
    با تشکر و سپاس فروان از حسن نظرتان

    پاسخ
  28. 28

    nima

    خیلی ممنون اقای مهندس. لطف کردید.

    پاسخ
    1. 28.1

      یونس سروری

      موفق باشید

      پاسخ
  29. 29

    nima

    با سلام و عرض ادب احترام خدمت جناب آقای مهندس سروری
    ابتدا کمال تشکر و سپاس را از پاسخگویی شما در مورد سوالات دارم.
    در بارگذاری uamp مثلثی که نوشته اید چندین سوال و اشکال دارم که از محضرتان میپیرسم
    1- n تعداد چرخه بارگذاری را نشان می دهد؟
    2- (1)time در واقع همان (time(iStepTime) است ؟
    3- T دوره تناوب بارگذاری است که یک در نظر گرفته شده؟
    بنده کد را ران گرفتم اما با ارور مواجه شدم سپس سعی کردم برای n چرخه یا استفاده از بارگذاری مثلثی بنویسم اما مجدد با ارور مواجه شدم
    کدی که بنده اضافه کردم :
    Real*8 Amax,Amin,T,n
    Parameter(T=1. , Amax=1. , Amin=-1.)
    n=idint(time(1)/T)
    IF (time(1) .ge. n*T .AND. time(1) .lt. (2.*n+1.)*(T/2.) THEN
    AmpValueNew=((Amax-Amin)/(T/2.))*(time(1)-n*T)+Amin
    ELSE IF (time(1) .ge. (2.*n+1.)*(T/2.)
    * .AND. time(1) .le. (n+1.)*T) THEN
    AmpValueNew=((Amin-Amax)/(T/2.))*(time(1)-n*T)+2.*Amax-Amin
    END IF
    RETURN
    END
    اروری هم که در log میدهد به شرح زیر است
    ifort: command line warning #10130: unknown extension ‘A’ ignored in option ‘/Qax’
    ifort: command line warning #10130: unknown extension ‘V’ ignored in option ‘/Qax’
    ifort: command line warning #10130: unknown extension ‘X’ ignored in option ‘/Qax’

    KUAMP.for(44): error #5082: Syntax error, found IDENTIFIER ‘THEN’ when expecting one of: * ) :: , ; + . – (/ [ : ] /) ‘ ** / // > .LT. …
    IF (time(1) .ge. n*T .AND. time(1) .lt. (2.*n+1.)*(T/2.) THEN
    ——————————————————————-^
    KUAMP.for(46): error #5082: Syntax error, found END-OF-STATEMENT when expecting one of: )
    ELSE IF (time(1) .ge. (2.*n+1.)*(T/2.)
    ———————————————^
    KUAMP.for(47): error #5277: Unbalanced parentheses
    * .AND. time(1) .le. (n+1.)*T) THEN
    ————————————–^
    KUAMP.for(47): error #5082: Syntax error, found ‘*’ when expecting one of: ; BLOCK BLOCKDATA PROGRAM MODULE TYPE COMPLEX BYTE …
    * .AND. time(1) .le. (n+1.)*T) THEN
    ———^
    KUAMP.for(47): error #5082: Syntax error, found ‘(‘ when expecting one of:
    * .AND. time(1) .le. (n+1.)*T) THEN
    ——————————^
    KUAMP.for(47): error #5082: Syntax error, found ‘*’ when expecting one of: ( ) :: , ; %% : . / = =>
    * .AND. time(1) .le. (n+1.)*T) THEN
    ————————————^
    compilation aborted for KUAMP.for (code 1)
    با تشکر و سپاس فراوان از شما و مطالب بی نظیرتان

    پاسخ
    1. 29.1

      یونس سروری

      1 – بله
      2- بله، زمان مربوط به step-1 است
      3- بله
      خطاها در دستورات فرترن رخ داده (Syntax error است)؛ میتونید بررسی و اصلاح کنید

      پاسخ
      1. 29.1.1

        nima

        خیلی ممنون آقای مهندس.

        پاسخ
  30. 30

    Sepehr

    سلام آقای مهندس خسته نباشین
    در مورد بارگذاری چرخه ای که در پاسخ های قبلی نوشته اید، چطور میتونیم تعداد سیکل دلخواه مثلا ۹۰۰ تا سیکل در مدت زمانی مثلا time period=5 داشته باشیم؟ داخل کدی که نوشته اید از ابتدا باید n را برابر تعداد سیکل مورد نیاز قرار بدیم؟

    پاسخ
    1. 30.1

      یونس سروری

      سلام
      این یک سابروتینه
      خیلی ساده تر و با پایتون هم میتونید تعداد سیکل بالا اعمال کنید
      در این کد n تعداد سیکل مورد نظر است

      پاسخ
  31. 31

    sepehr

    ممنون مهندس
    بله متوجه منظورتون شدم. در واقع سوالم اینه که، اگه بخواهیم همین سابروتین رو برای تعداد 900 سیکل در مدت زمان 5 ثانیه اعمال کنیم، تنها کافیه که در این کد T را برابر با 1/180 قرار دهیم؟
    متشکرم.

    پاسخ
    1. 31.1
      1. 31.1.1
        1. 31.1.1.1

          یونس سروری

          موفق باشید

  32. 32

    sepehr

    سلام و درود خدمت جناب آقای مهندس سروری
    فرض کنید که به مدلی بارگذاری چرخه ای (نوسانی) وارد میشه. چگونه میتونیم بیشینه و کمینه تنش را در هر چرخه بارگذاری، در سابروتین UMAT حساب کنیم ؟ (چون یک متغیری داریم که رابطه اش بر اساس بیشینه و کمینه تنش در هر چرخه بارگذاری هست)
    با تشکر و سپاس فراوان

    پاسخ
    1. 32.1

      یونس سروری

      سلام
      تعدادی utility subroutine شناخته شده برای آباکوس وجود داره که میتویند ازشون استفاده کنید
      یکی از این سابروتین‎ها که برای هدف شما مناسبه، سابروتین SINV است
      در Documentation با همین کلیدواژه سرچ کنید؛ قالب کلی و نحوه استفاده شرح داده شده

      موفق باشید

      پاسخ
  33. 33

    رمضان

    Bad Material definition in element number 39 instance PART-1-1: zero or negative initial dilatational modulus caused by bad material data. Please check your material input and any initial conditions if necessary.
    سلام این ارور موقع ران گرفتن از کد ویومت پیش میاد علتش چیست

    پاسخ
    1. 33.1

      یونس سروری

      سلام
      پارامترهایی که برای ماده وارد کرده اید مشکل داره
      zero or negative initial dilatational modulus caused by bad material data. Please check your material input and any initial conditions if necessary.
      مجدد بخش تعریف ماده و همینطور شرایط اولیه مسئله را بررسی بفرمایید

      پاسخ
  34. 34

    هادی امیری

    سلام از سایت خوبتون ممنونم
    میخوام یه تست خستگی تک محوره از الیاژ منیزیم را در اباکوس مدل کنم.منتها خواص منیزیم نامتقارن است بعبارتی در کشش و فشار رفتار متفاوتی از خود نشون میده.از طرفی نمونه تحت این تست وارد پلاستیسیته میشه.میخواستم بدونم اگر بخوام داده های منحنی هیسترزیس تنش – کرنش را بصورت تعداد مثلا صد نقطه، وارد آباکوس کنم، آیا به سابروتین نویسی نیاز هست؟
    باز هم از زحماتتون تشکر میکنم.

    پاسخ
    1. 34.1
  35. 35

    hossein

    با سلام و خسته نباشید حضور شما، هنگام استفاده از سابروتین vumat مقداری مشخص به افزایش کرنش stainInc توسط نرم افزار نسبت داده می شود و تنش با رابطه داده شده آپدیت می شود. نرم افزار آباکوس بر چه اساسی نمو کرنش در سابروتین vumat را در نظر می گیرد؟ بیشتر نمو کرنش در زمان صفر منظورم هست. آیا عدد دلخواهی را به آن نسبت می دهد؟

    پاسخ
    1. 35.1

      یونس سروری

      سلام
      به شکل کلی نمو کرنش در تحلیل Explicit کوچکتر از نمو کرنش پایدار لحاظ میشه
      نمو کرنش پایدار هم به شکل معمول از مقدار کرنش الاستیک کوچکتره
      عدد به شکل fictitious یا ساختگی هست (ولی با رعایت این نکته که معادلات ساختاری را ارضا و از قوانین سرعت انتشار موج در مسائل Explicit پیروی کنه)

      پاسخ
      1. 35.1.1

        حسین

        با سلام و تشکر از پاسخ شما، من واسه مسأله خودم vumat نوشتم و در رابطه بین تنش و کرنش، نمو کرنش نیز استفاده شده است ولی با این مقدار نمو کرنش تنش تغییر زیادی می کند. سوال من این است که آیا می توانم نمو کرنش را کاهش دهم و چگونه؟

        پاسخ
        1. 35.1.1.1

          یونس سروری

          بدون دیدن فرمولبندی و درک صحیح مسئله نظری ندارم
          موفق باشید

      2. 35.1.2

        حسین

        سلام من مدل ویسکوالاستیک رو تو abaqus explicit می نویسم که شامل یک فنر و یک دمپر به شکل سری هستش. معادله ای هم که براش به دست آوردم به این شکل هستش.
        (stressNew =stressOld+(strainInc-dt*stressOld/mu)/(1/e+0.5*dt/mu
        مشکلی که دارم اینه که نمو کرنش تقسیم بر مخرج عدد بزرگی میشه. می خواستم ببینم چطور میشه نمو کرنش رو کوچکتر انتجاب کرد.

        پاسخ
        1. 35.1.2.1

          یونس سروری

          سؤال و جوابهای همین پست را مطالعه کنید
          توضیحاتی به یکی از دوستان دادم که ممکنه مفید باشه براتون

  36. 36

    ابراهیم

    سلام خسته نباشین، تووی آباکوس، اگر بخواهیم برای مدلسازی فاز (interphase) بین نانوفیلر و ماتریس پایه، از مثلا 1000 فنر استفاده کنیم، باید این فنرها رو چگونه مدل کنیم توو آباکوس؟ آیا باید توو قسمت interaction این کارو کرد؟ ممنون میشم ک راهنمایی کنین. باتشکر

    پاسخ
    1. 36.1

      یونس سروری

      سلام
      در خصوص مدلسازی فنر در آباکوس میتونید به آموزش مربوطه مراجعه کنید: اینجا

      پاسخ
  37. 37

    مهندس وحید

    سلام
    دو تا سوال داشتم از حضورتون اول اینکه من لینک Intel Fortran رو در اینترنت پیدا نکردم متاسفانه اگر امکانش هست یه لینک در اختیارمون قرار بدید و دوم اینه برای چک کردن سازگاری نسخه های مختلف باید کجا بررسی کنیم.
    ممنون

    پاسخ
    1. 37.1

      یونس سروری

      سلام
      شما نیاز به Intel Fortran Compiler دارید
      کامپایلر روی VS سوار میشه
      https://www.3ds.com/support/certified-hardware/simulia-system-information/

      پاسخ
      1. 37.1.1

        مهندس وحید

        با سلام مجدد
        خب لینک کامپایلر رو از کجا میشه پیدا کرد!؟
        آیا باید PGI Visual Fortran را نصب کنم؟
        ورژن های مختلف VS و Abaqus با هم سازگاری دارند؟

        پاسخ
        1. 37.1.1.1

          یونس سروری

          فارسی سلیس نوشتم Intel Fortran Compiler
          روش سرچ را هم توضیح میدم خدمتتون:
          وارد سایت گوگل که شدید (google.com) تایپ بفرمایید: “دانلود Intel Fortran Compiler”
          حتی سایتهای داخلی هم لینک دانلود نرم‎افزار را قرار داده‎اند

          اون لینکی که گذاشتم برای پیدا کردن ورژنهای مختلف بود؛ مطالعه میکردید متوجه میشدید

  38. 38

    ehsan

    با سلام
    من ی رابطه ای داخل سابروتین umat دارم ک براساس دستگاه قطبی باید مختصات رو بخونه و مدول رو حساب کنه
    چگونه میتونم این کار رو انجام بدم؟ممنون

    پاسخ
    1. 38.1

      یونس سروری

      سلام
      کجای umat نیاز به خواندن مختصات دارید؟

      پاسخ
  39. 39

    ehsan

    من می خوام رابطه زیر را ک براساس شعاع هست حساب کنم برای ماده fgm هست
    (E=(Ein-Eout)*(r-rin)/(rout-rin)
    این رابطه برای یک استوانه هست

    پاسخ
    1. 39.1

      یونس سروری

      پارامترهای Rin و Rout را خودتون در ابتدای کد وارد کنید یا اینکه در قالب دو Props در نظر بگیرید و در ماژول Property مقداردهی کنید

      پاسخ
  40. 40

    ehsan

    مشکلم فقط پارامتر r هست ک باید به صورت قطبی خونده بشه از مدلم این رو چیکار باید بکنم

    پاسخ
    1. 40.1

      یونس سروری

      آرایه COORDS مختصات نقاط مدل را در بر داره، میتونید استفاده کنید

      پاسخ
  41. 41

    رضا رحیمی نژاد

    سلام
    من بر روی کریستال پلاستیسیته کار می کنم. سابروتین UMAT و VUMAT نوشته شده برای این کار را نیز در اختیار دارم.
    یک قطعه توسط نرم افزارهای دیگر دانه بندی و آماده می کنم. در Static, general و به کمک UMAT کار را جواب گرفتم.
    حال لوله را برای هیدروفرمینگ دانه بندی کردم و می خواهم به کمک VUMAT آن را تحلیل کنم. در Dynamic,explicit.
    اما خطای زیر را میدهد و من سردرگم هستم که آیا ایراد از VUMAT است؟ یا دانه بندی قبل از آن؟ و یا شرایط مرزی و step تعریف شده ؟
    66 elements are missing elastic property reference.
    The elements have been identified in element set ErrElemMissingElasticPropRef.

    پاسخ
    1. 41.1

      یونس سروری

      سلام
      ظاهرا مشکل از تعریف خواص مکانیکی ناشی شده
      مجدداً بررسی کنید

      پاسخ
      1. 41.1.1

        رضا رحیمی نژاد

        جهت توضیح باید بگویم که در vumat ، برای تعریف ماده و موارد دیگر 160 props باید تعریف شود. هر کدام از آنها معرف خواصی است. این 160 عدد را توسط نرم افزاری دیگر که بت متلب نوشته شده انجام می دهم. البته نرم افزارهای خاص این کار نیز موجود است مانند :neper و VG . آن اعداد را کمی تغییر دادم اما خطاای Runtime error c می دهد.
        اگر اجازه دهید نمونه فایلی را خدمتتان ارسال نمایم. البته ایمیل شما را ندارم.

        پاسخ
        1. 41.1.1.1

          یونس سروری

          متأسفانه وقت بررسی مسائل دوستان را ندارم

  42. 42

    فرشاد

    باسلام خدمت مهندس سروری. من هم ارور compilation میگیرم در سابروتین umat و abaqus verification رو اجرا کردم که در abaqus explicit هم single precision و هم double precision ارور داد. من یک فایل umat دارم که اونو اجرا کردم ارور نداد اما یک فایل umat دیگه رو که اجرا میکنم ارور compilation میده. باتوجه به توضیحاتی که دادم میشه مطمئن شد مشکل از فرترن و آباکوس نیست و مشکل از کد منه؟

    پاسخ
    1. 42.1

      یونس سروری

      سلام
      بله؛ ممکنه مشکل از کد هم باشه

      پاسخ
      1. 42.1.1

        فرشاد

        پس چون یک سابروتین ران شد بدون ارور مشکل لینک شدن فرترن و آباکوس کاملا منتفیه و باید مشکل تو کدم جستجو کنم؟

        پاسخ
        1. 42.1.1.1

          یونس سروری

          سابروتین را در یک سیستم دیگه هم امتحان کنید تا اطمینان حاصل بشه

  43. 43

    رضا رحیمی نژاد

    سلام
    برای VUMAT نمی توانم مثالی ساده طراحی کنم تا با حل آباکوس مقایسه نمایم.
    همچنین یک vumat بزرگ دیگری دارم و می خواهم سلامت آن را تست کنم .

    پاسخ
    1. 43.1

      یونس سروری

      سلام
      در Documentation جستجو کنید، مثال وجود داره
      میتونید بررسی بفرمایید
      شما باید سعی کنید کدی که خودتون نوشته اید را با حذف برخی پارامترها به یک شکل ساده در بیارید که با حل آباکوس قابل مقایسه باشه (مثلا برخی پارامترها را صفر کنید، حذف کنید و . . تا به مدلهای پیش فرض آباکوس برسید)
      بعد که مطمئن شدید کدتون درسته و به خوبی کار میکنه میتونید روی حالت بسط یافته و کار اصلی تصمیم گیری کنید

      پاسخ

نظر خودتان را ارسال کنید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تمام حقوق مادی و معنوی این سایت متعلق به مرجع آموزش نرم‌افزارهای مکانیک می باشد و بازنشر مطالب فقط برای مقاصد غیر تجاری و با ذکر منبع () بلامانع است.