SPEED
GET_MECH_PROP_NH_ENHANCED.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine get_mech_prop_nh_enhanced (ie, nn, nn_loc, cs_nnz_loc, cs_loc, rho_nhe, lambda_nhe, mu_nhe, qs_nh, fmax, rho_el, lambda_el, mu_el, gamma_el)
 ...Not-Honoring Enhanced (NHE) Implementation
 

Function/Subroutine Documentation

◆ get_mech_prop_nh_enhanced()

subroutine get_mech_prop_nh_enhanced ( integer*4  ie,
integer*4  nn,
integer*4  nn_loc,
integer*4  cs_nnz_loc,
integer*4, dimension(0:cs_nnz_loc)  cs_loc,
real*8, dimension(nn_loc)  rho_nhe,
real*8, dimension(nn_loc)  lambda_nhe,
real*8, dimension(nn_loc)  mu_nhe,
real*8  qs_nh,
real*8  fmax,
real*8, dimension(nn,nn,nn)  rho_el,
real*8, dimension(nn,nn,nn)  lambda_el,
real*8, dimension(nn,nn,nn)  mu_el,
real*8, dimension(nn,nn,nn)  gamma_el 
)

...Not-Honoring Enhanced (NHE) Implementation

Author
Srihari Sangaraju
Date
August, 2020
Version
1.0

Definition at line 25 of file GET_MECH_PROP_NH_ENHANCED.f90.

28
29 implicit none
30
31 integer*4 :: ie, cs_nnz_loc, nn, nn_loc
32 integer*4 :: r, q, p, is, ic
33 integer*4, dimension(0:cs_nnz_loc) :: cs_loc
34
35 real*8 :: qs_nh, fmax, gamma
36 real*8, dimension(nn,nn,nn) :: rho_el, lambda_el, mu_el, gamma_el
37 real*8, dimension(nn_loc) :: rho_nhe, lambda_nhe, mu_nhe
38
39 if (qs_nh.le.1) then
40 gamma = 0.d0;
41 else
42 gamma = 4.d0*datan(1.d0)*fmax/qs_nh;
43 endif
44
45 do r = 1,nn
46 do q = 1,nn
47 do p = 1,nn
48 is = nn*nn*(r -1) +nn*(q -1) +p
49 ic = cs_loc(cs_loc(ie -1) +is)
50
51 rho_el(p,q,r) = rho_nhe(ic)
52 lambda_el(p,q,r) = lambda_nhe(ic)
53 mu_el(p,q,r) = mu_nhe(ic)
54 gamma_el(p,q,r) = gamma
55 enddo
56 enddo
57 enddo
58
59

Referenced by make_extint_forces().

Here is the caller graph for this function: