7.8. Example Curve-Fitting Problems

7.8.1. Example Hyperelastic Curve-Fitting Problems

The following example analyses are available for hyperelasticity curve-fitting:

Example: Parameter-Fitting of a Three-Network Model (TNM)

This example shows the entire curve-fitting process using a TNM. For more information about the material model, see Three-Network Model (TB,TNM) in the Material Reference.

/prep7
*create,tnm-unia.exp
/ninp,2
/nout,1
/1,time
/2,epto
/3,s
/engr,0
 0.10000E+01     0.19980E-02     0.19581E+01
 0.30000E+01     0.59821E-02     0.58641E+01
 0.50000E+01     0.99503E-02     0.88782E+01
 0.70000E+01     0.13903E-01     0.10434E+02
 0.90000E+01     0.17840E-01     0.11819E+02
 0.11000E+02     0.21761E-01     0.13122E+02
 0.13000E+02     0.25668E-01     0.14350E+02
 0.15000E+02     0.29559E-01     0.15508E+02
 0.17000E+02     0.33435E-01     0.16597E+02
 0.19000E+02     0.37296E-01     0.17617E+02
 0.21000E+02     0.41142E-01     0.18562E+02
 0.23000E+02     0.44973E-01     0.19421E+02
 0.25000E+02     0.48790E-01     0.20183E+02
 0.27000E+02     0.52592E-01     0.20837E+02
 0.29000E+02     0.56380E-01     0.21380E+02
 0.31000E+02     0.60154E-01     0.21818E+02
 0.33000E+02     0.63913E-01     0.22165E+02
 0.35000E+02     0.67659E-01     0.22440E+02
 0.37000E+02     0.71390E-01     0.22662E+02
 0.39000E+02     0.75107E-01     0.22845E+02
 0.41000E+02     0.78811E-01     0.23001E+02
 0.43000E+02     0.82501E-01     0.23141E+02
 0.45000E+02     0.86178E-01     0.23268E+02
 0.47000E+02     0.89841E-01     0.23388E+02
 0.49000E+02     0.93490E-01     0.23503E+02
 0.51000E+02     0.97127E-01     0.23615E+02
 0.53000E+02     0.10075E+00     0.23725E+02
 0.55000E+02     0.10436E+00     0.23834E+02
 0.57000E+02     0.10796E+00     0.23942E+02
 0.59000E+02     0.11154E+00     0.24050E+02
 0.61000E+02     0.11511E+00     0.24158E+02
 0.63000E+02     0.11867E+00     0.24266E+02
 0.65000E+02     0.12222E+00     0.24374E+02
 0.67000E+02     0.12575E+00     0.24482E+02
 0.69000E+02     0.12927E+00     0.24590E+02
 0.71000E+02     0.13278E+00     0.24699E+02
 0.73000E+02     0.13628E+00     0.24807E+02
 0.75000E+02     0.13976E+00     0.24916E+02
 0.77000E+02     0.14323E+00     0.25025E+02
 0.79000E+02     0.14669E+00     0.25133E+02
 0.81000E+02     0.15014E+00     0.25243E+02
 0.83000E+02     0.15358E+00     0.25351E+02
 0.85000E+02     0.15700E+00     0.25460E+02
 0.87000E+02     0.16042E+00     0.25569E+02
 0.89000E+02     0.16382E+00     0.25677E+02
 0.91000E+02     0.16721E+00     0.25786E+02
 0.93000E+02     0.17059E+00     0.25894E+02
 0.95000E+02     0.17395E+00     0.26003E+02
 0.97000E+02     0.17731E+00     0.26111E+02
 0.99000E+02     0.18065E+00     0.26219E+02
 0.10000E+03     0.18232E+00     0.26273E+02
*end

alpha                  = 0
theta0                 = 293

! Repeat

muA                    = 200
tauHatA                = 5
mA                     = 5

! B
muC                    = 100
q                      = 5

! C
muBi                   = 30
muBf                   = 30
beta                   = 5
tauHatB                = 10
mB                     = 5

!Flow
a                      = 0.0
n                      = 1

! Tdep
thetaHat               = 0

! Lock
lambdaL                = 5.11

! Bulk
kappa                  = 3000

alpha                  = 0
theta0                 = 293


TB,TNM,1, , ,netA
TBDATA,1,muA         ! TBDATA, 1
TBDATA,2,tauHatA     ! TBDATA, 5
TBDATA,3,mA          ! TBDATA, 7

TB,TNM,1, , ,netB
TBDATA,1,muBi        ! TBDATA, 9
TBDATA,2,muBf        ! TBDATA, 10
TBDATA,3,beta        ! TBDATA, 11
TBDATA,4,tauHatB     ! TBDATA, 12
TBDATA,5,mB          ! TBDATA, 13

TB,TNM,1, , ,netC
TBDATA,1,muC         ! TBDATA, 14
TBDATA,2,q           ! TBDATA, 15

TB,TNM,1, , ,flow
TBDATA,1,a           ! TBDATA, 6     
TBDATA,2,n           ! TBDATA, 8        

TB,TNM,1, , ,TDEP
TBDATA,1,thetaHat,0    ! TBDATA, 2

TB,TNM,1, , ,LOCK
TBDATA,1,lambdaL     ! TBDATA, 3

TB,TNM,1, , ,BULK
TBDATA,1,kappa       ! TBDATA, 4

! Define Material
tbft,fadd,1,aml,genr,tnmexample

! Define Uniaxial Data
tbft,eadd,1,unia,tnm-unia.exp

! Use TBFPLOT to examine the initial fit or change
! the coefficients to get a better fit using the TBFT,SET
! command or modifying the parameters above and running
! the TBFPLOT command again
!TBFPLOT,1,'amgenrtnmexample',1,2,3,4

! Solve
tbft,solv,1,aml,genr,tnmexample,1,20

! Plot
TBFPLOT,1,'amgenrtnmexample',1,2,3,4

! Save to Material database
tbft,fset,1,aml,genr,tnmexample

Example: Parameter-Fitting of Prony-Series and Hyperelastic Parameters

This example shows the curve-fitting process involving Prony-series shear parameters with hyperelasticity. The same can be done with volumetric test data if Prony-series bulk parameters need to be estimated.

*create,unia.exp
/1,time
/2,epe
/3,s
/ninp,2
/nout,1
   0.10000      0.200000       614620.     
   0.20000      0.400000      0.103454E+007
   0.30000      0.600000      0.134486E+007
   0.40000      0.800000      0.158910E+007
   0.50000       1.00000      0.179204E+007
   0.60000       1.20000      0.196906E+007
   0.70000       1.40000      0.213047E+007
   0.80000       1.60000      0.228372E+007
   0.90000       1.80000      0.243458E+007
    1.0000       2.00000      0.258772E+007
    11.000       2.00000      0.201025E+007
    21.000       2.00000      0.163321E+007
    31.000       2.00000      0.138533E+007
    41.000       2.00000      0.122123E+007
    51.000       2.00000      0.111185E+007
    61.000       2.00000      0.103844E+007
    71.000       2.00000       988858.0     
    81.000       2.00000       955160.0     
    91.000       2.00000       932123.0     
    101.00       2.00000       916290.0     
*end

/prep7
tb,hyper,1, ,3,ogden,
tbdata,1,1e6,1,1e6,2,1e6,-1
tbdata,7,0,0,0

tb,prony,1, ,2,shear
tbdata,,1,10,1,100

tbft,fadd,1,aml,genr,hyprony
tbft,eadd,1,unia,unia.exp

! Fix volumetric terms here.
*DO,iX,7,9,1
tbft,fix,1,aml,genr,hyprony,iX,1
*ENDDO
tbft,solve,1,aml,genr,hyprony,1,200

finish
/exit

Example: Parameter-Fitting for TB,USER with the MXUP Option

This example shows the curve-fitting process involving biaxial data with an implementation of the Mooney-Rivlin material model.

! Save this to usermat.F
      subroutine usermat     (matId,
     &                       elemId, kmatIntPt, kLayer, kSectPt,
     &                       ldstep,isubst, keycut,
     &                       nDirect, nShear, ncomp, nustatev, nusrprop,
     &                       time, dtime, temp, dtemp,
     &                       stress,ustatev,cJacobi, sedEl,sedPl,epseq,
     &                       Strain, dStrain, epsPl, usrprop, coords,
     &                       var0, defGrad_t, defGrad,
     &                       tsstif, epsZZ, cutFactor,
     &                       pVolDer, var2, var3, var4,
     &                       var5, var6, var7)
c
c*************************************************************************
c*************************************************************************
c     *** primary function ***
c             hyperelastic user subroutine interface
c				this is a Mooney-Rivlin material implementation
c      Attention:
c           User must define material constitutive law properly
c           according to the stress state such as 3D, plane strain
c           and axisymmetry, plane stress and 3D/1D beam.
c
c           A 3D material constitutive model can be used for
c           plane strain and axisymmetry cases.
c
c           When using shell elements, a plane stress algorithm
c           must be used.
c
c*************************************************************************
c Copyright ANSYS.  All Rights Reserved.
c
c     input arguments
c     ===============
c      matId     (int,sc,i)               material #
c      elemId    (int,sc,i)               element #
c      kDomIntPt (int,sc,i)               "k"th domain integration point
c      kLayer    (int,sc,i)               "k"th layer
c      kSectPt   (int,sc,i)               "k"th Section point
c      ldstep    (int,sc,i)               load step number
c      isubst    (int,sc,i)               substep number
c      nDirect   (int,sc,in)              # of direct components
c      nShear    (int,sc,in)              # of shear components
c      ncomp     (int,sc,in)              nDirect + nShear
c      nstatev   (int,sc,i)               Number of state variables
c      nProp     (int,sc,i)               Number of material constants
c
c      Temp      (dp,sc,in)               temperature at beginning of
c                                         time increment
c      dTemp     (dp,sc,in)               temperature increment
c      Time      (dp,sc,in)               time at beginning of increment (t)
c      dTime     (dp,sc,in)               current time increment (dt)
c
c      Strain   (dp,ar(ncomp),i)          Strain at beginning of time increment
c      dStrain  (dp,ar(ncomp),i)          Strain increment
c      usrprop  (dp,ar(nprop),i)          Material constants defined by TB,USER
c      coords   (dp,ar(3),i)              current coordinates
c      defGrad_t(dp,ar(3,3),i)            Deformation gradient at time t
c      defGrad  (dp,ar(3,3),i)            Deformation gradient at time t+dt
c
c     input output arguments
c     ======================
c      stress   (dp,ar(ncomp),io)         stress
c      ustatev  (dp,ar(nstatev),io)       user-defined state variables
c      sedEl    (dp,sc,io)                elastic work
c      sedPl    (dp,sc,io)                plastic work
c      epseq    (dp,sc,io)                equivalent plastic strain
c      epsPl    (dp,ar(ncomp),io)         plastic strain
c      var?     (dp,sc,io)                not used, they are reserved arguments
c                                         for further development
c
c     output arguments
c     ================
c      keycut   (int,sc,o)                loading bisect/cut control
c                                         0 - no bisect/cut
c                                         1 - bisect/cut
c                                         (factor will be determined by solution control)
c      cJacobi  (dp,ar(ncomp,ncomp),o)    material jacobian matrix
c      pVolDer  (dp,ar(3),o)              derivatives of volumetric potential wrt to J
c                                         pVolDer(1) = dU/dJ
c                                         pVolDer(2) = d^2U/dJ^2
c                                         pVolDer(3) = d^3U/dJ^3
c      tsstif   (dp,ar(2),o)              transverse shear stiffness
c                                         tsstif(1) - Gxz
c                                         tsstif(2) - Gyz
c                                         tsstif(1) is also used to calculate hourglass
c                                         stiffness, this value must be defined when low
c                                         order element, such as 181, 182, 185 with uniform
c                                         integration is used.
c      epsZZ    (dp,sc,o)                 strain epsZZ for plane stress,
c                                         define it when accounting for thickness change
c                                         in shell and plane stress states
c      cutFactor(dp,sc,o)                 time step size cut-back factor
c                                         define it if a smaller step size is wished
c                                         recommended value is 0~1
c*************************************************************************
c
c --- parameters
c
#include "impcom.inc"
#include "ansysdef.inc"

c *** debug BLOCK
c#include "locknm.inc"
c      integer          wrinqr, iott
c      external         pplock, ppunlock, wrinqr
c
c --- argument list
c
      integer          debugflag, keycut,    upkey,
     &                 ldstep,    isubst,    ieqitr,
     &                 elemId,    kmatIntPt, matId,
     &                 kLayer,    kSectPt,
     &                 nDirect,   ncomp,     nShear,
     &                 nustatev,  nusrprop

      double precision defGrad_t(3,3), defGrad(3,3), 
     &                 coords(3),
     &                 usrprop(nusrprop),
     &                 ustatev(nustatev),
     &                 stress(ncomp), 
     &                 pVolDer(3),
     &                 Strain(ncomp), 
     &                 epsPl (ncomp), 
     &                 dStrain(ncomp), 
     &                 cJacobi(ncomp,ncomp)
      double precision sedEl,   sedPl,
     &                 epseq, epsZZ,tsstif,cutFactor,
     &                 temp,    dtemp,
     &                 time,    dtime,
     &                 toffst

      double precision 
     &                 var1, var2, var3, var4,
     &                 var5, var6, var7, var0

      double precision Invar(10) , potential, jetc
c
      integer          mTens, mTens2
      parameter       (mTens = 6, mTens2 = mTens*mTens)
cc

      integer          kerr
      double precision dperr(3)
      external         erhandler
c************************************************************************
      integer i,j,k,l
c  deformation gradient      
      double precision F(3,3), detF, jac
c  cauchy-green tensor
      double precision Bbarm(3,3), BBbarm(3,3)	!matrix form

c  local arguments 
      double precision Bulk,mu1,mu2,C10,C01,d	! bulk, shear1, shear2. input coefficient 
      double precision eye(3,3), sigma(3,3), Norm	
      double precision cJacobiDev(3,3,3,3)
	  
c  parameters
      double precision zero,one,two,three,four,third,twothird,fourthird	  
      double precision fivethird,half,threehalf,onefourth,threefourth
      parameter(zero=0.d0,one=1.d0,two=2.d0,three=3.d0,four=4.d0,
     &     third=1.d0/3.d0,twothird=2.d0/3.d0,fourthird=4.d0/3.d0,
     &     fivethird=5.d0/3.d0,half=1.d0/2.d0,threehalf=3.d0/2.d0,
     &     onefourth=1.d0/4.d0,threefourth=3.d0/4.d0)
c
c===========================================================================     
c************** material property ********************
      C10 = usrprop(1)							!shear1 coefficient
      C01 = usrprop(2)							!shear2 coefficient
      d = usrprop(3)  							!bulk coefficient
c
      mu1 = two*C10   							!shear1
      mu2 = two*C01   							!shear2
c******************************************************
c *** copy a local deformation gradient
      F = defGrad
	  
      detF = F(1,1) * (F(2,2)*F(3,3) - F(2,3)*F(3,2))	!determinant of deformation gradient
     &     + F(1,2) * (F(2,3)*F(3,1) - F(2,1)*F(3,3))
     &     + F(1,3) * (F(2,1)*F(3,2) - F(2,2)*F(3,1))     
