LS Dyna

LS Dyna

Topics related to LS-DYNA, Autodyn, Explicit STR and more.

Missing bk01.inc for Temperature Gradient Calculation in UMAT/TUMAT-LS-DYNA R14

    • Amrith Mariappan
      Subscriber

       

      Hello everyone,

      I am working on developing a coupled thermo-mechanical user material for LS-DYNA R14 (MPP, double precision, using the Intel ifx compiler). My goal is to create an entropy-based material model where the thermal subroutine (thumat12) calculates an entropy generation term based on heat transfer and passes it to the mechanical subroutine (umat41) via a COMMON block.

      I have run into a compilation error that I haven't been able to solve, and I would appreciate some guidance.

      The Problem:

      My build process fails when compiling my dyn21tumat.f file. The specific error message is:
      dyn21tumat.F(321): error #5102: Cannot open include file 'bk01.inc'

      This error is then followed by a cascade of "undeclared variable" errors because the necessary pointers and variables are not being defined.

      Detailed Explanation of Why I Need bk01.inc:

      To correctly calculate the entropy generation due to heat transfer, my thumat12 subroutine needs to compute the temperature gradient within an element. I have written a helper subroutine called compute_temperature_gradient to do this, which follows the standard FEM procedure:

      1. It gets the global node numbers for the element from the COMMON /aux33loc/ block.

      2. It uses these node numbers to get the temperature at each node.

      3. It then uses the shape function derivatives from COMMON /tsbsis/ to calculate the gradient (gradT) at the integration point.

      The critical step is #2. To get the nodal temperatures, my code needs to access the main LS-DYNA data array a() using the pointer ntmp0, like this:
      temp_nodes(i) = a(ntmp0 + node_ids(i))

      I have determined from documentation and other source files that the pointer ntmp0 is defined in the COMMON /bk01/ block, which is located in the file bk01.inc.

      My Issue:

      I downloaded the user material package for LS-DYNA R14 MPP Double Precision from the official LSTC/Ansys FTP site (https://ftp.lstc.com/objects/download_page.html), and the file bk01.inc is not included in this package. My directory listing confirms it is missing.

      My Questions:

      1. Could someone please provide the standard bk01.inc file for a double-precision MPP build, or confirm its contents?

      2. Is there a different, official location where these essential include files (like bk01.inc) are stored that I might have missed?

      3. As a fallback, if direct access to this file is not the intended method for this type of customization, is there an alternative function or a different set of common blocks I should be using to access nodal temperatures within a thusrmat user subroutine?

      Thank you in advance for any help or guidance you can provide. Your expertise would be greatly appreciated!

      Best regards,

      Amrith

       

Viewing 0 reply threads
  • You must be logged in to reply to this topic.