Set heat-flux vector variables (anisotropic HTC only): the full Cartesian heat-flux vector, decomposed into field-aligned/cross-field parts
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | ndir | |||
| logical, | intent(in), | optional | :: | need_bc |
function var_set_qvec(ndir, need_bc) result(iw) integer, intent(in) :: ndir logical, intent(in), optional :: need_bc integer :: iw(ndir), idir logical :: add_bc add_bc = .true. if (present(need_bc)) add_bc = need_bc if (allocated(iw_qvec)) call errormsg("Error: set_qvec was already called") allocate(iw_qvec(ndir)) do idir = 1, ndir nwflux = nwflux + 1 nw = nw + 1 if (add_bc) nwfluxbc = nwfluxbc + 1 iw_qvec(idir) = nwflux iw(idir) = nwflux write(cons_wnames(nwflux),"(A4,I1)") "qvec", idir write(prim_wnames(nwflux),"(A4,I1)") "qvec", idir end do end function var_set_qvec