c *** check for negative detF
      if (detF .lt. zero) then
         keycut = 1
         cutFactor = 0.5d0
          dperr(1) = 0.0d0
          call erhandler ('usermat',5001,1, 'Negative determinant
     & of deformation gradient in usermat.', dperr(1),' ')
         goto 900
      end if
      Norm = detF**(-twothird)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

      Bbarm = matmul(F,transpose(F))*Norm
      BBbarm = matmul(Bbarm,Bbarm)

      Invar(1) = Bbarm(1,1) + Bbarm(2,2) + Bbarm(3,3)
      Invar(2) = BBbarm(1,1) + BBbarm(2,2) + BBbarm(3,3)
      Invar(2) = half*(Invar(1)**two - Invar(2))
      Invar(3) = detF
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!	  
      
      eye = zero
      eye(1,1) = one
      eye(2,2) = eye(1,1)
      eye(3,3) = eye(1,1)
c 
c===== calculate cauchy stress =====
      sigma = mu1/detF*(Bbarm - third*Invar(1)*eye)
     &       + mu2/detF*(-twothird*Invar(2)*eye + Invar(1)*Bbarm-BBbarm)

      stress = zero
      stress(1) = sigma(1,1)
      stress(2) = sigma(2,2)
      stress(3) = sigma(3,3)
      stress(4) = sigma(1,2)	 
      if (ncomp .gt. 4) then
         stress(5) = sigma(2,3)	 
         stress(6) = sigma(1,3)
      end if
      	 
   
	  
c======= material Jacobian (deviatoric part), spatial frame =====	
      cJacobiDev = zero
      cJacobi = zero
      Do i = 1,3
         Do j = 1,3
            Do k = 1,3
               Do l = 1,3   
           cJacobiDev(i,j,k,l) = twothird*mu1/detF*(-eye(i,j)*Bbarm(k,l) 
     &     + third*Invar(1)*eye(i,j)*eye(k,l) - Bbarm(i,j)*eye(k,l) 
     &     + half*Invar(1)*(eye(i,k)*eye(j,l) + eye(i,l)*eye(j,k))) 
     &     + fourthird*mu2/detF*(twothird*Invar(2)*eye(i,j)*eye(k,l) 
     &     - Invar(1)*Bbarm(i,j)*eye(k,l) + BBbarm(i,j)*eye(k,l) 
     &     + half*Invar(2)*(eye(i,k)*eye(j,l) + eye(i,l)*eye(j,k)) 
     &     - Invar(1)*eye(i,j)*Bbarm(k,l)  
     &     + threehalf*Bbarm(i,j)*Bbarm(k,l) 
     &     + eye(i,j)*BBbarm(k,l) - threefourth*(Bbarm(i,k)*Bbarm(j,l) 
     &     + Bbarm(i,l)*Bbarm(j,k)))
	 
               end do
            end do
         end do
      end do 

c     convert 4th order stiffness tensor to matrix
      do i=1,3
         do j=i,3
            cJacobi(i,j)=cJacobiDev(i,i,j,j)
         end do
      end do
      cJacobi(1,4)=cJacobiDev(1,1,1,2)
      cJacobi(2,4)=cJacobiDev(2,2,1,2)
      cJacobi(3,4)=cJacobiDev(3,3,1,2)
      cJacobi(4,4)=cJacobiDev(1,2,1,2)

      if (ncomp .gt. 4) then
         cJacobi(5,5)=cJacobiDev(2,3,2,3)
         cJacobi(6,6)=cJacobiDev(1,3,1,3)
         cJacobi(1,5)=cJacobiDev(1,1,2,3)
         cJacobi(1,6)=cJacobiDev(1,1,1,3)
         cJacobi(2,5)=cJacobiDev(2,2,2,3)
         cJacobi(2,6)=cJacobiDev(2,2,1,3)
         cJacobi(3,5)=cJacobiDev(3,3,2,3)
         cJacobi(3,6)=cJacobiDev(3,3,1,3)
         cJacobi(4,5)=cJacobiDev(1,2,2,3)
         cJacobi(4,6)=cJacobiDev(1,2,1,3)
         cJacobi(5,6)=cJacobiDev(2,3,1,3)
      end if

      do i=1,ncomp
         do j=i,ncomp
          cJacobi(j,i)=cJacobi(i,j)
         end do
      end do

c====================================================
      potential = half*mu1*(Invar(1)-three) + half*mu2*(Invar(2)-three)	

      if(d .gt. 0.0d0) then
       Bulk = two/d
       jac  = stress(ncomp+1) 
       potential = potential + 0.5d0*Bulk*(jac-1.0d0)*(jac-1.0d0)			! volumetric part
       pVolDer(1) = Bulk*(jac-1.0d0)
       pVolDer(2) = Bulk
       pVolDer(3) = 0.0d0
      else
c ***    incompressible behavior   
         pVolDer(1) = 0.0d0
         pVolDer(2) = 0.0d0
         pVolDer(3) = 0.0d0
      end if
      sedEl = potential

  900 continue

      return
      end

c ================================================================
c Start of Mechanical APDL command script
c ================================================================
/upf,usermat.F
*create,samplebiax.exp
/ninp,2
/nout,1
/1,time
/2,epto
/3,s
   0.50000E-01  0.487902E-001  32.1549     
   0.10000      0.953102E-001  62.8876     
   0.15000      0.139762       92.5075     
   0.20000      0.182322       121.263     
   0.25000      0.223144       149.355     
   0.30000      0.262364       176.949     
   0.35000      0.300105       204.180     
   0.40000      0.336472       231.819     
   0.45000      0.371564       258.552     
   0.50000      0.405465       285.230     
   0.55000      0.438255       311.909     
   0.60000      0.470004       338.648     
   0.65000      0.500775       365.494     
   0.70000      0.530628       392.488     
   0.75000      0.559616       419.666     
   0.80000      0.587787       447.058     
   0.85000      0.615186       474.693     
   0.90000      0.641854       502.593     
   0.95000      0.667829       530.787     
    1.0000      0.693147       559.349   
*end

/prep7
! coefficients need to be initialized to good 
! starting point.
tb,user,1,1,3,MXUP
tbdata,1,1.1,1.1,0.0

tblis,all,all,

! Define Material
tbft,fadd,1,aml,genr,umatexample

! Define Biaxial Data
tbft,eadd,1,biax,samplebiax.exp
tbft,list,1

tbft,solve,1,aml,genr,umatexample,1,10

tbft,fset,1,aml,genr,umatexample

tblis,all,all

fini
/exit,nosave

Example: Parameter-Fitting for Anisotropic Hyperelastic Material Models

This example shows the curve-fitting process involving uniaxial data provided in loading in three directions and fit with the anisotropic hyperelasticity model.

/batch,list 
/title, Test Case for hyper anisotropic hyper parameter fitting 
*create,unia-0.exp 
/ninp,1 
/nout,1 
/1,epto 
/2,s 
 2.E-02 0.372911626 
 3.E-02 0.561464662 
 4.E-02 0.751869561 
 5.E-02 0.944493564 
 6.E-02 1.13972783 
 7.E-02 1.33798999 
 8.E-02 1.53972694 
 9.E-02 1.74541767 
 0.1 1.95557687 
 0.11 2.17075877 
 0.12 2.39156083 
 0.13 2.61862899 
 0.14 2.85266247 
 0.15 3.09441971 
 0.16 3.3447247 
 0.17 3.60447474 
 0.18 3.87464766 
 0.19 4.15631205 
 0.2 4.4506358 
 0.21 4.75889915 
 0.22 5.08250685 
 0.23 5.42300216 
 0.24 5.78208387 
 0.25 6.16162383 
 0.26 6.56368948 
 0.27 6.99056442 
 0.28 7.44477862 
 0.29 7.92913479 
 0.3 8.44674479 
 0.31 9.00106954 
 0.32 9.59595998 
 0.33 10.2357127 
 0.34 10.9251215 
 0.35 11.6695496 
 0.36 12.4750004 
 0.37 13.3482085 
 0.38 14.2967338 
 0.39 15.3290857 
 0.4 16.4548412 
 0.41 17.6848138 
 0.42 19.0312142 
 0.43 20.5078657 
 0.44 22.1304339 
 0.45 23.9167057 
 0.46 25.8869031 
 0.47 28.0640583 
 0.48 30.4744497 
 0.49 33.1481028 
 0.5 36.1193919 
*end 

*create,unia-60.exp 
/ninp,1 
/nout,1 
/1,epto 
/2,s 
/xcsys,euler,60,0,0 
 2.E-02 0.455060799 
 3.E-02 0.686417207 
 4.E-02 0.920708869 
 5.E-02 1.15824279 
 6.E-02 1.39934226 
 7.E-02 1.6443478 
 8.E-02 1.89361905 
 9.E-02 2.14753559 
 0.1 2.406499 
 0.11 2.67093476 
 0.12 2.9412938 
 0.13 3.21805489 
 0.14 3.50172707 
 0.15 3.7928519 
 0.16 4.09200615 
 0.17 4.39980503 
 0.18 4.71690569 
 0.19 5.04400959 
 0.2 5.38186789 
 0.21 5.73128448 
 0.22 6.09312092 
 0.23 6.46830202 
 0.24 6.85782055 
 0.25 7.262743 
 0.26 7.68421756 
 0.27 8.1234797 
 0.28 8.58186107 
 0.29 9.06079877 
 0.3 9.56184178 
 0.31 10.0866667 
 0.32 10.637084 
 0.33 11.215054 
 0.34 11.8227015 
 0.35 12.4623275 
 0.36 13.1364302 
 0.37 13.847723 
 0.38 14.5991541 
 0.39 15.3939313 
 0.4 16.2355486 
 0.41 17.12781 
 0.42 18.0748704 
 0.43 19.0812605 
 0.44 20.1519336 
 0.45 21.2923088 
 0.46 22.5083156 
 0.47 23.8064515 
 0.48 25.1938449 
 0.49 26.6783191 
 0.5 28.2684707 
*end 

*create,unia-90.exp 
/ninp,1 
/nout,1 
/1,epto 
/2,s 
/xcsys,euler,90,0,0 
 2.E-02 0.272091551 
 3.E-02 0.408001008 
 4.E-02 0.544051933 
 5.E-02 0.680414049 
 6.E-02 0.817253696 
 7.E-02 0.954734401 
 8.E-02 1.09301687 
 9.E-02 1.2322596 
 0.1 1.37261915 
 0.11 1.51425073 
 0.12 1.65730807 
 0.13 1.80194439 
 0.14 1.9483124 
 0.15 2.09656568 
 0.16 2.2468581 
 0.17 2.39934476 
 0.18 2.5541831 
 0.19 2.71153308 
 0.2 2.87155782 
 0.21 3.03442451 
 0.22 3.20030524 
 0.23 3.36937759 
 0.24 3.54182563 
 0.25 3.71784023 
 0.26 3.8976215 
 0.27 4.08137772 
 0.28 4.26932806 
 0.29 4.46170182 
 0.3 4.65874213 
 0.31 4.86070404 
 0.32 5.06785845 
 0.33 5.28049157 
 0.34 5.49890727 
 0.35 5.72342721 
 0.36 5.95439406 
 0.37 6.19217227 
 0.38 6.43715003 
 0.39 6.68973861 
 0.4 6.95037999 
 0.41 7.21954261 
 0.42 7.49772779 
 0.43 7.78547011 
 0.44 8.08334156 
 0.45 8.39195306 
 0.46 8.71195709 
 0.47 9.04405291 
 0.48 9.38898836 
 0.49 9.74756341 
 0.5 10.1206368 
*end 


/prep7 

TB,AHYPER,1,,10,EXP   !expo 
TBDATA,1, 10, 0, 0,  0, 0, 0  
TBDATA,7, 1, 0.1, 1.1, 0.3 

! AVEC and BVEC are known 
TB,AHYPER,1,,,AVEC        ! = 0 degree 
TBDATA,1, 1, 0, 0 

TB,AHYPER,1,,,BVEC        ! =60 degree 
TBDATA,1, 0.5, 0.8660254, 0 
!TBDATA,1, 0, 1, 0 

TB,AHYPER,1,,,PVOL 
TBDATA,1, 0 

tblis,all,all 
 

! Define Material 
tbft,fadd,1,aml,genr,example 

! Define Uniaxial Data 
tbft,eadd,1,unia,unia-0.exp  
tbft,eadd,1,unia,unia-60.exp  
tbft,eadd,1,unia,unia-90.exp  

*do,iX,2,6,1 
tbft,fix,1,aml,genr,example,iX,1 
*enddo 

*do,iX,11,17,1 
tbft,fix,1,aml,genr,example,iX,1 
*enddo 

tbft,solv,1,aml,genr,example,1,20 
tbft,list,1 

tbft,fset,1,aml,genr,example 

/out 
/gopr 

tblis,all,all 

/exit 

7.8.2. Example Viscoelastic Curve-Fitting Problems

The following example analyses are available for viscoelasticity curve-fitting:

    Example: Prony-Fitting in Time Domain

    /com, curve-fitting prony series shear modulus with npts = 3
         
    *create,sdec-1.exp  
    0.00001	2993.40 
    0.01	2993.38
    1	2991.94   
    2	2990.49   
    4	2987.63   
    6	2984.82   
    8	2982.06   
    10	2979.34  
    20	2966.38  
    40	2943.40  
    60	2923.80  
    80	2907.02  
    100	2892.62 
    200	2844.66 
    400	2801.44 
    600	2776.87 
    800	2756.33 
    1000	2737.32
    2000	2656.10
    4000	2542.39
    6000	2467.97
    8000	2414.97
    10000	2373.92   
    20000	2234.36   
    40000	2056.05   
    60000	1946.64   
    80000	1879.31   
    100000	1837.87  
    200000	1777.41  
    400000	1771.61  
    600000	1771.56  
    800000	1771.56  
    1000000	1771.56 
    *end     
        
    /prep7  
        
    tb,elas,1   
    tbdat,,8971.51500,0.499000000   
    tb,prony, 1, 1, 3,shea   
    tbdata,1,8.031872e-02,5.116459e+01,6.070276e-01 
    tbdata,4,7.126442e+02,8.509530e-01,9.119234e+03 
    tblis,all,all   
        
    /prep7  
        
    ! define relaxation modulus vs time data
    tbft,eadd,1,sdec,sdec-1.exp 
        
    ! define material   
    tbft,fadd,1,aml,genr,prexample  
        
    tbft,list,1 
        
    tbft,set,1,aml,genr,prexample,1, 2e-1   
    tbft,set,1,aml,genr,prexample,2, 1e1
    tbft,set,1,aml,genr,prexample,3, 2e-1   
    tbft,set,1,aml,genr,prexample,4, 1e2
    tbft,set,1,aml,genr,prexample,5, 2e-1   
    tbft,set,1,aml,genr,prexample,6, 1e3
    tbft,set,1,aml,genr,prexample,7,8971.51500  
    tbft,set,1,aml,genr,prexample,8,0.499000000 
    
    tbft,fix,1,aml,genr,prexample, 7, 1 
    tbft,fix,1,aml,genr,prexample, 8, 1 
        
    tbft,solve,1,aml,genr,prexample,1,100   
        
    tbft,fset,1,aml,genr,prexample  
        
    /out
    /gopr    
        
    tblis,all,all   
    
    fini
    /exit

    Example: Prony-Fitting in Frequency Domain

    /com, test case for Prony series with exp data in freq domain (shear 5 terms)
    
    *create,mod.exp
    /ninp,1
    /nout,2
    /1,freq
    /2,srmd
    /3,simd
    0.1	2991.312875	14.89594278
    0.5	2992.452151	2.999592077
    1  	2992.488035	1.500117359
    2  	2992.497009	0.750098857
    5  	2992.499521	0.300044043
    10 	2992.49988 	0.150022343
    15 	2992.499947	0.100014935
    20 	2992.49997 	0.075011212
    25 	2992.499981	0.060008973
    30 	2992.499987	0.050007479
    35 	2992.49999 	0.042863555
    40 	2992.499993	0.037505611
    45 	2992.499994	0.033338321
    50 	2992.499995	0.030004489
    55 	2992.499996	0.027276808
    60 	2992.499997	0.025003741
    65 	2992.499997	0.023080377
    70 	2992.499998	0.021431778
    75 	2992.499998	0.020002993
    80 	2992.499998	0.018752806
    85 	2992.499998	0.0176497
    90 	2992.499999	0.016669161
    95 	2992.499999	0.015791837
    100	2992.499999	0.015002245
    *end
    
    /prep7
    
    tb,elas,1
    tbdat,,7782.834,0.3
    
    tb,prony,1,,5,shear
    tbdata,1,5.03E-02,1.12E+02
    tbdata,1,1.07E-01,3.13E+03
    tbdata,1,2.51e-01,4.12E+04
    tbdata,1,6.01e-1,9.5401E+04
    tbdata,1,9.03e-1,1.6E+05
     
    tbft,eadd,1,sdec,mod.exp
    
    ! Define constitutive function
    tbft,fadd,1,aml,genr,myprony
    
    tbft,set,1,aml,genr,myprony,1,0.01
    tbft,set,1,aml,genr,myprony,2,100
    tbft,set,1,aml,genr,myprony,3,0.01
    tbft,set,1,aml,genr,myprony,4,1000
    tbft,set,1,aml,genr,myprony,5,0.01
    tbft,set,1,aml,genr,myprony,6,10000
    tbft,set,1,aml,genr,myprony,7,0.01
    tbft,set,1,aml,genr,myprony,8,100000
    tbft,set,1,aml,genr,myprony,9,0.01
    tbft,set,1,aml,genr,myprony,10,200000
    
    tbft,fix,1,aml,genr,myprony,11,1
    tbft,fix,1,aml,genr,myprony,12,1
    
    tbft,solve,1,aml,genr,myprony,1,200
    
    cfit,,dflag,fitteddatlist
    cfit,,cfname,amgenrmyprony
    cfit,debug
    
    tbft,fset,1,aml,genr,myprony,
    /out
    tblis,all,all
    
    /dele,mod.exp
    /exit
    

    7.8.3. Example Plasticity Curve-Fitting Problems

    The following example analyses are available for plasticity curve-fitting:

      Example: Parameter-Fitting of Temperature-Dependent Chaboche with Isotropic Elastic Material

      /prep7
      
      *create,a0.exp
      /1,epto
      /2,s
      /temp,0
            0.0        0.0
       0.280000E-004  4.20000     
       0.560000E-004  8.40000     
       0.980000E-004  14.7000     
       0.144667E-003  21.7000     
       0.191333E-003  28.7000     
       0.238000E-003  35.7000     
       0.284667E-003  42.7000     
       0.331333E-003  49.7000     
       0.378000E-003  56.7000     
       0.424667E-003  63.7000     
       0.471333E-003  70.7000     
       0.518000E-003  77.7000     
       0.564667E-003  84.7000     
       0.611333E-003  91.7000     
       0.658000E-003  98.7000     
       0.704667E-003  105.700     
       0.751333E-003  112.700     
       0.798000E-003  119.700     
       0.844667E-003  126.700     
       0.891333E-003  133.700     
       0.938000E-003  140.700     
       0.984667E-003  147.700     
       0.133563E-002  154.700     
       0.212038E-002  161.700     
       0.450136E-002  168.700     
       0.123396E-001  175.700     
       0.213894E-001  182.700     
       0.312338E-001  189.700     
       0.420265E-001  196.700     
       0.539708E-001  203.700     
       0.659320E-001  210.000     
       0.659040E-001  205.800     
       0.658760E-001  201.600     
       0.658340E-001  195.300     
       0.657873E-001  188.300     
       0.657407E-001  181.300     
       0.656940E-001  174.300     
       0.656473E-001  167.300     
       0.656007E-001  160.300     
       0.655540E-001  153.300     
       0.655073E-001  146.300     
       0.654607E-001  139.300     
       0.654140E-001  132.300     
       0.653673E-001  125.300     
       0.653207E-001  118.300     
       0.652740E-001  111.300     
       0.652273E-001  104.300     
       0.651807E-001  97.3000     
       0.651340E-001  90.3000     
       0.650873E-001  83.3000     
       0.650407E-001  76.3000     
       0.649940E-001  69.3000     
       0.649473E-001  62.3000     
       0.649007E-001  55.3000     
       0.648540E-001  48.3000     
       0.648073E-001  41.3000     
       0.647607E-001  34.3000     
       0.647140E-001  27.3000     
       0.646673E-001  20.3000     
       0.646207E-001  13.3000     
       0.645740E-001  6.29999     
       0.645320E-001  0.0
      *end
      
      *create,a100.exp
      /1,epto
      /2,s
      /temp,100
             0.0      0.0
      0.323077E-004  4.20000     
      0.646154E-004  8.40000     
      0.113077E-003  14.7000     
      0.166923E-003  21.7000     
      0.220769E-003  28.7000     
      0.274615E-003  35.7000     
      0.328462E-003  42.7000     
      0.382308E-003  49.7000     
      0.436154E-003  56.7000     
      0.490000E-003  63.7000     
      0.543846E-003  70.7000     
      0.597692E-003  77.7000     
      0.651538E-003  84.7000     
      0.705385E-003  91.7000     
      0.759231E-003  98.7000     
      0.813077E-003  105.700     
      0.866923E-003  112.700     
      0.920769E-003  119.700     
      0.974615E-003  126.700     
      0.129273E-002  133.700     
      0.214756E-002  140.700     
      0.490863E-002  147.700     
      0.136491E-001  154.700     
      0.235799E-001  161.700     
      0.344051E-001  168.700     
      0.463026E-001  175.700     
      0.595099E-001  182.700     
      0.743532E-001  189.700     
      0.912979E-001  196.700     
      0.111042       203.700     
      0.121114       206.850     
      0.132113       210.000     
      0.132080       205.800     
      0.132048       201.600     
      0.131999       195.300     
      0.131946       188.300     
      0.131892       181.300     
      0.131838       174.300     
      0.131784       167.300     
      0.131730       160.300     
      0.131676       153.300     
      0.131623       146.300     
      0.131569       139.300     
      0.131515       132.300     
      0.131461       125.300     
      0.131407       118.300     
      0.131353       111.300     
      0.131299       104.300     
      0.131246       97.3000     
      0.131192       90.3000     
      0.131138       83.3000     
      0.131084       76.3000     
      0.131030       69.3000     
      0.130976       62.3000     
      0.130923       55.3000     
      0.130869       48.3000     
      0.130815       41.3000     
      0.130761       34.3000     
      0.130707       27.3000     
      0.130653       20.3000     
      0.130599       13.3000     
      0.130546       6.30001     
      0.130497        0.0
      *end
      
      *create,a200.exp
      /1,epto
      /2,s
      /temp,200
             0.0      0.0
       0.350000E-004  4.20000     
       0.700000E-004  8.40000     
       0.122500E-003  14.7000     
       0.180833E-003  21.7000     
       0.239167E-003  28.7000     
       0.297500E-003  35.7000     
       0.355833E-003  42.7000     
       0.414167E-003  49.7000     
       0.472500E-003  56.7000     
       0.530833E-003  63.7000     
       0.589167E-003  70.7000     
       0.647500E-003  77.7000     
       0.705833E-003  84.7000     
       0.764167E-003  91.7000     
       0.822500E-003  98.7000     
       0.880833E-003  105.700     
       0.939167E-003  112.700     
       0.997500E-003  119.700     
       0.167134E-002  126.700     
       0.326455E-002  133.700     
       0.107655E-001  140.700     
       0.213294E-001  147.700     
       0.328598E-001  154.700     
       0.455505E-001  161.700     
       0.596628E-001  168.700     
       0.755578E-001  175.700     
       0.937543E-001  182.700     
       0.115037	189.700     
       0.133758	194.950     
       0.149894	198.887     
       0.163523	201.841     
       0.174814	204.055     
       0.184003	205.717     
       0.191367	206.962     
       0.197188	207.897     
       0.201738	208.598     
       0.206459	209.298     
       0.211372	210.000     
       0.211337	205.800     
       0.211302	201.600     
       0.211249	195.300     
       0.211191	188.300     
       0.211133	181.300     
       0.211074	174.300     
       0.211016	167.300     
       0.210958	160.300     
       0.210899	153.300     
       0.210841	146.300     
       0.210783	139.300     
       0.210724	132.300     
       0.210666	125.300     
       0.210608	118.300     
       0.210549	111.300     
       0.210491	104.300     
       0.210433	97.3000     
       0.210374	90.3000     
       0.210316	83.3000     
       0.210258	76.3000     
       0.210199	69.3000     
       0.210141	62.3000     
       0.210083	55.3000     
       0.210024	48.3000     
       0.209966	41.3000     
       0.209908	34.3000     
       0.209849	27.3000     
       0.209791	20.3000     
       0.209733	13.3000     
       0.209674	6.30000     
       0.209622       0.0
      *end
      
      ! Enter the elastic properties. If you have data for 3 temperatures, enter Young's modulus and
      ! mu for each temperature
      tb,elas,1
      tbtemp,0
      tbdat,,1.5e5,0.3
      tbtemp,100
      tbdat,,1.3e5,0.3
      tbtemp,200
      tbdat,,1.2e5,0.3
      
      ! Define the Chaboche material property order 3
      tb,chab,1,2,2
      tbtemp,0
      tbdata,1,150,1,1,1,1
      tbtemp,100
      tbdata,1,130,1,1,1,1
      tbtemp,200
      tbdata,1,120,1,1,1,1
      
      ! Import material parameters
      tbft,fadd,1,aml,genr,myfit
      
      ! Add experimental data
      tbft,eadd,1,unia,a0.exp
      tbft,eadd,1,unia,a100.exp
      tbft,eadd,1,unia,a200.exp
      
      ! Automatically initialize the parameters
      tbft,aini,1,aml,genr,myfit
      
      ! List the properties and experimental data
      tbft,list,1
      
      
      ! Solve for Parameters
      tbft,solve,1,aml,genr,myfit,1,100
      
      ! Plot
      ! TPLT,materialid,'amgenrmyfit',EXPINDEX,COLX,COLY1,COLY2
      ! COLY1 is stress here
      ! COLY2 = NCOL+1 has the calculated stress value
      TBFPLOT,1,'amgenrmyfit',3,1,2,3
      
      ! Export to TB table database
      tbft,fset,1,aml,genr,myfit 
      tblis,all,all
      
      fini
      /exit
      

      Example: Parameter-Fitting of Three-Term Kinematic Static Recovery Parameters with Known Chaboche Parameters

      /prep7
      
      /out,scratch
      
      *create,c1.exp
      /ninp,2
      /1,time
      /2,epto
      /3,s
         0.20000E-01  0.133333E-004 0.400000     
         0.40000E-01  0.266667E-004 0.800000     
         0.70000E-01  0.466667E-004  1.40000     
         0.11500      0.766667E-004  2.30000     
         0.16500      0.110000E-003  3.30000     
         0.21500      0.143333E-003  4.30000     
         0.26500      0.176667E-003  5.30000     
         0.31500      0.210000E-003  6.30000     
         0.36500      0.243333E-003  7.30000     
         0.41500      0.276667E-003  8.30000     
         0.46500      0.310000E-003  9.30000     
         0.51500      0.343333E-003  10.3000     
         0.56500      0.376667E-003  11.3000     
         0.61500      0.410000E-003  12.3000     
         0.66500      0.443333E-003  13.3000     
         0.71500      0.476667E-003  14.3000     
         0.76500      0.510000E-003  15.3000     
         0.81500      0.543333E-003  16.3000     
         0.86500      0.576667E-003  17.3000     
         0.91500      0.610000E-003  18.3000     
         0.96500      0.643484E-003  19.3000     
          1.0000      0.671643E-003  19.9999     
          1.0200      0.658311E-003  19.6000     
          1.0400      0.644978E-003  19.2000     
          1.0700      0.624978E-003  18.6000     
          1.1150      0.594978E-003  17.7000     
          1.1650      0.561645E-003  16.7000     
          1.2150      0.528311E-003  15.7000     
          1.2650      0.494978E-003  14.7000     
          1.3150      0.461645E-003  13.7000     
          1.3650      0.428312E-003  12.7000     
          1.4150      0.394978E-003  11.7000     
          1.4650      0.361645E-003  10.7000     
          1.5150      0.328312E-003  9.70000     
          1.5650      0.294978E-003  8.70000     
          1.6150      0.261645E-003  7.70000     
          1.6650      0.228312E-003  6.70000     
          1.7150      0.194978E-003  5.70000     
          1.7650      0.161645E-003  4.70000     
          1.8150      0.128312E-003  3.70000     
          1.8650      0.949782E-004  2.70000     
          1.9150      0.616448E-004  1.70000     
          1.9650      0.283115E-004 0.700000     
          2.0000      0.497818E-005 0.0
          2.0200      0.216448E-004 0.500000     
          2.0400      0.383115E-004  1.00000     
          2.0700      0.633115E-004  1.75000     
          2.1150      0.100812E-003  2.87500     
          2.1650      0.142478E-003  4.12500     
          2.2150      0.184145E-003  5.37500        
          2.2650      0.225812E-003  6.62500     
          2.3150      0.267478E-003  7.87500     
          2.3650      0.309145E-003  9.12500     
          2.4150      0.350812E-003  10.3750     
          2.4650      0.392478E-003  11.6250     
          2.5150      0.434145E-003  12.8750     
          2.5650      0.475812E-003  14.1250     
          2.6150      0.517478E-003  15.3750     
          2.6650      0.559145E-003  16.6250     
          2.7150      0.600812E-003  17.8750     
          2.7650      0.642534E-003  19.1250     
          2.8150      0.704785E-003  20.3750     
          2.8650      0.819971E-003  21.6250     
          2.9150      0.941276E-003  22.8749     
          2.9650      0.106968E-002  24.1250     
          3.0000      0.116447E-002  24.9999     
          3.0200      0.114780E-002  24.5000     
          3.0400      0.113114E-002  24.0000     
          3.0700      0.110614E-002  23.2500     
          3.1150      0.106864E-002  22.1250     
          3.1650      0.102697E-002  20.8750     
          3.2150      0.985304E-003  19.6250     
          3.2650      0.943637E-003  18.3750     
          3.3150      0.901971E-003  17.1250     
          3.3650      0.860304E-003  15.8750     
          3.4150      0.818637E-003  14.6250     
          3.4650      0.776971E-003  13.3750     
          3.5150      0.735304E-003  12.1250     
          3.5650      0.693637E-003  10.8750     
          3.6150      0.651971E-003  9.62500     
          3.6650      0.610304E-003  8.37500     
          3.7150      0.568637E-003  7.12500     
          3.7650      0.526971E-003  5.87500     
          3.8150      0.485304E-003  4.62500     
          3.8650      0.443637E-003  3.37500     
          3.9150      0.401971E-003  2.12500     
          3.9650      0.360304E-003 0.875000     
          4.0000      0.331137E-003 0.0
          4.0200      0.347804E-003 0.500000     
          4.0400      0.364471E-003  1.00000     
          4.0700      0.389471E-003  1.75000     
          4.1150      0.426971E-003  2.87500     
          4.1650      0.468637E-003  4.12500     
          4.2150      0.510304E-003  5.37500     
          4.2650      0.551971E-003  6.62500     
          4.3150      0.593637E-003  7.87500     
          4.3650      0.635304E-003  9.12500     
          4.4150      0.676971E-003  10.3750     
          4.4650      0.718637E-003  11.6250     
          4.5150      0.760304E-003  12.8750     
          4.5650      0.801971E-003  14.1250     
          4.6150      0.843637E-003  15.3750     
          4.6650      0.885304E-003  16.6250     
          4.7150      0.926971E-003  17.8750     
          4.7650      0.968637E-003  19.1250     
          4.8150      0.101030E-002  20.3750     
          4.8650      0.105197E-002  21.6250     
          4.9150      0.109364E-002  22.8750     
          4.9650      0.113566E-002  24.1250     
          5.0000      0.120757E-002  25.0000     
          5.9000      0.123388E-002  24.9984     
          6.8000      0.125713E-002  25.0001     
          8.1500      0.129081E-002  25.0002     
          10.175      0.134091E-002  25.0001     
          12.425      0.139638E-002  25.0000     
          14.675      0.145174E-002  25.0000     
          16.925      0.150703E-002  25.0000     
          19.175      0.156229E-002  25.0000     
          21.425      0.161752E-002  25.0000     
          23.675      0.167273E-002  25.0000     
          25.925      0.172794E-002  25.0000     
          28.175      0.178314E-002  25.0000     
          30.425      0.183834E-002  25.0000     
          32.675      0.189353E-002  25.0000     
          34.925      0.194872E-002  25.0000     
          37.175      0.200392E-002  25.0000     
          39.425      0.205911E-002  25.0000     
          41.675      0.211430E-002  25.0000     
          43.925      0.216949E-002  25.0000     
          46.175      0.222468E-002  25.0000     
          48.425      0.227987E-002  25.0000     
          50.000      0.231850E-002  25.0000        
      *end
      
      ! Add the material properties. Elastic, Chaboche and initial values for kinematic static recovery
      ! For kinematic static recovery, recommended values are C = Large, and Gamma is small value s
      ! slightly more than 1
      young = 30e3
      poiss = 0.3
      sigy  = 18
      
      tb,elas,1
      tbdat,,young,poiss
      
      tb,chab,1,,3,TRATE
      tbdata,1,18.8,4.3367e6, 3.77e6, 8.981e3,9.47778e2
      tbdata,6, 9.8895e2,9.9446
      
      tb,plastic,1,,3,KSR2
      tbdata,1,10000,1.5,10000,1.5
      tbdata,5, 10000,1.5
      
      tblis,all,all
      
      ! Import the material parameter to the tbft command object
      tbft,fadd,1,aml,genr,ratetest
      
      ! List the parameters to see the imported data and examine where
      ! the parameters are stored (index of the parameters)
      tbft,list,1
      
      ! Add experimental data
      tbft,eadd,1,unia,c1.exp
      
      
      ! Parameter 1 to 7 are Chaboche parameters. They can be fixed because
      ! they were previously calculated
      tbft,fix,1,aml,genr,ratetest,1,1
      tbft,fix,1,aml,genr,ratetest,2,1
      tbft,fix,1,aml,genr,ratetest,3,1
      tbft,fix,1,aml,genr,ratetest,4,1
      tbft,fix,1,aml,genr,ratetest,5,1
      tbft,fix,1,aml,genr,ratetest,6,1
      tbft,fix,1,aml,genr,ratetest,7,1
      
      ! Young's Modulus and Poisson's Ratio are fixed automatically
      
      ! Solve for parameters
      tbft,solve,1,aml,genr,ratetest,1,100
      
      ! Plot
      ! TBFPLOT,materialid,'amgenrratetest',EXPINDEX,COLX,COLY1,COLY2,COLYY3
      ! COLX is time here
      ! COLY1 is set to 3 and has the experimental stress value
      ! COLY2 = COLYY1+1 has the calculated stress value
      TBFPLOT,1,'amgenrratetest',3,1,3,4
      
      ! Save to TB database and list
      tbft,fset,1,aml,genr,ratetest
      tblis,all,all
      /out
      fini
      /exit
      

      Example: Parameter-Fitting of Three-Term Kinematic Static Recovery Parameters with Rate-Dependence Using the Multistep-Solve Option

      /prep7
      *create,PERZYNA-u-rate250.exp
      /ninp,2
      /nout,1
      /1,TIME
      /2,EPTO
      /3,S
      /khar,1
      /rate,1
         0.20000E-05  0.100000E-002  26.2999     
         0.40000E-05  0.200000E-002  46.7484     
         0.60000E-05  0.300000E-002  55.4562     
         0.80000E-05  0.400000E-002  58.8877     
         0.10000E-04  0.500000E-002  60.5450     
         0.12000E-04  0.600000E-002  61.6600     
         0.14000E-04  0.700000E-002  62.5379     
         0.16000E-04  0.800000E-002  63.2573     
         0.18000E-04  0.900000E-002  63.8510     
         0.20000E-04  0.100000E-001  64.3409     
         0.24000E-04  0.800000E-002  11.7409     
         0.28000E-04  0.600000E-002 -33.4499     
         0.32000E-04  0.400000E-002 -51.6628     
         0.36000E-04  0.200000E-002 -57.2154     
         0.40000E-04   0.00000      -60.2273     
         0.44000E-04 -0.200000E-002 -62.2638     
         0.48000E-04 -0.400000E-002 -63.6620     
         0.52000E-04 -0.600000E-002 -64.6161     
         0.56000E-04 -0.800000E-002 -65.2636     
         0.60000E-04 -0.100000E-001 -65.7014     
         0.64000E-04 -0.800000E-002 -13.1014     
         0.68000E-04 -0.600000E-002  32.1335     
         0.72000E-04 -0.400000E-002  50.6189     
         0.76000E-04 -0.200000E-002  56.4732     
         0.80000E-04   0.00000       59.7074     
         0.84000E-04  0.200000E-002  61.9040     
         0.88000E-04  0.400000E-002  63.4153     
         0.92000E-04  0.600000E-002  64.4482     
         0.96000E-04  0.800000E-002  65.1499     
         0.10000E-03  0.100000E-001  65.6246 
      *end
      
      *create,PERZYNA-u-rate2500.exp
      /ninp,2
      /nout,1
      /1,TIME
      /2,EPTO
      /3,S
      /khar,1
      /rate,1
         0.20000E-06  0.100000E-002  26.3000     
         0.40000E-06  0.200000E-002  49.4592     
         0.60000E-06  0.300000E-002  60.6917     
         0.80000E-06  0.400000E-002  65.2738     
         0.10000E-05  0.500000E-002  67.3054     
         0.12000E-05  0.600000E-002  68.5463     
         0.14000E-05  0.700000E-002  69.4871     
         0.16000E-05  0.800000E-002  70.2511     
         0.18000E-05  0.900000E-002  70.8805     
         0.20000E-05  0.100000E-001  71.3999     
         0.24000E-05  0.800000E-002  18.7999     
         0.28000E-05  0.600000E-002 -31.1323     
         0.32000E-05  0.400000E-002 -55.7260     
         0.36000E-05  0.200000E-002 -63.2645     
         0.40000E-05   0.00000      -66.7236     
         0.44000E-05 -0.200000E-002 -68.9835     
         0.48000E-05 -0.400000E-002 -70.5324     
         0.52000E-05 -0.600000E-002 -71.5911     
         0.56000E-05 -0.800000E-002 -72.3106     
         0.60000E-05 -0.100000E-001 -72.7974     
         0.64000E-05 -0.800000E-002 -20.1974     
         0.68000E-05 -0.600000E-002  29.7540     
         0.72000E-05 -0.400000E-002  54.5620     
         0.76000E-05 -0.200000E-002  62.4264     
         0.80000E-05   0.00000       66.1342     
         0.84000E-05  0.200000E-002  68.5742     
         0.88000E-05  0.400000E-002  70.2511     
         0.92000E-05  0.600000E-002  71.3993     
         0.96000E-05  0.800000E-002  72.1805     
         0.10000E-04  0.100000E-001  72.7096 
      *end
      
      *create,PERZYNA-u-rate25.exp
      /ninp,2
      /nout,1
      /1,TIME
      /2,EPTO
      /3,S
      /khar,1
      /rate,1
         0.20000E-04  0.100000E-002  26.2995     
         0.40000E-04  0.200000E-002  43.9886     
         0.60000E-04  0.300000E-002  50.9383     
         0.80000E-04  0.400000E-002  53.6832     
         0.10000E-03  0.500000E-002  55.1331     
         0.12000E-03  0.600000E-002  56.1725     
         0.14000E-03  0.700000E-002  57.0069     
         0.16000E-03  0.800000E-002  57.6935     
         0.18000E-03  0.900000E-002  58.2603     
         0.20000E-03  0.100000E-001  58.7280     
         0.24000E-03  0.800000E-002  6.12797     
         0.28000E-03  0.600000E-002 -33.9514     
         0.32000E-03  0.400000E-002 -47.7176     
         0.36000E-03  0.200000E-002 -52.2745     
         0.40000E-03   0.00000      -55.0163     
         0.44000E-03 -0.200000E-002 -56.8940     
         0.48000E-03 -0.400000E-002 -58.1823     
         0.52000E-03 -0.600000E-002 -59.0602     
         0.56000E-03 -0.800000E-002 -59.6555     
         0.60000E-03 -0.100000E-001 -60.0575     
         0.64000E-03 -0.800000E-002 -7.45753     
         0.68000E-03 -0.600000E-002  32.6973     
         0.72000E-03 -0.400000E-002  46.7671     
         0.76000E-03 -0.200000E-002  51.6024     
         0.80000E-03   0.00000       54.5468     
         0.84000E-03  0.200000E-002  56.5699     
         0.88000E-03  0.400000E-002  57.9605     
         0.92000E-03  0.600000E-002  58.9095     
         0.96000E-03  0.800000E-002  59.5534     
         0.10000E-02  0.100000E-001  59.9887   
      *end
      
      *create,PERZYNA-u-rate2p5.exp
      /ninp,2
      /nout,1
      /1,TIME
      /2,EPTO
      /3,S
      /khar,1
      /rate,1
         0.20000E-03  0.100000E-002  26.2947     
         0.40000E-03  0.200000E-002  41.4355     
         0.60000E-03  0.300000E-002  47.1644     
         0.80000E-03  0.400000E-002  49.4885     
         0.10000E-02  0.500000E-002  50.8147     
         0.12000E-02  0.600000E-002  51.8045     
         0.14000E-02  0.700000E-002  52.6073     
         0.16000E-02  0.800000E-002  53.2690     
         0.18000E-02  0.900000E-002  53.8154     
         0.20000E-02  0.100000E-001  54.2660     
         0.24000E-02  0.800000E-002  1.66602     
         0.28000E-02  0.600000E-002 -33.4810     
         0.32000E-02  0.400000E-002 -44.2798     
         0.36000E-02  0.200000E-002 -48.2898     
         0.40000E-02   0.00000      -50.8491     
         0.44000E-02 -0.200000E-002 -52.6098     
         0.48000E-02 -0.400000E-002 -53.8165     
         0.52000E-02 -0.600000E-002 -54.6380     
         0.56000E-02 -0.800000E-002 -55.1946     
         0.60000E-02 -0.100000E-001 -55.5703     
         0.64000E-02 -0.800000E-002 -2.97029     
         0.68000E-02 -0.600000E-002  32.2861     
         0.72000E-02 -0.400000E-002  43.4001     
         0.76000E-02 -0.200000E-002  47.6694     
         0.80000E-02   0.00000       50.4167     
         0.84000E-02  0.200000E-002  52.3119     
         0.88000E-02  0.400000E-002  53.6130     
         0.92000E-02  0.600000E-002  54.4998     
         0.96000E-02  0.800000E-002  55.1011     
         0.10000E-01  0.100000E-001  55.5072 
      *end
      
      *create,PERZYNA-u-rate0p25.exp
      /ninp,2
      /nout,1
      /1,TIME
      /2,EPTO
      /3,S
      /khar,1
      /rate,1
         0.20000E-02  0.100000E-002  26.2522     
         0.40000E-02  0.200000E-002  39.1857     
         0.60000E-02  0.300000E-002  44.0695     
         0.80000E-02  0.400000E-002  46.1271     
         0.10000E-01  0.500000E-002  47.3748     
         0.12000E-01  0.600000E-002  48.3297     
         0.14000E-01  0.700000E-002  49.1087     
         0.16000E-01  0.800000E-002  49.7514     
         0.18000E-01  0.900000E-002  50.2821     
         0.20000E-01  0.100000E-001  50.7197     
         0.24000E-01  0.800000E-002 -1.88033     
         0.28000E-01  0.600000E-002 -32.5495     
         0.32000E-01  0.400000E-002 -41.4127     
         0.36000E-01  0.200000E-002 -45.0945     
         0.40000E-01   0.00000      -47.5227     
         0.44000E-01 -0.200000E-002 -49.1955     
         0.48000E-01 -0.400000E-002 -50.3409     
         0.52000E-01 -0.600000E-002 -51.1200     
         0.56000E-01 -0.800000E-002 -51.6475     
         0.60000E-01 -0.100000E-001 -52.0035     
         0.64000E-01 -0.800000E-002 0.596548     
         0.68000E-01 -0.600000E-002  31.4078     
         0.72000E-01 -0.400000E-002  40.5865     
         0.76000E-01 -0.200000E-002  44.5129     
         0.80000E-01   0.00000       47.1181     
         0.84000E-01  0.200000E-002  48.9171     
         0.88000E-01  0.400000E-002  50.1508     
         0.92000E-01  0.600000E-002  50.9910     
         0.96000E-01  0.800000E-002  51.5603     
         0.10000      0.100000E-001  51.9447 
      *end
      
      *create,PERZYNA-u-rate0p025.exp
      /ninp,2
      /nout,1
      /1,TIME
      /2,EPTO
      /3,S
      /khar,1
      /rate,1
         0.20000E-01  0.100000E-002  26.0289     
         0.40000E-01  0.200000E-002  37.2562     
         0.60000E-01  0.300000E-002  41.5592     
         0.80000E-01  0.400000E-002  43.4422     
         0.10000      0.500000E-002  44.6371     
         0.12000      0.600000E-002  45.5666     
         0.14000      0.700000E-002  46.3275     
         0.16000      0.800000E-002  46.9555     
         0.18000      0.900000E-002  47.4739     
         0.20000      0.100000E-001  47.9014     
         0.24000      0.800000E-002 -4.69684     
         0.28000      0.600000E-002 -31.4696     
         0.32000      0.400000E-002 -39.0704     
         0.36000      0.200000E-002 -42.5401     
         0.40000       0.00000      -44.8707     
         0.44000     -0.200000E-002 -46.4767     
         0.48000     -0.400000E-002 -47.5754     
         0.52000     -0.600000E-002 -48.3222     
         0.56000     -0.800000E-002 -48.8277     
         0.60000     -0.100000E-001 -49.1687     
         0.64000     -0.800000E-002  3.42958     
         0.68000     -0.600000E-002  30.3732     
         0.72000     -0.400000E-002  38.2849     
         0.76000     -0.200000E-002  41.9878     
         0.80000       0.00000       44.4871     
         0.84000      0.200000E-002  46.2130     
         0.88000      0.400000E-002  47.3955     
         0.92000      0.600000E-002  48.2002     
         0.96000      0.800000E-002  48.7453     
          1.0000      0.100000E-001  49.1132   
      *end
      
      *create,PERZYNA-u-slow.exp
      /1,EPTO
      /2,S
      /khar,1
       0.100000E-002  26.0289
       0.200000E-002  37.2562
       0.300000E-002  41.5592
       0.400000E-002  43.4422
       0.500000E-002  44.6371
       0.600000E-002  45.5666
       0.700000E-002  46.3275
       0.800000E-002  46.9555
       0.900000E-002  47.4739
       0.100000E-001  47.9014
       0.800000E-002 -4.69684
       0.600000E-002 -31.4696
       0.400000E-002 -39.0704
       0.200000E-002 -42.5401
        0.00000      -44.8707
      -0.200000E-002 -46.4767
      -0.400000E-002 -47.5754
      -0.600000E-002 -48.3222
      -0.800000E-002 -48.8277
      -0.100000E-001 -49.1687
      -0.800000E-002  3.42958
      -0.600000E-002  30.3732
      -0.400000E-002  38.2849
      -0.200000E-002  41.9878
        0.00000       44.4871
       0.200000E-002  46.2130
       0.400000E-002  47.3955
       0.600000E-002  48.2002
       0.800000E-002  48.7453
       0.100000E-001  49.1132   
      *end 
      
      /prep7
      
      Ce1=26300  ! Elastic Modulus
      Ce2=0.3        ! Poisson's Ratio
      
      TB,ELAS,1
      TBDATA,1,Ce1,Ce2
      
      C1   =   1.8800000e+01
      C2   =   3.1506514e+03
      C3   =   2.5739148e+02
      C4   =   3.6519392e+06
      C5   =   1.9894826e+05
      
      tb,chab,1,,
      tbdata,1,C1,1,1,2,2,
      
      
      !******************* fit all the input data !!!!!!********************
      Cp1=1
      Cp2=100
      TB,RATE,1,,,PERZYNA              ! PERZYNA for rate hardening
      TBDATA,1,Cp1,Cp2                 !
      
      tblis,all,all
      
      
      ! Add Experimental Data to be used only for kinematic hardening
      tbft,eadd,1,unia,PERZYNA-u-slow.exp  
      
      !  Adding the Perzyna curve-fitting data, 6 different rates, activated only when rate is
      !enabled in the multistep solve
      tbft,eadd,1,unia,PERZYNA-u-rate0p025.exp 
      tbft,eadd,1,unia,PERZYNA-u-rate0p25.exp 
      tbft,eadd,1,unia,PERZYNA-u-rate2p5.exp
      tbft,eadd,1,unia,PERZYNA-u-rate25.exp
      tbft,eadd,1,unia,PERZYNA-u-rate250.exp
      tbft,eadd,1,unia,PERZYNA-u-rate2500.exp
      
      ! Constructing the fitting function
      tbft,fadd,1,aml,genr,ratefit  
      
      ! Start multistep plasticity-specific solve which will fit the chaboche parameters first and then
      ! the rate-dependent plasticity parameters. (Issues two tbft,solve commands internally.)
      tbft,psolve,1, aml,genr,ratefit,1,50
      tbft,list,1
      tbft,fset,1, aml,genr,ratefit
      
      !Save parameters to the database
      tbft,fset,1, aml,genr,ratefit 
      tblis,all,all
      

      Example: Parameter-Fitting of Anand Rate-Dependent Plasticity Model

      ! Example Problem for Anand Viscoplasticity Fitting at Different Rates
      
      *create,unia-2.exp
      /ninp,2
      /nout,1
      /1,time
      /2,epto
      /3,s
      /temp,273
         0.20000E-01  0.100000E-001  0.813999E+008
         0.40000E-01  0.200000E-001  0.102931E+009
         0.60000E-01  0.300000E-001  0.124107E+009
         0.80000E-01  0.400000E-001  0.145065E+009
         0.10000      0.500000E-001  0.165807E+009
         0.12000      0.600000E-001  0.186337E+009
         0.14000      0.700000E-001  0.206656E+009
         0.16000      0.800000E-001  0.226768E+009
         0.18000      0.900000E-001  0.246674E+009
         0.20000      0.100000       0.266378E+009
         0.22000      0.110000       0.285881E+009
         0.24000      0.120000       0.305187E+009
         0.26000      0.130000       0.324297E+009
         0.28000      0.140000       0.343213E+009
         0.30000      0.150000       0.361939E+009
         0.32000      0.160000       0.380476E+009
         0.34000      0.170000       0.398826E+009
         0.36000      0.180000       0.416992E+009
         0.38000      0.190000       0.434976E+009
         0.40000      0.200000       0.452780E+009
         0.42000      0.210000       0.470406E+009
         0.44000      0.220000       0.487857E+009
         0.46000      0.230000       0.505134E+009
         0.48000      0.240000       0.522239E+009
         0.50000      0.250000       0.539175E+009
         0.52000      0.260000       0.555943E+009
         0.54000      0.270000       0.572545E+009
         0.56000      0.280000       0.588984E+009
         0.58000      0.290000       0.605260E+009
         0.60000      0.300000       0.621377E+009
         0.62000      0.310000       0.637336E+009
         0.64000      0.320000       0.653138E+009
         0.66000      0.330000       0.668786E+009
         0.68000      0.340000       0.684282E+009
         0.70000      0.350000       0.699626E+009
         0.72000      0.360000       0.714821E+009
         0.74000      0.370000       0.729869E+009
         0.76000      0.380000       0.744771E+009
         0.78000      0.390000       0.759529E+009
         0.80000      0.400000       0.774145E+009
         0.82000      0.410000       0.788620E+009
         0.84000      0.420000       0.802955E+009
         0.86000      0.430000       0.817153E+009
         0.88000      0.440000       0.831215E+009
         0.90000      0.450000       0.845143E+009
         0.92000      0.460000       0.858938E+009
         0.94000      0.470000       0.872601E+009
         0.96000      0.480000       0.886134E+009
         0.98000      0.490000       0.899539E+009
          1.0000      0.500000       0.912817E+009
          1.0200      0.490000       0.306817E+009
          1.0400      0.480000      -0.299183E+009
          1.0600      0.470000      -0.871656E+009
          1.0800      0.460000      -0.924658E+009
          1.1000      0.450000      -0.938667E+009
          1.1200      0.440000      -0.951600E+009
          1.1400      0.430000      -0.964387E+009
          1.1600      0.420000      -0.977054E+009
          1.1800      0.410000      -0.989602E+009
          1.2000      0.400000      -0.100203E+010
          1.2200      0.390000      -0.101435E+010
          1.2400      0.380000      -0.102655E+010
          1.2600      0.370000      -0.103863E+010
          1.2800      0.360000      -0.105061E+010
          1.3000      0.350000      -0.106247E+010
          1.3200      0.340000      -0.107422E+010
          1.3400      0.330000      -0.108587E+010
          1.3600      0.320000      -0.109740E+010
          1.3800      0.310000      -0.110883E+010
          1.4000      0.300000      -0.112016E+010
          1.4200      0.290000      -0.113138E+010
          1.4400      0.280000      -0.114250E+010
          1.4600      0.270000      -0.115352E+010
          1.4800      0.260000      -0.116444E+010
          1.5000      0.250000      -0.117525E+010
          1.5200      0.240000      -0.118597E+010
          1.5400      0.230000      -0.119660E+010
          1.5600      0.220000      -0.120712E+010
          1.5800      0.210000      -0.121755E+010
          1.6000      0.200000      -0.122789E+010
          1.6200      0.190000      -0.123813E+010
          1.6400      0.180000      -0.124828E+010
          1.6600      0.170000      -0.125834E+010
          1.6800      0.160000      -0.126831E+010
          1.7000      0.150000      -0.127820E+010
          1.7200      0.140000      -0.128799E+010
          1.7400      0.130000      -0.129769E+010
          1.7600      0.120000      -0.130731E+010
          1.7800      0.110000      -0.131685E+010
          1.8000      0.100000      -0.132630E+010
          1.8200      0.900000E-001 -0.133566E+010
          1.8400      0.800000E-001 -0.134495E+010
          1.8600      0.700000E-001 -0.135415E+010
          1.8800      0.600000E-001 -0.136327E+010
          1.9000      0.500000E-001 -0.137231E+010
          1.9200      0.400000E-001 -0.138127E+010
          1.9400      0.300000E-001 -0.139015E+010
          1.9600      0.200000E-001 -0.139896E+010
          1.9800      0.100000E-001 -0.140769E+010
          2.0000       0.00000      -0.141634E+010
      *end
      
      *create,unia-20.exp
      /ninp,2
      /nout,1
      /1,time
      /2,epto
      /3,s
      /temp,273
         0.20000      0.100000E-001  0.783858E+008
         0.40000      0.200000E-001  0.989733E+008
         0.60000      0.300000E-001  0.119184E+009
         0.80000      0.400000E-001  0.139150E+009
          1.0000      0.500000E-001  0.158874E+009
          1.2000      0.600000E-001  0.178361E+009
          1.4000      0.700000E-001  0.197614E+009
          1.6000      0.800000E-001  0.216637E+009
          1.8000      0.900000E-001  0.235431E+009
          2.0000      0.100000       0.254001E+009
          2.2000      0.110000       0.272350E+009
          2.4000      0.120000       0.290481E+009
          2.6000      0.130000       0.308397E+009
          2.8000      0.140000       0.326100E+009
          3.0000      0.150000       0.343594E+009
          3.2000      0.160000       0.360882E+009
          3.4000      0.170000       0.377967E+009
          3.6000      0.180000       0.394851E+009
          3.8000      0.190000       0.411538E+009
          4.0000      0.200000       0.428029E+009
          4.2000      0.210000       0.444328E+009
          4.4000      0.220000       0.460437E+009
          4.6000      0.230000       0.476359E+009
          4.8000      0.240000       0.492097E+009
          5.0000      0.250000       0.507653E+009
          5.2000      0.260000       0.523029E+009
          5.4000      0.270000       0.538228E+009
          5.6000      0.280000       0.553252E+009
          5.8000      0.290000       0.568105E+009
          6.0000      0.300000       0.582787E+009
          6.2000      0.310000       0.597302E+009
          6.4000      0.320000       0.611651E+009
          6.6000      0.330000       0.625837E+009
          6.8000      0.340000       0.639862E+009
          7.0000      0.350000       0.653729E+009
          7.2000      0.360000       0.667439E+009
          7.4000      0.370000       0.680994E+009
          7.6000      0.380000       0.694397E+009
          7.8000      0.390000       0.707650E+009
          8.0000      0.400000       0.720754E+009
          8.2000      0.410000       0.733712E+009
          8.4000      0.420000       0.746525E+009
          8.6000      0.430000       0.759196E+009
          8.8000      0.440000       0.771726E+009
          9.0000      0.450000       0.784117E+009
          9.2000      0.460000       0.796372E+009
          9.4000      0.470000       0.808491E+009
          9.6000      0.480000       0.820477E+009
          9.8000      0.490000       0.832331E+009
          10.000      0.500000       0.844055E+009
          10.200      0.490000       0.238055E+009
          10.400      0.480000      -0.367945E+009
          10.600      0.470000      -0.827145E+009
          10.800      0.460000      -0.857433E+009
          11.000      0.450000      -0.869313E+009
          11.200      0.440000      -0.880644E+009
          11.400      0.430000      -0.891843E+009
          11.600      0.420000      -0.902919E+009
          11.800      0.410000      -0.913876E+009
          12.000      0.400000      -0.924714E+009
          12.200      0.390000      -0.935436E+009
          12.400      0.380000      -0.946043E+009
          12.600      0.370000      -0.956536E+009
          12.800      0.360000      -0.966916E+009
          13.000      0.350000      -0.977186E+009
          13.200      0.340000      -0.987347E+009
          13.400      0.330000      -0.997399E+009
          13.600      0.320000      -0.100734E+010
          13.800      0.310000      -0.101719E+010
          14.000      0.300000      -0.102692E+010
          14.200      0.290000      -0.103656E+010
          14.400      0.280000      -0.104609E+010
          14.600      0.270000      -0.105552E+010
          14.800      0.260000      -0.106486E+010
          15.000      0.250000      -0.107409E+010
          15.200      0.240000      -0.108323E+010
          15.400      0.230000      -0.109228E+010
          15.600      0.220000      -0.110123E+010
          15.800      0.210000      -0.111009E+010
          16.000      0.200000      -0.111885E+010
          16.200      0.190000      -0.112753E+010
          16.400      0.180000      -0.113612E+010
          16.600      0.170000      -0.114461E+010
          16.800      0.160000      -0.115303E+010
          17.000      0.150000      -0.116135E+010
          17.200      0.140000      -0.116959E+010
          17.400      0.130000      -0.117775E+010
          17.600      0.120000      -0.118582E+010
          17.800      0.110000      -0.119381E+010
          18.000      0.100000      -0.120173E+010
          18.200      0.900000E-001 -0.120956E+010
          18.400      0.800000E-001 -0.121731E+010
          18.600      0.700000E-001 -0.122498E+010
          18.800      0.600000E-001 -0.123258E+010
          19.000      0.500000E-001 -0.124010E+010
          19.200      0.400000E-001 -0.124755E+010
          19.400      0.300000E-001 -0.125492E+010
          19.600      0.200000E-001 -0.126222E+010
          19.800      0.100000E-001 -0.126944E+010
          20.000       0.00000      -0.127660E+010
      *end
      
      *create,unia-200.exp
      /ninp,2
      /nout,1
      /1,time
      /2,epto
      /3,s
      /temp,273
          2.0000      0.100000E-001  0.753507E+008
          4.0000      0.200000E-001  0.949764E+008
          6.0000      0.300000E-001  0.114201E+009
          8.0000      0.400000E-001  0.133151E+009
          10.000      0.500000E-001  0.151834E+009
          12.000      0.600000E-001  0.170253E+009
          14.000      0.700000E-001  0.188412E+009
          16.000      0.800000E-001  0.206316E+009
          18.000      0.900000E-001  0.223969E+009
          20.000      0.100000       0.241375E+009
          22.000      0.110000       0.258539E+009
          24.000      0.120000       0.275464E+009
          26.000      0.130000       0.292153E+009
          28.000      0.140000       0.308612E+009
          30.000      0.150000       0.324844E+009
          32.000      0.160000       0.340852E+009
          34.000      0.170000       0.356640E+009
          36.000      0.180000       0.372212E+009
          38.000      0.190000       0.387571E+009
          40.000      0.200000       0.402721E+009
          42.000      0.210000       0.417665E+009
          44.000      0.220000       0.432406E+009
          46.000      0.230000       0.446948E+009
          48.000      0.240000       0.461293E+009
          50.000      0.250000       0.475445E+009
          52.000      0.260000       0.489408E+009
          54.000      0.270000       0.503183E+009
          56.000      0.280000       0.516774E+009
          58.000      0.290000       0.530185E+009
          60.000      0.300000       0.543417E+009
          62.000      0.310000       0.556473E+009
          64.000      0.320000       0.569358E+009
          66.000      0.330000       0.582072E+009
          68.000      0.340000       0.594619E+009
          70.000      0.350000       0.607001E+009
          72.000      0.360000       0.619221E+009
          74.000      0.370000       0.631282E+009
          76.000      0.380000       0.643186E+009
          78.000      0.390000       0.654935E+009
          80.000      0.400000       0.666531E+009
          82.000      0.410000       0.677979E+009
          84.000      0.420000       0.689278E+009
          86.000      0.430000       0.700432E+009
          88.000      0.440000       0.711443E+009
          90.000      0.450000       0.722314E+009
          92.000      0.460000       0.733046E+009
          94.000      0.470000       0.743641E+009
          96.000      0.480000       0.754101E+009
          98.000      0.490000       0.764429E+009
          100.00      0.500000       0.774627E+009
          102.00      0.490000       0.168627E+009
          104.00      0.480000      -0.437373E+009
          106.00      0.470000      -0.768667E+009
          108.00      0.460000      -0.788650E+009
          110.00      0.450000      -0.798760E+009
          112.00      0.440000      -0.808532E+009
          114.00      0.430000      -0.818176E+009
          116.00      0.420000      -0.827701E+009
          118.00      0.410000      -0.837107E+009
          120.00      0.400000      -0.846396E+009
          122.00      0.390000      -0.855571E+009
          124.00      0.380000      -0.864632E+009
          126.00      0.370000      -0.873582E+009
          128.00      0.360000      -0.882423E+009
          130.00      0.350000      -0.891155E+009
          132.00      0.340000      -0.899780E+009
          134.00      0.330000      -0.908300E+009
          136.00      0.320000      -0.916717E+009
          138.00      0.310000      -0.925032E+009
          140.00      0.300000      -0.933246E+009
          142.00      0.290000      -0.941361E+009
          144.00      0.280000      -0.949379E+009
          146.00      0.270000      -0.957301E+009
          148.00      0.260000      -0.965127E+009
          150.00      0.250000      -0.972860E+009
          152.00      0.240000      -0.980502E+009
          154.00      0.230000      -0.988052E+009
          156.00      0.220000      -0.995513E+009
          158.00      0.210000      -0.100289E+010
          160.00      0.200000      -0.101017E+010
          162.00      0.190000      -0.101737E+010
          164.00      0.180000      -0.102449E+010
          166.00      0.170000      -0.103152E+010
          168.00      0.160000      -0.103847E+010
          170.00      0.150000      -0.104534E+010
          172.00      0.140000      -0.105213E+010
          174.00      0.130000      -0.105884E+010
          176.00      0.120000      -0.106547E+010
          178.00      0.110000      -0.107203E+010
          180.00      0.100000      -0.107851E+010
          182.00      0.900000E-001 -0.108492E+010
          184.00      0.800000E-001 -0.109125E+010
          186.00      0.700000E-001 -0.109751E+010
          188.00      0.600000E-001 -0.110370E+010
          190.00      0.500000E-001 -0.110982E+010
          192.00      0.400000E-001 -0.111587E+010
          194.00      0.300000E-001 -0.112185E+010
          196.00      0.200000E-001 -0.112776E+010
          198.00      0.100000E-001 -0.113361E+010
          200.00       0.00000      -0.113939E+010
      *end
      
      *create,unia-2000.exp
      /ninp,2
      /nout,1
      /1,time
      /2,epto
      /3,s
      /temp,273
          20.000      0.100000E-001  0.722935E+008
          40.000      0.200000E-001  0.909380E+008
          60.000      0.300000E-001  0.109155E+009
          80.000      0.400000E-001  0.127067E+009
          100.00      0.500000E-001  0.144683E+009
          120.00      0.600000E-001  0.162006E+009
          140.00      0.700000E-001  0.179045E+009
          160.00      0.800000E-001  0.195802E+009
          180.00      0.900000E-001  0.212285E+009
          200.00      0.100000       0.228499E+009
          220.00      0.110000       0.244448E+009
          240.00      0.120000       0.260138E+009
          260.00      0.130000       0.275574E+009
          280.00      0.140000       0.290760E+009
          300.00      0.150000       0.305702E+009
          320.00      0.160000       0.320404E+009
          340.00      0.170000       0.334871E+009
          360.00      0.180000       0.349106E+009
          380.00      0.190000       0.363115E+009
          400.00      0.200000       0.376902E+009
          420.00      0.210000       0.390471E+009
          440.00      0.220000       0.403825E+009
          460.00      0.230000       0.416970E+009
          480.00      0.240000       0.429909E+009
          500.00      0.250000       0.442645E+009
          520.00      0.260000       0.455183E+009
          540.00      0.270000       0.467527E+009
          560.00      0.280000       0.479679E+009
          580.00      0.290000       0.491643E+009
          600.00      0.300000       0.503423E+009
          620.00      0.310000       0.515023E+009
          640.00      0.320000       0.526445E+009
          660.00      0.330000       0.537693E+009
          680.00      0.340000       0.548769E+009
          700.00      0.350000       0.559678E+009
          720.00      0.360000       0.570422E+009
          740.00      0.370000       0.581004E+009
          760.00      0.380000       0.591426E+009
          780.00      0.390000       0.601693E+009
          800.00      0.400000       0.611806E+009
          820.00      0.410000       0.621769E+009
          840.00      0.420000       0.631584E+009
          860.00      0.430000       0.641253E+009
          880.00      0.440000       0.650780E+009
          900.00      0.450000       0.660166E+009
          920.00      0.460000       0.669415E+009
          940.00      0.470000       0.678528E+009
          960.00      0.480000       0.687509E+009
          980.00      0.490000       0.696359E+009
          1000.0      0.500000       0.705081E+009
          1020.0      0.490000       0.990806E+008
          1040.0      0.480000      -0.506919E+009
          1060.0      0.470000      -0.705886E+009
          1080.0      0.460000      -0.719109E+009
          1100.0      0.450000      -0.727599E+009
          1120.0      0.440000      -0.735873E+009
          1140.0      0.430000      -0.744027E+009
          1160.0      0.420000      -0.752064E+009
          1180.0      0.410000      -0.759987E+009
          1200.0      0.400000      -0.767797E+009
          1220.0      0.390000      -0.775498E+009
          1240.0      0.380000      -0.783089E+009
          1260.0      0.370000      -0.790574E+009
          1280.0      0.360000      -0.797954E+009
          1300.0      0.350000      -0.805231E+009
          1320.0      0.340000      -0.812407E+009
          1340.0      0.330000      -0.819483E+009
          1360.0      0.320000      -0.826461E+009
          1380.0      0.310000      -0.833343E+009
          1400.0      0.300000      -0.840130E+009
          1420.0      0.290000      -0.846824E+009
          1440.0      0.280000      -0.853426E+009
          1460.0      0.270000      -0.859938E+009
          1480.0      0.260000      -0.866361E+009
          1500.0      0.250000      -0.872697E+009
          1520.0      0.240000      -0.878948E+009
          1540.0      0.230000      -0.885114E+009
          1560.0      0.220000      -0.891197E+009
          1580.0      0.210000      -0.897199E+009
          1600.0      0.200000      -0.903120E+009
          1620.0      0.190000      -0.908962E+009
          1640.0      0.180000      -0.914727E+009
          1660.0      0.170000      -0.920415E+009
          1680.0      0.160000      -0.926027E+009
          1700.0      0.150000      -0.931566E+009
          1720.0      0.140000      -0.937032E+009
          1740.0      0.130000      -0.942426E+009
          1760.0      0.120000      -0.947750E+009
          1780.0      0.110000      -0.953004E+009
          1800.0      0.100000      -0.958190E+009
          1820.0      0.900000E-001 -0.963309E+009
          1840.0      0.800000E-001 -0.968361E+009
          1860.0      0.700000E-001 -0.973348E+009
          1880.0      0.600000E-001 -0.978271E+009
          1900.0      0.500000E-001 -0.983131E+009
          1920.0      0.400000E-001 -0.987929E+009
          1940.0      0.300000E-001 -0.992666E+009
          1960.0      0.200000E-001 -0.997342E+009
          1980.0      0.100000E-001 -0.100196E+010
          2000.0       0.00000      -0.100652E+010
      *end
      
      /prep7
      tb,elas,1
      tbdat,,60.6e9,0.3
      
      tb,rate,1,,,anand
      tbdat,1,1e9
      tbdat,2,1
      tbdat,3,1
      tbdat,4,1
      tbdat,5,1
      tbdat,6,1e9
      tbdat,7,1e9
      tbdat,8,1
      tbdat,9,1.1
      
      tbft,fadd,1,aml,genr,anandex
      
      tbft,eadd,1,unia,unia-2.exp
      tbft,eadd,1,unia,unia-20.exp
      tbft,eadd,1,unia,unia-200.exp
      tbft,eadd,1,unia,unia-2000.exp
      
      tbft,set,1,aml,genr,anandex,tref,273
      tbft,solve,1,aml,genr,anandex,1,50
      tbft,fset,1,aml,genr,anandex
      
      /com,
      /com, Material Parameters
      /com,
      tblis,all,all
      fini
      /exit
      

      Example: Parameter-Fitting of a Plasticity Model Implemented via UserMat

            subroutine usermat(
           &                   matId, elemId,kDomIntPt, kLayer, kSectPt,
           &                   ldstep,isubst,keycut,
           &                   nDirect,nShear,ncomp,nStatev,nProp,
           &                   Time,dTime,Temp,dTemp,
           &                   stress,ustatev,dsdePl,sedEl,sedPl,epseq,
           &                   Strain,dStrain, epsPl, prop, coords, 
           &                   var0, defGrad_t, defGrad,
           &                   tsstif, epsZZ, cutFactor, 
           &                   var1, var2, var3, var4, var5,
           &                   var6, var7)
      c*************************************************************************
      c     *** primary function ***
      c
      c           user defined material constitutive model
      c
      c      Attention:
      c           User must define material constitutive law properly
      c           according to the stress state such as 3D, plane strain
      c           and axisymmetry, plane stress and beam.
      c
      c           a 3D material constitutive model can use for
      c           plane strain and axisymmetry cases.
      c
      c           When using shell elements, a plane stress algorithm
      c           must be use.
      c
      c                                             gal July, 1999
      c
      c       The following demonstrates a USERMAT subroutine for
      c       a plasticity model of 3D solid elements or plane elements
      c       in plane strain or axisymmetric stress state. The plasticity
      c       model is the same as TB, BISO.
      c       See "ANSYS user material subroutine USERMAT" for detailed
      c       description of how to write a USERMAT routine.
      c
      c*************************************************************************
      c
      c     input arguments
      c     ===============
      c      matId     (int,sc,i)               material #
      c      elemId    (int,sc,i)               element #
      c      kDomIntPt (int,sc,i)               "k"th domain integration point
      c      kLayer    (int,sc,i)               "k"th layer
      c      kSectPt   (int,sc,i)               "k"th Section point
      c      ldstep    (int,sc,i)               load step number
      c      isubst    (int,sc,i)               substep number
      c      nDirect   (int,sc,in)              # of direct components
      c      nShear    (int,sc,in)              # of shear components
      c      ncomp     (int,sc,in)              nDirect + nShear
      c      nstatev   (int,sc,l)               Number of state variables
      c      nProp     (int,sc,l)               Number of material ocnstants
      c
      c      Temp      (dp,sc,in)               temperature at beginning of
      c                                         time increment
      c      dTemp     (dp,sc,in)               temperature increment 
      c      Time      (dp,sc,in)               time at beginning of increment (t)
      c      dTime     (dp,sc,in)               current time increment (dt)
      c
      c      Strain   (dp,ar(ncomp),i)          Strain at beginning of time increment
      c      dStrain  (dp,ar(ncomp),i)          Strain increment
      c      prop     (dp,ar(nprop),i)          Material constants defined by TB,USER
      c      coords   (dp,ar(3),i)              current coordinates
      c      defGrad_t(dp,ar(3,3),i)            Deformation gradient at time t
      c      defGrad  (dp,ar(3,3),i)            Deformation gradient at time t+dt
      c
      c     input output arguments              
      c     ======================             
      c      stress   (dp,ar(nTesn),io)         stress
      c      ustatev   (dp,ar(nstatev),io)      user state variable
      c            ustatev(1)                     - equivalent plastic strain
      c            ustatev(2) - statev(1+ncomp)   - plastic strain vector
      c            ustatev(nStatev)               - von-Mises stress
      c      sedEl    (dp,sc,io)                elastic work
      c      sedPl    (dp,sc,io)                plastic work
      c      epseq    (dp,sc,io)                equivalent plastic strain
      c      tsstif   (dp,ar(2),io)             transverse shear stiffness
      c                                         tsstif(1) - Gxz
      c                                         tsstif(2) - Gyz
      c                                         tsstif(1) is also used to calculate hourglass
      c                                         stiffness, this value must be defined when low
      c                                         order element, such as 181, 182, 185 with uniform 
      c                                         integration is used.
      c      var?     (dp,sc,io)                not used, they are reserved arguments 
      c                                         for further development
      c
      c     output arguments
      c     ================
      c      keycut   (int,sc,io)               loading bisect/cut control
      c                                         0 - no bisect/cut
      c                                         1 - bisect/cut 
      c                                         (factor will be determined by ANSYS solution control)
      c      dsdePl   (dp,ar(ncomp,ncomp),io)   material jacobian matrix
      c      epsZZ    (dp,sc,o)                 strain epsZZ for plane stress,
      c                                         define it when accounting for thickness change 
      c                                         in shell and plane stress states
      c      cutFactor(dp,sc,o)                 time step size cut-back factor 
      c                                         define it if a smaller step size is wished
      c                                         recommended value is 0~1
      c
      c*************************************************************************
      c
      c      ncomp   6   for 3D  (nshear=3)
      c      ncomp   4   for plane strain or axisymmetric (nShear = 1)
      c      ncomp   3   for plane stress (nShear = 1)
      c      ncomp   3   for 3d beam      (nShear = 2)
      c      ncomp   1   for 1D (nShear = 0)
      c
      c      stresss and strains, plastic strain vectors
      c          11, 22, 33, 12, 23, 13    for 3D
      c          11, 22, 33, 12            for plane strain or axisymmetry
      c          11, 22, 12                for plane stress
      c          11, 13, 12                for 3d beam
      c          11                        for 1D
      c
      c      material jacobian matrix
      c        3D
      c           dsdePl    |  1111   1122   1133   1112   1123   1113 |
      c           dsdePl    |  2211   2222   2233   2212   2223   2213 |
      c           dsdePl    |  3311   3322   3333   3312   3323   3313 |
      c           dsdePl    |  1211   1222   1233   1212   1223   1213 |
      c           dsdePl    |  2311   2322   2333   2312   2323   2313 |
      c           dsdePl    |  1311   1322   1333   1312   1323   1313 |
      c        plane strain or axisymmetric (11, 22, 33, 12)
      c           dsdePl    |  1111   1122   1133   1112 |
      c           dsdePl    |  2211   2222   2233   2212 |
      c           dsdePl    |  3311   3322   3333   3312 |
      c           dsdePl    |  1211   1222   1233   1212 |
      c        plane stress (11, 22, 12)
      c           dsdePl    |  1111   1122   1112 |
      c           dsdePl    |  2211   2222   2212 |
      c           dsdePl    |  1211   1222   1212 |
      c        3d beam (11, 13, 12)
      c           dsdePl    |  1111   1113   1112 |
      c           dsdePl    |  1311   1313   1312 |
      c           dsdePl    |  1211   1213   1212 |
      c        1d
      c           dsdePl    |  1111 |
      c
      c*************************************************************************
      #include "impcom.inc"
      c
            INTEGER          
           &                 matId, elemId,
           &                 kDomIntPt, kLayer, kSectPt,
           &                 ldstep,isubst,keycut,
           &                 nDirect,nShear,ncomp,nStatev,nProp
            DOUBLE PRECISION 
           &                 Time,    dTime,   Temp,    dTemp,
           &                 sedEl,   sedPl,   epseq,   epsZZ,   cutFactor
            DOUBLE PRECISION 
           &                 stress  (ncomp  ), ustatev (nStatev),
           &                 dsdePl  (ncomp,ncomp),
           &                 Strain  (ncomp  ), dStrain (ncomp  ), 
           &                 epsPl   (ncomp  ), prop    (nProp  ), 
           &                 coords  (3),
           &                 defGrad (3,3),     defGrad_t(3,3),
           &                 tsstif  (2)
      c
      c***************** User defined part *************************************
      c
      c --- parameters
      c
            INTEGER          mcomp
            DOUBLE PRECISION HALF, THIRD, ONE, TWO, SMALL, ONEHALF,
           &                 ZERO, TWOTHIRD, ONEDM02, ONEDM05, sqTiny
            PARAMETER       (ZERO       = 0.d0,
           &                 HALF       = 0.5d0,
           &                 THIRD      = 1.d0/3.d0,
           &                 ONE        = 1.d0,
           &                 TWO        = 2.d0,
           &                 SMALL      = 1.d-08,
           &                 sqTiny     = 1.d-20,
           &                 ONEDM02    = 1.d-02,
           &                 ONEDM05    = 1.d-05,
           &                 ONEHALF    = 1.5d0,
           &                 TWOTHIRD   = 2.0d0/3.0d0,
           &                 mcomp      = 6
           &                 )
      c
      c --- local variables
      c
      c      sigElp   (dp,ar(6  ),l)            trial stress
      c      dsdeEl   (dp,ar(6,6),l)            elastic moduli
      c      sigDev   (dp,ar(6  ),l)            deviatoric stress tensor
      c      dfds     (dp,ar(6  ),l)            derivative of the yield function 
      c      JM       (dp,ar(6,6),l)            2D matrix for a 4 order tensor
      c      pEl      (dp,sc     ,l)            hydrostatic pressure stress
      c      qEl      (dp,sc     ,l)            von-mises stress
      c      pleq_t   (dp,sc     ,l)            equivalent plastic strain at beginnig of time increment
      c      pleq     (dp,sc     ,l)            equivalent plastic strain at end of time increment
      c      dpleq    (dp,sc     ,l)            incremental equivalent plastic strain
      c      sigy_t   (dp,sc     ,l)            yield stress at beginnig of time increments
      c      sigy     (dp,sc     ,l)            yield stress at end of time increment
      c      young    (dp,sc     ,l)            Young's modulus
      c      posn     (dp,sc     ,l)            Poiss's ratio
      c      sigy0    (dp,sc     ,l)            initial yield stress
      c      dsigdep  (dp,sc     ,l)            plastic slop
      c      twoG     (dp,sc     ,l)            two time of shear moduli
      c      threeG   (dp,sc     ,l)            three time of shear moduli
      c
      c --- temperary variables for solution purpose
      c      i, j
      c      threeOv2qEl, oneOv3G, qElOv3G, con1, con2, fratio
      c
            EXTERNAL         vzero, vmove, get_ElmData, get_ElmInfo
            DOUBLE PRECISION sigElp(mcomp), dsdeEl(mcomp,mcomp), G(mcomp),
           &                 sigDev(mcomp), JM    (mcomp,mcomp), dfds(mcomp),
           &                 sigi  (mcomp), strainEl(mcomp)
      
            DOUBLE PRECISION var0, var1, var2, var3, var4, var5,
           &                 var6, var7
      
            DATA G/1.0D0,1.0D0,1.0D0,0.0D0,0.0D0,0.0D0/
      c
            INTEGER          i, j, ncompgt
            DOUBLE PRECISION pEl,   qEl,     pleq_t,  sigy_t , sigy,
           &                 dpleq, pleq, 
           &                 young, posn,    sigy0,   dsigdep, 
           &                 elast1,elast2,
           &                 twoG,  threeG,  oneOv3G, qElOv3G, threeOv2qEl, 
           &                 fratio,  con1,    con2, dperr(3)
      c*************************************************************************
      c
            keycut   = 0
            cutFactor = 0.d0
            dsigdep  = ZERO 
            pleq_t   = ustatev(1)
            pleq     = pleq_t
      c *** get Young's modulus and Poisson's ratio, initial yield stress and others
            young    = prop(1)
            posn     = prop(2)
            sigy0    = prop(3)
      c *** plastic strain tensor
            call vmove(ustatev(2), epsPl(1), ncomp)
      c *** calculate plastic slope
            dsigdep  = young*prop(4)/(young-prop(4))
            twoG     = young / (ONE+posn)
            threeG   = ONEHALF * twoG
            elast1=young*posn/((1.0D0+posn)*(1.0D0-TWO*posn))
            elast2=HALF*twoG
      c *** define tsstif(1) since it is used for calculation of hourglass stiffness
            tsstif(1) = elast2
      c
      c *** calculate elastic stiffness matrix (3d)
      c
            dsdeEl(1,1)=(elast1+TWO*elast2)*G(1)*G(1)
            dsdeEl(1,2)=elast1*G(1)*G(2)+elast2*TWO*G(4)*G(4)
            dsdeEl(1,3)=elast1*G(1)*G(3)+elast2*TWO*G(5)*G(5)
            dsdeEl(1,4)=elast1*G(1)*G(4)+elast2*TWO*G(1)*G(4)
            dsdeEl(1,5)=elast1*G(1)*G(5)+elast2*TWO*G(1)*G(5)
            dsdeEl(1,6)=elast1*G(1)*G(6)+elast2*TWO*G(4)*G(5)
            dsdeEl(2,2)=(elast1+TWO*elast2)*G(2)*G(2)
            dsdeEl(2,3)=elast1*G(2)*G(3)+elast2*TWO*G(6)*G(6)
            dsdeEl(2,4)=elast1*G(2)*G(4)+elast2*TWO*G(1)*G(4)
            dsdeEl(2,5)=elast1*G(2)*G(5)+elast2*TWO*G(1)*G(5)
            dsdeEl(2,6)=elast1*G(2)*G(6)+elast2*TWO*G(2)*G(6)
            dsdeEl(3,3)=(elast1+TWO*elast2)*G(3)*G(3)
            dsdeEl(3,4)=elast1*G(3)*G(4)+elast2*TWO*G(5)*G(6)
            dsdeEl(3,5)=elast1*G(3)*G(5)+elast2*TWO*G(5)*G(3)
            dsdeEl(3,6)=elast1*G(3)*G(6)+elast2*TWO*G(6)*G(3)
            dsdeEl(4,4)=elast1*G(4)*G(4)+elast2*(G(1)*G(2)+G(4)*G(4))
            dsdeEl(4,5)=elast1*G(4)*G(5)+elast2*(G(1)*G(6)+G(5)*G(4))
            dsdeEl(4,6)=elast1*G(4)*G(6)+elast2*(G(4)*G(6)+G(5)*G(2))
            dsdeEl(5,5)=elast1*G(5)*G(5)+elast2*(G(1)*G(3)+G(5)*G(5))
            dsdeEl(5,6)=elast1*G(5)*G(6)+elast2*(G(4)*G(3)+G(5)*G(6))
            dsdeEl(6,6)=elast1*G(6)*G(6)+elast2*(G(2)*G(3)+G(6)*G(6))
            do i=1,ncomp-1
              do j=i+1,ncomp
                dsdeEl(j,i)=dsdeEl(i,j)
              end do
            end do
      c
      c
      c *** get initial stress
            call vzero(sigi(1),mcomp)
      c
      c *** calculate the trial stress and
      c     copy elastic moduli dsdeEl to material Jacobian matrix
            do i=1,ncomp
               strainEl(i) = Strain(i) + dStrain(i) - epsPl(i)
            end do
            call vzero(sigElp, 6)
            do i=1,ncomp
               do j=1,ncomp
                  dsdePl(j,i) = dsdeEl(j,i)
                  sigElp(i) = sigElp(i)+dsdeEl(j,i)*strainEl(j)
               end do
               sigElp(i) = sigElp(i) + sigi(i)
            end do
      
      c *** hydrostatic pressure stress
            pEl = -THIRD * (sigElp(1) + sigElp(2) + sigElp(3))
      c *** compute the deviatoric stress tensor
            sigDev(1) = sigElp(1) + pEl
            sigDev(2) = sigElp(2) + pEl
            sigDev(3) = sigElp(3) + pEl
            sigDev(4) = sigElp(4)
            sigDev(5) = sigElp(5)
            sigDev(6) = sigElp(6)
      c *** compute von-mises stress
            qEl = 
           &  sigDev(1) * sigDev(1)+sigDev(2) * sigDev(2)+
           &  sigDev(3) * sigDev(3)+
           &  TWO*(sigDev(4) * sigDev(4)+ sigDev(5) * sigDev(5)+ 
           &  sigDev(6) * sigDev(6))
            qEl = sqrt( ONEHALF * qEl)
      c *** compute current yield stress
            sigy    = sigy0 + dsigdep * pleq
      c
            fratio = qEl / sigy - ONE
      c *** check for yielding
            IF (sigy .LE. ZERO.or.fratio .LE. -SMALL) GO TO 500
      c
            sigy_t = sigy
            threeOv2qEl = ONEHALF / qEl
      c *** compute derivative of the yield function
            DO i=1, ncomp
               dfds(i) = threeOv2qEl * sigDev(i)
            END DO
            oneOv3G  = ONE / (threeG + dsigdep)
            qElOv3G  = qEl * oneOv3G
      c *** initial guess of incremental equivalent plastic strain   
            dpleq    = qElOv3G - sigy * oneOv3G
            pleq     = pleq_t + dpleq
            sigy     = sigy0 + dsigdep * pleq
      c
      c ***  update stresses
            DO i = 1 , ncomp
               stress(i) =  sigElp(i) - TWOTHIRD * (qEl-sigy) * dfds(i)
            END DO
      c
      c ***  update plastic strains
            DO i = 1 , nDirect
               epsPl(i) = epsPl(i) + dfds(i) * dpleq
            END DO
            DO i = nDirect + 1 , ncomp
               epsPl(i) = epsPl(i) + TWO * dfds(i) * dpleq
            END DO
            epseq  = pleq
      c *** Update state variables
            ustatev(1) = pleq
            do i=1,ncomp
               ustatev(i+1) = epsPl(i)
            end do
      c *** Update plastic work
            sedPl = sedPl + HALF * (sigy_t+sigy)*dpleq
      c
      c *** Material Jcobian matrix
      c
            IF (qEl.LT.sqTiny) THEN
               con1 = ZERO
            ELSE
               con1 = threeG * dpleq / qEl
            END IF
            con2 = threeG/(threeG+dsigdep) - con1
            con2 = TWOTHIRD * con2
            DO i=1,ncomp
               DO j=1,ncomp
                  JM(j,i) = ZERO
               END DO
            END DO
            DO i=1,nDirect
               DO j=1,nDirect
                  JM(i,j) = -THIRD
               END DO
               JM(i,i) = JM(i,i) + ONE
            END DO
            DO i=nDirect + 1,ncomp
               JM(i,i) = HALF
            END DO
            DO i=1,ncomp
               DO j=1,ncomp
                  dsdePl(i,j) =    dsdeEl(i,j) - twoG
           &           * (  con2 * dfds(i) * dfds(j) + con1 * JM(i,j) )
               END DO
            END DO
      c
            goto 600
        500 continue
      
      c *** Update stress in case of elastic/unloading
            do i=1,ncomp
               stress(i) = sigElp(i)
            end do
      
        600 continue
            sedEl = ZERO
            DO i = 1 , ncomp
               sedEl = sedEl + stress(i)*(Strain(i)+dStrain(i)-epsPl(i))
            END DO
            sedEl    = sedEl * HALF
            ustatev(nStatev) = sigy
      c
      !      cutFactor = 0.5d0
            return
            end
      
      c ================================================================
      c Start of Mechanical APDL command script
      c ================================================================
      /upf,usermat.F
      
      /prep7
      tb,user,1,2,5
      tbdata,1,20e5, 0.3, 1e4,1,1       ! E, posn, sigy, H, printout flag
      tb,state,1,,8
      tbdata,8,0
      
      tblis,all,all,
      
      ! Define Material
      tbft,fadd,1,aml,genr,umatexample
      
      ! Define Uniaxial Data
      tbft,eadd,1,unia,unia.exp
      tbft,list,1
      
      tbft,fix,1,aml,genr,umatexample,1,1
      tbft,fix,1,aml,genr,umatexample,2,1
      tbft,fix,1,aml,genr,umatexample,3,1
      tbft,fix,1,aml,genr,umatexample,5,1
      
      ! Activate parameter-scaling for optimizing parameters that can
      ! vary a lot. This improves convergence.
      tbft,psca,1,aml,genr,umatexample,4,expo
      ! Set the hardening coeff to 1 and see it get optimized
      tbft,set,1,aml,genr,umatexample,4,1
      
      tbft,solve,1,aml,genr,umatexample,1,50
      
      tbft,fset,1,aml,genr,umatexample
      
      tblis,all,all

      7.8.4. Example Geomechanical Curve-Fitting Problems

      The following example analyses are available for geomechanical curve-fitting:

        Example: Parameter-Fitting of Yield Surfaces

        This example uses the extended Drucker-Prager material model (TB,EDP).

        *create,ysurf.exp
        /ninp,1
        /nout,1
        /1,pres
        /2,seqv
        -0.30000E+01     0
        -0.25000E+01     0
        -0.20000E+01     0
        -0.15000E+01     0.18097E+01
        -0.10000E+01     0.41343E+01
        -0.50000E+00     0.61008E+01
         0.00000E+00     0.78900E+01
         0.50000E+00     0.95639E+01
         0.10000E+01     0.11154E+02
         0.15000E+01     0.12678E+02
         0.20000E+01     0.14149E+02
         0.25000E+01     0.15575E+02
         0.30000E+01     0.16964E+02
         0.35000E+01     0.18319E+02
         0.40000E+01     0.19644E+02
         0.45000E+01     0.20943E+02
         0.50000E+01     0.22219E+02
         0.55000E+01     0.23472E+02
         0.60000E+01     0.24706E+02
         0.65000E+01     0.25922E+02
         0.70000E+01     0.27121E+02
         0.75000E+01     0.28304E+02
         0.80000E+01     0.29473E+02
         0.85000E+01     0.30627E+02
         0.90000E+01     0.31769E+02
         0.95000E+01     0.32899E+02
         0.10000E+02     0.34017E+02
         0.10500E+02     0.35124E+02
         0.11000E+02     0.36221E+02
         0.11500E+02     0.37308E+02
         0.12000E+02     0.38386E+02
         0.12500E+02     0.39454E+02
         0.13000E+02     0.40514E+02
         0.13500E+02     0.41566E+02
         0.14000E+02     0.42610E+02
         0.14500E+02     0.43646E+02
         0.15000E+02     0.44674E+02
         0.15500E+02     0.45696E+02
         0.16000E+02     0.46712E+02
         0.16500E+02     0.47720E+02
         0.17000E+02     0.48721E+02
         0.17500E+02     0.49718E+02
         0.18000E+02     0.50708E+02
         0.18500E+02     0.51691E+02
         0.19000E+02     0.52671E+02
         0.19500E+02     0.53643E+02
         0.20000E+02     0.54611E+02
         0.20500E+02     0.55574E+02
         0.21000E+02     0.56532E+02
         0.21500E+02     0.57485E+02
         0.22000E+02     0.58433E+02
         0.22500E+02     0.59377E+02
         0.23000E+02     0.60316E+02
         0.23500E+02     0.61250E+02
         0.24000E+02     0.62181E+02
         0.24500E+02     0.63107E+02
         0.25000E+02     0.64030E+02
         0.25500E+02     0.64948E+02
         0.26000E+02     0.65863E+02
         0.26500E+02     0.66773E+02
         0.27000E+02     0.67680E+02
         0.27500E+02     0.68584E+02
         0.28000E+02     0.69483E+02
         0.28500E+02     0.70380E+02
         0.29000E+02     0.71273E+02
         0.29500E+02     0.72162E+02
         0.30000E+02     0.73048E+02
         0.30500E+02     0.73931E+02
         0.31000E+02     0.74811E+02
         0.31500E+02     0.75688E+02
         0.32000E+02     0.76562E+02
         0.32500E+02     0.77433E+02
         0.33000E+02     0.78300E+02
         0.33500E+02     0.79165E+02
         0.34000E+02     0.80027E+02
         0.34500E+02     0.80887E+02
         0.35000E+02     0.81744E+02
         0.35500E+02     0.82598E+02
         0.36000E+02     0.83449E+02
         0.36500E+02     0.84297E+02
         0.37000E+02     0.85143E+02
         0.37500E+02     0.85987E+02
         0.38000E+02     0.86829E+02
         0.38500E+02     0.87667E+02
         0.39000E+02     0.88503E+02
         0.39500E+02     0.89337E+02
         0.40000E+02     0.90169E+02
        *end
        
        /prep7
        /prep7
        ! Define linear elasticity constants
        tb,elas,1
        tbdata,,2.1e4,0.45
        
        b=1
        ys=7.89
        tb,edp,1,,,PYFUN
        tbdata,1,ainv,b,ys
        
        
        ! Add Experimental Data
        tbft,eadd,1,ysur,ysurf.exp
        
        ! Import or Create the Model
        tbft,fadd,1,aml,genr,edpmodel
        
        
        ! Solve
        tbft,solve,1,aml,genr,edpmodel,1,30
        
        ! Write to TB Table Storage
        tbft,fset,1,aml,genr,edpmodel
        
        /out
        /gopr
        tbft,list,1
        
        /exit

        Example: Parameter-Fitting of Flow Potentials

        This example with the extended Drucker-Prager material model (TB,EDP) fits flow-potential parameters using triaxial test data and previously fitted yield-surface parameters.

        *create,triaxial-0.6.exp
        /ninp,2
        /nout,2
        /1,epto
        /2,elat
        /3,s
        /4,slat
        -0.250000E-003 0.601429E-004 -5.61000     -0.600000     
        -0.500000E-003 0.135143E-003 -10.8600     -0.600000     
        -0.875000E-003 0.247643E-003 -18.7350     -0.600000     
        -0.143750E-002 0.607905E-003 -19.0033     -0.655546     
        -0.173281E-002 0.803442E-003 -18.8461     -0.607792     
        -0.202812E-002 0.996463E-003 -18.8108     -0.597087     
        -0.247109E-002 0.128480E-002 -18.8138     -0.598001     
        -0.313555E-002 0.171725E-002 -18.8200     -0.599858     
        -0.348438E-002 0.194433E-002 -18.8207     -0.600070     
        -0.383322E-002 0.217144E-002 -18.8205     -0.600025     
        -0.435648E-002 0.251209E-002 -18.8204     -0.599989     
        -0.500001E-002 0.293105E-002 -18.8203     -0.599957     
        *end
        
        *create,triaxial-0.8.exp
        /ninp,2
        /nout,2
        /1,epto
        /2,elat
        /3,s
        /4,slat
        -0.250000E-003 0.551905E-004 -5.73000     -0.800000     
        -0.500000E-003 0.130190E-003 -10.9800     -0.800000     
        -0.875000E-003 0.242690E-003 -18.8550     -0.800000     
        -0.143750E-002 0.592747E-003 -19.6248     -0.846103     
        -0.173281E-002 0.786120E-003 -19.5122     -0.811387     
        -0.202813E-002 0.978081E-003 -19.4700     -0.798410     
        -0.247109E-002 0.126473E-002 -19.4684     -0.797899     
        -0.313555E-002 0.169451E-002 -19.4738     -0.799565     
        -0.348438E-002 0.192017E-002 -19.4753     -0.800032     
        -0.383322E-002 0.214586E-002 -19.4753     -0.800041     
        -0.435648E-002 0.248441E-002 -19.4752     -0.800003     
        -0.500000E-002 0.290076E-002 -19.4752     -0.799994     
        *end
        
        *create,triaxial-1.0.exp
        /ninp,2
        /nout,2
        /1,epto
        /2,elat
        /3,s
        /4,slat
        -0.250000E-003 0.502381E-004 -5.85000      -1.00000     
        -0.500000E-003 0.125238E-003 -11.1000      -1.00000     
        -0.875000E-003 0.237738E-003 -18.9750      -1.00000     
        -0.143750E-002 0.577929E-003 -20.2424      -1.03809     
        -0.173281E-002 0.769365E-003 -20.1681      -1.01487     
        -0.202812E-002 0.960357E-003 -20.1189     -0.999513     
        -0.247109E-002 0.124543E-002 -20.1133     -0.997765     
        -0.313555E-002 0.167273E-002 -20.1183     -0.999325     
        -0.348438E-002 0.189707E-002 -20.1205      -1.00001     
        -0.383322E-002 0.212145E-002 -20.1207      -1.00005     
        -0.435648E-002 0.245803E-002 -20.1205      -1.00001     
        -0.500000E-002 0.287196E-002 -20.1205     -0.999993     
        *end
        
        *create,triaxial-1.2.exp
        /ninp,2
        /nout,2
        /1,epto
        /2,elat
        /3,s
        /4,slat
        -0.250000E-003 0.452857E-004 -5.97000      -1.20000     
        -0.500000E-003 0.120286E-003 -11.2200      -1.20000     
        -0.875000E-003 0.232786E-003 -19.0950      -1.20000     
        -0.143750E-002 0.563429E-003 -20.8558      -1.23131     
        -0.173281E-002 0.753125E-003 -20.8146      -1.21825     
        -0.202813E-002 0.943225E-003 -20.7583      -1.20043     
        -0.247109E-002 0.122681E-002 -20.7494      -1.19761     
        -0.313555E-002 0.165180E-002 -20.7542      -1.19913     
        -0.348438E-002 0.187491E-002 -20.7569      -1.19999     
        -0.383322E-002 0.209807E-002 -20.7572      -1.20006     
        -0.435648E-002 0.243282E-002 -20.7570      -1.20002     
        -0.500000E-002 0.284451E-002 -20.7570      -1.19999     
        *end
        
        *create,triaxial-1.4.exp
        /ninp,2
        /nout,2
        /1,epto
        /2,elat
        /3,s
        /4,slat
        -0.250000E-003  0.403333E-004 -6.09000      -1.40000     
        -0.500000E-003  0.115333E-003 -11.3400      -1.40000     
        -0.875000E-003  0.227833E-003 -19.2150      -1.40000     
        -0.143750E-002  0.549226E-003 -21.4651      -1.42560     
        -0.173281E-002  0.737352E-003 -21.4523      -1.42150     
        -0.202812E-002  0.926628E-003 -21.3889      -1.40119     
        -0.247109E-002  0.120883E-002 -21.3773      -1.39746     
        -0.313555E-002  0.163165E-002 -21.3820      -1.39898     
        -0.348438E-002  0.185361E-002 -21.3851      -1.39998     
        -0.383322E-002  0.207563E-002 -21.3854      -1.40007     
        -0.435648E-002  0.240867E-002 -21.3853      -1.40002     
        -0.500000E-002  0.281825E-002 -21.3852      -1.39999     
        *end
        
        /prep7
        tb,elas,1
        tbdata,,2.1e4,0.3
        
        E=2.1e4
        mu=0.3
        a=0.12
        ainv=1/a
        b=1.5
        ys=7.89
        
        tb,edp,1,,,PYFUN
        tbdata,1,ainv,b,ys
        
        ! yield surface parameters are a reasonable initial guess for
        ! flow potential parameters
        tb,edp,1,,,PFPOT
        tbdata,1,ainv,b
        
        tbft,fadd,1,aml,genr,testprob
        tbft,eadd,1,tria,triaxial-0.6.exp
        tbft,eadd,1,tria,triaxial-0.8.exp
        tbft,eadd,1,tria,triaxial-1.0.exp
        tbft,eadd,1,tria,triaxial-1.2.exp
        tbft,eadd,1,tria,triaxial-1.4.exp
        
        ! Fixing all non flow potential parameters
        tbft,fix,1,aml,genr,testprob,1,1
        tbft,fix,1,aml,genr,testprob,2,1
        tbft,list,1
        
        tbft,solve,1,aml,genr,testprob,1,100
        tbft,fset,1,aml,genr,testprob
        
        /out
        /gopr
        tblis,all,all
        
        fini
        /exit

        Example: Parameter-Fitting of the EDP Cap Model

        This example with the extended Drucker-Prager cap material model (TB,EDP,,,CYFUN) fits the EDP Cap model with sqj2 (square root of J2) vs. i1 experimental data.

        /title Curve-Fitting EDP Cap Model's yield surface
        *create,ysurf.exp
        /ninp,1
        /nout,1
        /1,i1
        /2,sqj2
        /ztol,1e-5
        -1.35E+01	3.49E-10
        -1.20E+01	3.49E-10
        -1.05E+01	3.49E-10
        -9.00E+00	2.37E+00
        -7.50E+00	4.35E+00
        -6.00E+00	5.26E+00
        -4.50E+00	6.09E+00
        -3.00E+00	6.44E+00
        -1.50E+00	6.89E+00
        0.00E+00	6.95E+00
        1.50E+00	7.06E+00
        3.00E+00	7.09E+00
        4.50E+00	7.06E+00
        6.00E+00	7.04E+00
        7.50E+00	7.18E+00
        9.00E+00	7.17E+00
        1.05E+01	7.45E+00
        1.20E+01	7.41E+00
        1.35E+01	7.41E+00
        1.50E+01	7.65E+00
        1.65E+01	7.61E+00
        1.80E+01	7.52E+00
        1.95E+01	7.86E+00
        2.10E+01	7.79E+00
        2.25E+01	7.79E+00
        2.40E+01	7.90E+00
        2.55E+01	7.88E+00
        2.70E+01	8.20E+00
        2.85E+01	8.03E+00
        3.00E+01	8.13E+00
        3.15E+01	8.22E+00
        3.30E+01	8.25E+00
        3.45E+01	8.28E+00
        3.60E+01	8.53E+00
        3.75E+01	8.55E+00
        3.90E+01	8.65E+00
        4.05E+01	8.50E+00
        4.20E+01	8.84E+00
        4.35E+01	8.62E+00
        4.50E+01	8.98E+00
        4.65E+01	8.97E+00
        4.80E+01	9.13E+00
        4.95E+01	8.89E+00
        5.10E+01	9.16E+00
        5.25E+01	9.23E+00
        5.40E+01	9.13E+00
        5.55E+01	9.39E+00
        5.70E+01	9.54E+00
        5.85E+01	9.32E+00
        6.00E+01	9.50E+00
        6.15E+01	9.52E+00
        6.30E+01	9.80E+00
        6.45E+01	9.77E+00
        6.60E+01	9.61E+00
        6.75E+01	9.67E+00
        6.90E+01	9.86E+00
        7.05E+01	9.68E+00
        7.20E+01	9.65E+00
        7.35E+01	9.14E+00
        7.50E+01	8.46E+00
        7.65E+01	7.30E+00
        7.80E+01	5.76E+00
        7.95E+01	3.06E+00
        8.10E+01	3.49E-10
        8.25E+01	3.46E-10
        8.40E+01	3.52E-10
        8.55E+01	3.49E-10
        8.70E+01	3.50E-10
        8.85E+01	3.49E-10
        *end
        
        /prep7
        /prep7
        ! Define linear elasticity constants
        tb,elas,1
        tbdat,,1.2e3,0.0
        
        ! Cap yield function
        tb,edp ,1,1,,cyfun
        tbdata,1,1	          ! Rc 
        tbdata,2,1        ! Rt 
        tbdata,3,-80        ! Xi 
        tbdata,4,10         ! SIGMA 
        tbdata,5,1      ! B 
        tbdata,6,1	          ! A 
        tbdata,7,1      ! ALPHA 
        tbdata,8,1        ! PSI 
        
        ! Define hardening for cap-compaction portion
        tbdata,9,0.45        ! W1c
        tbdata,10,0  ! D1c
        tbdata,11,0.0       ! D2c
        
        
        
        tbft,fadd,1,aml,genr,edpmodel
        tbft,eadd,1,j2i1,ysurf.exp
        TBFPLOT,1,'amgenredpmodel',1,1,2,3
        
        ! Fix Xi and Sigma from the experimental data
        tbft,fix,1,aml,genr,edpmodel,3,1
        tbft,fix,1,aml,genr,edpmodel,4,1
        
        tbft,fix,1,aml,genr,edpmodel,9,1
        tbft,fix,1,aml,genr,edpmodel,10,1
        tbft,fix,1,aml,genr,edpmodel,11,1
        tbft,fix,1,aml,genr,edpmodel,12,1
        tbft,fix,1,aml,genr,edpmodel,13,1
        
        /out,scratch
        tbft,solv,1,aml,genr,edpmodel,1,20
        tbft,list,1
        
        /out
        /gopr
        tblis,all,all
        
        /exit

        7.8.5. Example Creep Curve-Fitting Problems

        The following example analyses are available for creep curve-fitting:

          Example: Parameter-Fitting of a Generalized Exponential Creep Model

          /title, Test AML with Creep Fitting (Generalized Exponential) 
          
          *CREATE,cfcr-gx1-exp1.exp 
          /1,seqv 
          /2,time 
          /3,temp 
          /4,dcre 
          /ninp,3 
          /nout,1 
          48000	0.00000001	600	0.139561881 
          48000	100	600	0.136537485 
          48000	200	600	0.13357863 
          48000	350	600	0.129260137 
          48000	575	600	0.123042756 
          48000	912.5	600	0.11427289 
          48000	1418.8	600	0.102274931 
          48000	2178.1	600	0.086600907 
          48000	3178.1	600	0.069562197 
          48000	4178.1	600	0.055875849 
          48000	5178.1	600	0.044882287 
          48000	6178.1	600	0.036051707 
          48000	7178.1	600	0.028958541 
          48000	8178.1	600	0.023260954 
          48000	9178.1	600	0.018684366 
          48000	10000	600	0.015605413 
          49000	0.00000001	600	0.156321405 
          48999.9	100	600	0.152897388 
          49000	200	600	0.14955172 
          49000	350	600	0.144667553 
          49000	575	600	0.13763875 
          49000	912.5	600	0.127730642 
          49000	1418.8	600	0.114188365 
          49000	2178.1	600	0.096522022 
          49000	3178.1	600	0.077355505 
          49000	4178.1	600	0.061994912 
          49000	5178.1	600	0.049684493 
          49000	6178.1	600	0.039818572 
          49000	7178.1	600	0.031911741 
          49000	8178.1	600	0.025574981 
          49000	9178.1	600	0.02049652 
          49000	10000	600	0.017087032 
          50000	0.00000001	600	0.174692811 
          49999.9	100	600	0.170828035 
          50000	200	600	0.167052428 
          50000	350	600	0.161542245 
          50000	575	600	0.153615873 
          50000	912.5	600	0.142449544 
          50000	1418.8	600	0.127201919 
          50000	2178.1	600	0.107338898 
          50000	3178.1	600	0.085831348 
          50000	4178.1	600	0.068633277 
          50000	5178.1	600	0.054881192 
          50000	6178.1	600	0.04388462 
          50000	7178.1	600	0.035091436 
          50000	8178.1	600	0.028060147 
          50000	9178.1	600	0.022437721 
          50000	10000	600	0.018670805 
          51000	0.00000001	600	0.19479418 
          50999.9	100	600	0.190442359 
          51000	200	600	0.186191768 
          51000	350	600	0.179990197 
          51000	575	600	0.171072977 
          51000	912.5	600	0.15851861 
          51000	1418.8	600	0.141391602 
          51000	2178.1	600	0.119111411 
          51000	3178.1	600	0.095033312 
          51000	4178.1	600	0.075822546 
          51000	5178.1	600	0.060495192 
          51000	6178.1	600	0.048266228 
          51000	7178.1	600	0.03850932 
          51000	8178.1	600	0.03072475 
          51000	9178.1	600	0.024513812 
          51000	10000	600	0.020361087 
          52000	0.00000001	600	0.216749647 
          51999.8	100	600	0.211858451 
          52000	200	600	0.207086374 
          52000	350	600	0.200122706 
          52000	575	600	0.190113795 
          52000	912.5	600	0.176031151 
          52000	1418.8	600	0.156836962 
          52000	2178.1	600	0.131902072 
          52000	3178.1	600	0.105006755 
          52000	4178.1	600	0.083595492 
          52000	5178.1	600	0.066550064 
          52000	6178.1	600	0.052980262 
          52000	7178.1	600	0.042177392 
          52000	8178.1	600	0.033577267 
          52000	9178.1	600	0.026730739 
          52000	10000	600	0.022162289 
          53000	0.00000001	600	0.240689581 
          52999.8	100	600	0.235206916 
          53000	200	600	0.229858661 
          53000	350	600	0.222056534 
          53000	575	600	0.210847077 
          53000	912.5	600	0.195084887 
          53000	1418.8	600	0.173621175 
          53000	2178.1	600	0.145776085 
          53000	3178.1	600	0.115798834 
          53000	4178.1	600	0.091986075 
          53000	5178.1	600	0.073070148 
          53000	6178.1	600	0.058044075 
          53000	7178.1	600	0.046107948 
          53000	8178.1	600	0.036626355 
          53000	9178.1	600	0.029094547 
          53000	10000	600	0.024078882 
          *END 
          
          /prep7 
          tb,creep,1,,,3 
          tbdata,1,1e-10,0,0,0,1e-4 
          ! Add the Creep Data 
          tbft,eadd,1,creep,cfcr-gx1-exp1.exp 
          
          ! Construct the Fitting Function 
          tbft,fadd,1,aml,genr,crexample, 
          
          tbft,fix,1,aml,genr,crexample,4,1 
          
          ! Original Solution  
          ! 1) 2.50E-21	 
          ! 2)  5 
          ! 3)	0.5 
          ! 4)	0 
          ! 5)	1.00E-06 
           
          
          ! Solve 
          tbft,solve,1,aml,genr,crexample,1,50 
          ! Save 
          tbft,fset,1,aml,genr,crexample, 
          tblis,all,all 

          Example: Parameter-Fitting of Temperature-Dependent Creep Data

          /title,Test AML + Creep,Exponential Form wit Temp Dependent Data 
          *CREATE,cfcr-ex2-exp1.exp 
          /1,seqv 
          /2,dcre 
          /temp,100 
          48000	2.18712E-06 
          49000	2.2091E-06 
          50000	2.2313E-06 
          51000	2.25373E-06 
          52100	2.27865E-06 
          53100	2.30156E-06 
          54000	2.32236E-06 
          55000	2.3457E-06 
          56000	2.36928E-06 
          57000	2.39309E-06 
          58000	2.41714E-06 
          59000	2.44143E-06 
          *END 
          
          *CREATE,cfcr-ex2-exp2.exp 
          /1,seqv 
          /2,dcre 
          /temp,200 
          48000  5.94521E-06 
          49000  6.00496E-06 
          50000  6.06531E-06 
          51000  6.12626E-06 
          52100  6.19402E-06 
          53100  6.25628E-06 
          54000  6.31284E-06 
          55000  6.37628E-06 
          56000  6.44036E-06 
          57000  6.50509E-06 
          58000  6.57047E-06 
          59000  6.6365E-06 
          *END 
          
          *CREATE,cfcr-ex2-exp3.exp 
          /1,seqv 
          /2,dcre 
          /temp,300 
          48000	8.2972E-06 
          49000	8.38059E-06 
          50000	8.46482E-06 
          51000	8.54989E-06 
          52100	8.64446E-06 
          53100	8.73134E-06 
          54000	8.81027E-06 
          55000	8.89882E-06 
          56000	8.98825E-06 
          57000	9.07859E-06 
          58000	9.16983E-06 
          59000	9.26199E-06 
          *END 
          
          *CREATE,cfcr-ex2-exp4.exp 
          /1,seqv 
          /2,dcre 
          /temp,400 
          48000	9.80199E-06 
          49000	9.9005E-06 
          50000	0.00001 
          51000	1.01005E-05 
          52100	1.02122E-05 
          53100	1.03149E-05 
          54000	1.04081E-05 
          55000	1.05127E-05 
          56000	1.06184E-05 
          57000	1.07251E-05 
          58000	1.08329E-05 
          59000	1.09417E-05 
          *END 
          
          /prep7 
          tb,elas,1 
          tbdata,1,1000,0.3 
          tb,creep,1,,,9 
          tbdata,1,1,1e7,0 
          
          ! Add the Creep Data 
          tbft,eadd,1,creep,cfcr-ex2-exp1.exp 
          tbft,eadd,1,creep,cfcr-ex2-exp2.exp 
          tbft,eadd,1,creep,cfcr-ex2-exp3.exp 
          tbft,eadd,1,creep,cfcr-ex2-exp4.exp 
          
          ! Construct the Fitting Function 
          tbft,fadd,1,aml,genr,crex, 
          
          ! Solve 
          tbft,fix,1,aml,genr,crex,3,1 
          tbft,set,1,aml,genr,crex,tdep,1 
          tbft,set,1,aml,genr,crex,tref,all 
          tbft,solve,1,aml,genr,crex,1,100 
          
          ! List 
          tbft,fset,1,aml,genr,crex, 
          tblis,all,all