@@ -561,6 +561,8 @@ subroutine setup_mesh_material_properties()
561
561
double precision :: c33min_glob,c33max_glob,c35min_glob,c35max_glob
562
562
double precision :: c55min_glob,c55max_glob
563
563
564
+ logical :: has_poroelasticity, has_anisotropy
565
+
564
566
! vtk output
565
567
character (len= MAX_STRING_LEN) :: filename,prname
566
568
double precision ,dimension (:,:,:),allocatable :: tmp_store
@@ -945,16 +947,25 @@ subroutine setup_mesh_material_properties()
945
947
tmp_val = maxval (qmu_attenuation_store)
946
948
call max_all_dp(tmp_val, qmumax_glob)
947
949
948
- if (any_poroelastic) then
950
+ ! poroelasticity
951
+ ! check if any poroelastic elements in domains
952
+ call any_all_l(any_poroelastic,has_poroelasticity)
953
+ if (has_poroelasticity) then
949
954
! vpII
950
- call min_all_dp(vpIImin_glob, vpIImin_glob)
951
- call max_all_dp(vpIImax_glob, vpIImax_glob)
955
+ tmp_val = vpIImin_glob
956
+ call min_all_dp(tmp_val, vpIImin_glob)
957
+ tmp_val = vpIImax_glob
958
+ call max_all_dp(tmp_val, vpIImax_glob)
952
959
! phi
953
- call min_all_dp(phimin_glob, phimin_glob)
954
- call max_all_dp(phimax_glob, phimax_glob)
960
+ tmp_val = phimin_glob
961
+ call min_all_dp(tmp_val, phimin_glob)
962
+ tmp_val = phimax_glob
963
+ call max_all_dp(tmp_val, phimax_glob)
955
964
endif
956
965
957
- if (any_anisotropy) then
966
+ ! anisotropy
967
+ call any_all_l(any_anisotropy,has_anisotropy)
968
+ if (has_anisotropy) then
958
969
! c11
959
970
tmp_val = minval (c11store)
960
971
call min_all_dp(tmp_val, c11min_glob)
@@ -1017,13 +1028,13 @@ subroutine setup_mesh_material_properties()
1017
1028
write (IMAIN,* ) ' vs : min/max = ' ,sngl(vsmin_glob),' /' ,sngl(vsmax_glob)
1018
1029
write (IMAIN,* ) ' vp : min/max = ' ,sngl(vpmin_glob),' /' ,sngl(vpmax_glob)
1019
1030
write (IMAIN,* )
1020
- if (any_poroelastic ) then
1031
+ if (has_poroelasticity ) then
1021
1032
write (IMAIN,* ) ' poroelasticity:'
1022
1033
write (IMAIN,* ) ' vpII: min/max = ' ,sngl(vpIImin_glob),' /' ,sngl(vpIImax_glob)
1023
1034
write (IMAIN,* ) ' phi : min/max = ' ,sngl(phimin_glob),' /' ,sngl(phimax_glob)
1024
1035
write (IMAIN,* )
1025
1036
endif
1026
- if (any_anisotropy ) then
1037
+ if (has_anisotropy ) then
1027
1038
write (IMAIN,* ) ' anisotropy:'
1028
1039
write (IMAIN,* ) ' c11: min/max = ' ,sngl(c11min_glob),' /' ,sngl(c11max_glob)
1029
1040
write (IMAIN,* ) ' c12: min/max = ' ,sngl(c12min_glob),' /' ,sngl(c12max_glob)
0 commit comments