890
891
892
893
894
895#include "implicit_f.inc"
896#include "mvsiz_p.inc"
897#include "impl1_c.inc"
898
899
900
901 LOGICAL PLAT(*)
902 INTEGER JFT,JLT,IDRIL,IFINI
904 . vqn(mvsiz,3,4),vf(mvsiz,3,4),vm(mvsiz,2,4),vq(mvsiz,3,3),
905 . corel(mvsiz,2,4),di(mvsiz,6),db(mvsiz,3,4),z1(*)
907 . f11(mvsiz), f12(mvsiz), f13(mvsiz), f14(mvsiz),
908 . f21(mvsiz), f22(mvsiz), f23(mvsiz), f24(mvsiz),
909 . f31(mvsiz), f32(mvsiz), f33(mvsiz), f34(mvsiz),
910 . m11(mvsiz), m12(mvsiz), m13(mvsiz), m14(mvsiz),
911 . m21(mvsiz), m22(mvsiz), m23(mvsiz), m24(mvsiz),
912 . m31(mvsiz), m32(mvsiz), m33(mvsiz), m34(mvsiz),
913
914 . fzero(3,4,*),diz(mvsiz,3),vmz(mvsiz,4)
915
916
917
918 INTEGER , J, K
920 . mm(3,4),fl(3,4),ml(2,4),c1,
921 . ar(3),ad(4),alr(3),ald(4),dbad(3),
922 . temp1, temp2, temp3,arz
923
924 IF(ifini > 0 )THEN
925 DO k=jft,jlt
926
927
928 fl(1,1)= vf(k,1,1)+vf(k,1,3)
929 fl(1,2)= vf(k,1,2)+vf(k,1,4)
930 fl(1,3)=-vf(k,1,1)+vf(k,1,3)
931 fl(1,4)=-vf(k,1,2)+vf(k,1,4)
932
933 fl(2,1)= vf(k,2,1)+vf(k,2,3)
934 fl(2,2)= vf(k,2,2)+vf(k,2,4)
935 fl(2,3)=-vf(k,2,1)+vf(k,2,3)
936 fl(2,4)=-vf(k,2,2)+vf(k,2,4)
937
938 fl(3,1)= vf(k,3,1)+vf(k,3,3)
939 fl(3,2)= vf(k,3,2)+vf(k,3,4)
940 fl(3,3)=-vf(k,3,1)+vf(k,3,3)
941 fl(3,4)=-vf(k,3,2)+vf(k,3,4)
942
943
944 fl(1,1)=fl(1,1)+fzero(1,1,k)
945 fl(1,2)=fl(1,2)+fzero(1,2,k)
946 fl(1,3)=fl(1,3)+fzero(1,3,k)
947 fl(1,4)=fl(1,4)+fzero(1,4,k)
948
949 fl(2,1)=fl(2,1)+fzero(2,1,k)
950 fl(2,2)=fl(2,2)+fzero(2,2,k)
951 fl(2,3)=fl(2,3)+fzero(2,3,k)
952 fl(2,4)=fl(2,4)+fzero(2,4,k)
953
954 fl(3,1)= fl(3,1)+fzero(3,1,k)
955 fl(3,2)= fl(3,2)+fzero(3,2,k)
956 fl(3,3)= fl(3,3)+fzero(3,3,k)
957 fl(3,4)= fl(3,4)+fzero(3,4,k)
958
959
960 ml(1,1)= vm(k,1,1)+vm(k,1,3)
961 ml(1,2)= vm(k,1,2)+vm(k,1,4)
962 ml(1,3)=-vm(k,1,1)+vm(k,1,3)
963 ml(1,4)=-vm(k,1,2)+vm(k,1,4)
964
965 ml(2,1)= vm(k,2,1)+vm(k,2,3)
966 ml(2,2)= vm(k,2,2)+vm(k,2,4)
967 ml(2,3)=-vm(k,2,1)+vm(k,2,3)
968 ml(2,4)=-vm(k,2,2)+vm(k,2,4)
969
970
971
972 IF (plat(k)) THEN
973
974
975
976 f11(k)= vq(k,1,1)*fl(1,1)+vq(k,1,2)*fl(2,1)+vq(k,1,3)*fl(3,1)
977 m11(k)= vq(k,1,1)*ml(1,1)+vq(k,1,2)*ml(2,1)
978
979 f21(k)= vq(k,2,1)*fl(1,1)+vq(k,2,2)*fl(2,1)+vq(k,2,3)*fl(3,1)
980 m21(k)= vq(k,2,1)*ml(1,1)+vq(k,2,2)*ml(2,1)
981
982 f31(k)= vq(k,3,1)*fl(1,1)+vq(k,3,2)*fl(2,1)+vq(k,3,3)*fl(3,1)
983 m31(k)= vq(k,3,1)*ml(1,1)+vq(k,3,2)*ml(2,1)
984
985
986
987 f12(k)= vq(k,1,1)*fl(1,2)+vq(k,1,2)*fl(2,2)+vq(k,1,3)*fl(3,2)
988 m12(k)= vq(k,1,1)*ml(1,2)+vq(k,1,2)*ml(2,2)
989
990 f22(k)= vq(k,2,1)*fl(1,2)+vq(k,2,2)*fl(2,2)+vq(k,2,3)*fl(3,2)
991 m22(k)= vq(k,2,1)*ml(1,2)+vq(k,2,2)*ml(2,2)
992
993 f32(k)= vq(k,3,1)*fl(1,2)+vq(k,3,2)*fl(2,2)+vq(k,3,3)*fl(3,2)
994 m32(k)= vq(k,3,1)*ml(1,2)+vq(k,3,2)*ml(2,2)
995
996
997
998 f13(k)= vq(k,1,1)*fl(1,3)+vq(k,1,2)*fl(2,3)+vq(k,1,3)*fl(3,3)
999 m13(k)= vq(k,1,1)*ml(1,3)+vq(k,1,2)*ml(2,3)
1000
1001 f23(k)= vq(k,2,1)*fl(1,3)+vq(k,2,2)*fl(2,3)+vq(k,2,3)*fl(3,3)
1002 m23(k)= vq(k,2,1)*ml(1,3)+vq(k,2,2)*ml(2,3)
1003
1004 f33(k)= vq(k,3,1)*fl(1,3)+vq(k,3,2)*fl(2,3)+vq(k,3,3)*fl(3,3)
1005 m33(k)= vq(k,3,1)*ml(1,3)+vq(k,3,2)*ml(2,3)
1006
1007
1008
1009 f14(k)= vq(k,1,1)*fl(1,4)+vq(k,1,2)*fl(2,4)+vq
1010 m14(k)= vq(k,1,1)*ml(1,4)+vq(k,1,2)*ml(2,4)
1011
1012 f24(k)= vq(k,2,1)*fl(1,4)+vq(k,2,2)*fl(2,4)+vq(k,2,3)*fl(3,4)
1013 m24(k)= vq(k,2,1)*ml(1,4)+vq(k,2,2)*ml(2,4)
1014
1015 f34(k)= vq(k,3,1)*fl(1,4)+vq(k,3,2)*fl(2,4)+vq(k,3,3)*fl(3,4)
1016 m34(k)= vq(k,3,1)*ml(1,4)+vq(k,3,2)*ml(2,4)
1017
1018 IF (idril>0) THEN
1019 m11(k)= m11(k)+ vq(k,1,3)*vmz(k,1)
1020 m21(k)= m21(k)+ vq(k,2,3)*vmz(k,1)
1021 m31(k)= m31(k)+ vq(k,3,3)*vmz(k,1)
1022
1023 m12(k)= m12(k)+ vq(k,1,3)*vmz(k,2)
1024 m22(k)= m22(k)+ vq(k,2,3)*vmz(k,2)
1025 m32(k)= m32(k)+ vq(k,3,3)*vmz(k,2)
1026
1027 m13(k)= m13(k)+ vq(k,1,3)*vmz(k,3)
1028 m23(k)= m23(k)+ vq(k,2,3)*vmz(k,3)
1029 m33(k)= m33(k)+ vq(k,3,3)*vmz(k,3)
1030
1031 m14(k)= m14(k)+ vq(k,1,3)*vmz(k,4)
1032 m24(k)= m24(k)+ vq(k,2,3)*vmz(k,4)
1033 m34(k)= m34(k)+ vq(k,3,3)*vmz(k,4)
1034 END IF
1035
1036 ELSE
1037 IF (impl_s>0.AND.ikproj<=0) THEN
1038
1039
1040
1041 mm(1,1)=(one-vqn(k,1,1)*vqn(k,1,1))*ml(1,1)-
1042 1 vqn(k,1,1)*vqn(k,2,1) *ml(2,1)
1043 mm(2,1)=(one-vqn(k,2,1)*vqn(k,2,1))*ml(2,1)-
1044 1 vqn(k,1,1)*vqn(k,2,1) *ml(1,1)
1045 mm(3,1)= -vqn(k,1,1)*vqn(k,3,1) *ml(1,1)-
1046 1 vqn(k,2,1)*vqn(k,3,1) *ml(2,1)
1047
1048
1049 mm(1,2)=(one - vqn(k,1,2)*vqn(k,1,2))*ml(1,2)-
1050 1 vqn(k,1,2)*vqn(k,2,2) *ml(2,2)
1051 mm(2,2)=(one - vqn(k,2,2)*vqn(k,2,2))*ml(2,2)-
1052 1 vqn(k,1,2)*vqn(k,2,2) *ml(1,2)
1053 mm(3,2)= -vqn(k,1,2)*vqn(k,3,2) *ml(1,2)-
1054 1 vqn(k,2,2)*vqn(k,3,2) *ml(2,2)
1055
1056
1057 mm(1,3)=(one-vqn(k,1,3)*vqn(k,1,3))*ml(1,3)-
1058 1 vqn(k,1,3)*vqn(k,2,3) *ml(2,3)
1059 mm(2,3)=(one-vqn(k,2,3)*vqn(k,2,3))*ml(2,3)-
1060 1 vqn(k,1,3)*vqn(k,2,3) *ml(1,3)
1061 mm(3,3)= -vqn(k,1,3)*vqn(k,3,3) *ml(1,3)-
1062 1 vqn(k,2,3)*vqn(k,3,3) *ml(2,3)
1063
1064
1065 mm(1,4)=(one-vqn(k,1,4)*vqn(k,1,4))*ml(1,4)-
1066 1 vqn(k,1,4)*vqn(k,2,4) *ml(2,4)
1067 mm(2,4)=(one-vqn(k,2,4)*vqn(k,2,4))*ml(2,4)-
1068 1 vqn(k,1,4)*vqn(k,2,4) *ml(1,4)
1069 mm(3,4)= -vqn(k,1,4)*vqn(k,3,4) *ml(1,4)-
1070 1 vqn(k,2,4)*vqn(k,3,4) *ml(2,4)
1071 IF (idril>0) THEN
1072 DO j=1,4
1073 mm(1,j)=mm(1,j)+ vqn(k,1,j)*vmz(k,j)
1074 mm(2,j)=mm(2,j)+ vqn(k,2,j)*vmz(k,j)
1075 mm(3,j)=mm(3,j)+ vqn(k,3,j)*vmz(k,j)
1076 END DO
1077 END IF
1078 ELSE
1079
1080 ar(1)= -z1(k)*(fl(2,1)-fl(2,2)+fl(2,3)-fl(2,4))
1081 1 +corel(k,2,1)*fl(3,1)+ml(1,1)
1082 2 +corel(k,2,2)*fl(3,2)+ml(1,2)
1083 3 +corel(k,2,3)*fl(3,3)+ml(1,3)
1084 4 +corel(k,2,4)*fl(3,4)+ml(1,4)
1085 ar(2)= z1(k)*(fl(1,1)-fl(1,2)+fl(1,3)-fl(1,4))
1086 1 -corel(k,1,1)*fl(3,1)+ml(2,1)
1087 2 -corel(k,1,2)*fl(3,2)+ml(2,2)
1088 3 -corel(k,1,3)*fl(3,3)+ml(2,3)
1089 4 -corel(k,1,4)*fl(3,4)+ml(2,4)
1090 ar(3)=-corel(k,2,1)*fl(1,1)+corel(k,1,1)*fl(2,1)
1091 1 -corel(k,2,2)*fl(1,2)+corel(k,1,2)*fl(2,2)
1092 2 -corel(k,2,3)*fl(1,3)+corel(k,1,3)*fl(2,3)
1093 3 -corel(k,2,4)*fl(1,4)+corel(k,1,4)*fl(2,4)
1094 ad(1)= vqn(k,1,1)*ml(1,1)+vqn(k,2,1)*ml(2,1)
1095 ad(2)= vqn(k,1,2)*ml(1,2)+vqn(k,2,2)*ml(2,2)
1096 ad(3)= vqn(k,1,3)*ml(1,3)+vqn(k,2,3)*ml(2,3)
1097 ad(4)= vqn(k,1,4)*ml(1,4)+vqn(k,2,4)*ml(2,4)
1098
1099 dbad(1)= db(k,1,1)*ad(1)+db(k,1,2)*ad(2)
1100 1 +db(k,1,3)*ad(3)+db(k,1,4)*ad(4)
1101 dbad(2)= db(k,2,1)*ad(1)+db(k,2,2)*ad(2)
1102 1 +db(k,2,3)*ad(3)+db(k,2,4)*ad(4)
1103 dbad(3)= db(k,3,1)*ad(1)+db(k,3,2)*ad(2)
1104 1 +db(k,3,3)*ad(3)+db(k,3,4)*ad(4)
1105
1106 alr(1) =di(k,1)*ar(1)+di(k,4)*ar(2)+di(k,5)*ar(3)-dbad(1)
1107 alr(2) =di(k,4)*ar(1)+di(k,2)*ar(2)+di(k,6)*ar(3)-dbad(2)
1108 alr(3) =di(k,5)*ar(1)+di(k,6)*ar(2)+di(k,3)*ar(3)-dbad(3)
1109
1110 ald(1) = ad(1)+vqn(k,1,1)*dbad(1)+vqn(k,2,1)*dbad(2)
1111 1 +vqn(k,3,1)*dbad(3)
1112 2 -db(k,1,1)*ar(1)-db(k,2,1)*ar(2)-db(k,3,1)*ar(3)
1113 ald(2) = ad(2)+vqn(k,1,2)*dbad(1)+vqn(k,2,2)*dbad(2)
1114 1 +vqn(k,3,2)*dbad(3)
1115 2 -db(k,1,2)*ar(1)-db(k,2,2)*ar(2)-db(k,3,2)*ar(3)
1116 ald(3) = ad(3)+vqn(k,1,3)*dbad(1)+vqn(k,2,3)*dbad(2)
1117 1 +vqn(k,3,3)*dbad(3)
1118 2 -db(k,1,3)*ar(1)-db(k,2,3)*ar(2)-db(k,3,3)*ar(3)
1119 ald(4) = ad(4)+vqn(k,1,4)*dbad(1)+vqn(k,2,4)*dbad(2)
1120 1 +vqn(k,3,4)*dbad(3)
1121 2 -db(k,1,4)*ar(1)-db(k,2,4)*ar(2)-db(k,3,4)*ar(3)
1122 IF (idril>0) THEN
1123 arz = vmz(k,1)+vmz(k,2)+vmz(k,3)+vmz(k,4)
1124 alr(1) =alr(1)+diz(k,1)*arz
1125 alr(2) =alr(2)+diz(k,2)*arz
1126 alr(3) =alr(3)+diz(k,3)*arz
1127 END IF
1128
1129 c1 =z1(k)*alr(2)
1130 fl(1,1)= fl(1,1)-c1+corel(k,2,1)*alr(3)
1131 fl(1,2)= fl(1,2)+c1+corel(k,2,2)*alr(3)
1132 fl(1,3)= fl(1,3)-c1+corel(k,2,3)*alr(3)
1133 fl(1,4)= fl(1,4)+c1+corel(k,2,4)*alr(3)
1134
1135 c1 =z1(k)*alr(1)
1136 fl(2,1)= fl(2,1)+c1-corel(k,1,1)*alr(3)
1137 fl(2,2)= fl(2,2)-c1-corel(k,1,2)*alr(3)
1138 fl(2,3)= fl(2,3)+c1-corel(k,1,3)*alr(3)
1139 fl(2,4)= fl(2,4)-c1-corel(k,1,4)*alr(3)
1140
1141 DO j=1,4
1142 fl(3,j)= fl(3,j)-corel(k,2,j)*alr(1)+corel(k,1,j)*alr(2)
1143 mm(1,j)= ml(1,j)-alr(1)-vqn(k,1,j)*ald(j)
1144 mm(2,j)= ml(2,j)-alr(2)-vqn(k,2,j)*ald(j)
1145 mm(3,j)= -alr(3)-vqn(k,3,j)*ald(j)
1146 ENDDO
1147
1148 IF (idril>0) THEN
1149 DO j=1,4
1150 mm(3,j)= mm(3,j)+vmz(k,j)
1151 ENDDO
1152 END IF
1153 END IF
1154
1155
1156
1157 f11(k)= vq(k,1,1)*fl(1,1)+vq(k,1,2)*fl(2,1)+vq(k,1,3)*fl(3,1)
1158 m11(k)= vq(k,1,1)*mm(1,1)+vq(k,1,2)*mm(2,1)+vq(k,1,3)*mm(3,1)
1159
1160 f21(k)= vq(k,2,1)*fl(1,1)+vq(k,2,2)*fl(2,1)+vq(k,2,3)*fl(3,1)
1161 m21(k)= vq(k,2,1)*mm(1,1)+vq(k,2,2)*mm(2,1)+vq(k,2,3)*mm(3,1)
1162
1163 f31(k)= vq(k,3,1)*fl(1,1)+vq(k,3,2)*fl(2,1)+vq(k,3,3)*fl(3,1)
1164 m31(k)= vq(k,3,1)*mm(1,1)+vq(k,3,2)*mm(2,1)+vq(k,3,3)*mm(3,1)
1165
1166
1167
1168 f12(k)= vq(k,1,1)*fl(1,2)+vq(k,1,2)*fl(2,2)+vq(k,1,3)*fl(3,2)
1169 m12(k)= vq(k,1,1)*mm(1,2)+vq(k,1,2)*mm(2,2)+vq(k,1,3)*mm(3,2)
1170
1171 f22(k)= vq(k,2,1)*fl(1,2)+vq(k,2,2)*fl(2,2)+vq(k,2,3)*fl(3,2)
1172 m22(k)= vq(k,2,1)*mm(1,2)+vq(k,2,2)*mm(2,2)+vq(k,2,3)*mm(3,2)
1173
1174 f32(k)= vq(k,3,1)*fl(1,2)+vq(k,3,2)*fl(2,2)+vq(k,3,3)*fl(3,2)
1175 m32(k)= vq(k,3,1)*mm(1,2)+vq(k,3,2)*mm(2,2)+vq(k,3,3)*mm(3,2)
1176
1177
1178
1179 f13(k)= vq(k,1,1)*fl(1,3)+vq(k,1,2)*fl(2,3)+vq(k,1,3)*fl(3,3)
1180 m13(k)= vq(k,1,1)*mm(1,3)+vq(k,1,2)*mm(2,3)+vq(k,1,3)*mm(3,3)
1181
1182 f23(k)= vq(k,2,1)*fl(1,3)+vq(k,2,2)*fl(2,3)+vq(k,2,3)*fl(3,3)
1183 m23(k)= vq(k,2,1)*mm(1,3)+vq(k,2,2)*mm(2,3)+vq(k,2,3)*mm(3,3)
1184
1185 f33(k)= vq(k,3,1)*fl(1,3)+vq(k,3,2)*fl(2,3)+vq(k,3,3)*fl(3,3)
1186 m33(k)= vq(k,3,1)*mm(1,3)+vq(k,3,2)*mm(2,3)+vq(k,3,3)*mm(3,3)
1187
1188
1189
1190 f14(k)= vq(k,1,1)*fl(1,4)+vq(k,1,2)*fl(2,4)+vq(k,1,3)*fl(3,4)
1191 m14(k)= vq(k,1,1)*mm(1,4)+vq(k,1,2)*mm(2,4)+vq(k,1,3)*mm(3,4)
1192
1193 f24(k)= vq(k,2,1)*fl(1,4)+vq(k,2,2)*fl(2,4)+vq(k,2,3)*fl(3,4)
1194 m24(k)= vq(k,2,1)*mm(1,4)+vq(k,2,2)*mm(2,4)+vq(k,2,3)*mm(3,4)
1195
1196 f34(k)= vq(k,3,1)*fl(1,4)+vq(k,3,2)*fl(2,4)+vq(k,3,3)*fl(3,4)
1197 m34(k)= vq(k,3,1)*mm(1,4)+vq(k,3,2)*mm(2,4)+vq(k,3,3)*mm(3,4)
1198
1199 ENDIF
1200
1201 ENDDO
1202
1203
1204 ELSE
1205 DO k=jft,jlt
1206
1207
1208 fl(1,1)= vf(k,1,1)+vf(k,1,3)
1209 fl(1,2)= vf(k,1,2)+vf(k,1,4)
1210 fl(1,3)=-vf(k,1,1)+vf(k,1,3)
1211 fl(1,4)=-vf(k,1,2)+vf(k,1,4)
1212
1213 fl(2,1)= vf(k,2,1)+vf(k,2,3)
1214 fl(2,2)= vf(k,2,2)+vf(k,2,4)
1215 fl(2,3)=-vf(k,2,1)+vf(k,2,3)
1216 fl(2,4)=-vf(k,2,2)+vf(k,2,4)
1217
1218 fl(3,1)= vf(k,3,1)+vf(k,3,3)
1219 fl(3,2)= vf(k,3,2)+vf(k,3,4)
1220 fl(3,3)=-vf(k,3,1)+vf(k,3,3)
1221 fl(3,4)=-vf(k,3,2)+vf(k,3,4)
1222
1223
1224 ml(1,1)= vm(k,1,1)+vm(k,1,3)
1225 ml(1,2)= vm(k,1,2)+vm(k,1,4)
1226 ml(1,3)=-vm(k,1,1)+vm(k,1,3)
1227 ml(1,4)=-vm(k,1,2)+vm(k,1,4)
1228
1229 ml(2,1)= vm(k,2,1)+vm(k,2,3)
1230 ml(2,2)= vm(k,2,2)+vm(k,2,4)
1231 ml(2,3)=-vm(k,2,1)+vm(k,2,3)
1232 ml(2,4)=-vm(k,2,2)+vm(k,2,4)
1233
1234
1235
1236 IF (plat(k)) THEN
1237
1238
1239
1240 f11(k)= vq(k,1,1)*fl(1,1)+vq(k,1,2)*fl(2,1)+vq(k,1,3)*fl(3,1)
1241 m11(k)= vq(k,1,1)*ml(1,1)+vq(k,1,2)*ml(2,1)
1242
1243 f21(k)= vq(k,2,1)*fl(1,1)+vq(k,2,2)*fl(2,1)+vq(k,2,3)*fl(3,1)
1244 m21(k)= vq(k,2,1)*ml(1,1)+vq(k,2,2)*ml(2,1)
1245
1246 f31(k)= vq(k,3,1)*fl(1,1)+vq(k,3,2)*fl(2,1)+vq(k,3,3)*fl(3,1)
1247 m31(k)= vq(k,3,1)*ml(1,1)+vq(k,3,2)*ml(2,1)
1248
1249
1250
1251 f12(k)= vq(k,1,1)*fl(1,2)+vq(k,1,2)*fl(2,2)+vq(k,1,3)*fl(3,2)
1252 m12(k)= vq(k,1,1)*ml(1,2)+vq(k,1,2)*ml(2,2)
1253
1254 f22(k)= vq(k,2,1)*fl(1,2)+vq(k,2,2)*fl(2,2)+vq(k,2,3)*fl(3,2)
1255 m22(k)= vq(k,2,1)*ml(1,2)+vq(k,2,2)*ml(2,2)
1256
1257 f32(k)= vq(k,3,1)*fl(1,2)+vq(k,3,2)*fl(2,2)+vq(k,3,3)*fl(3,2)
1258 m32(k)= vq(k,3,1)*ml(1,2)+vq(k,3,2)*ml(2,2)
1259
1260
1261
1262 f13(k)= vq(k,1,1)*fl(1,3)+vq(k,1,2)*fl(2,3)+vq(k,1,3)*fl(3,3)
1263 m13(k)= vq(k,1,1)*ml(1,3)+vq(k,1,2)*ml(2,3)
1264
1265 f23(k)= vq(k,2,1)*fl(1,3)+vq(k,2,2)*fl(2,3)+vq(k,2,3)*fl(3,3)
1266 m23(k)= vq(k,2,1)*ml(1,3)+vq(k,2,2)*ml(2,3)
1267
1268 f33(k)= vq(k,3,1)*fl(1,3)+vq(k,3,2)*fl(2,3)+vq(k,3,3)*fl(3,3)
1269 m33(k)= vq(k,3,1)*ml(1,3)+vq(k,3,2)*ml(2,3)
1270
1271
1272
1273 f14(k)= vq(k,1,1)*fl(1,4)+vq(k,1,2)*fl(2,4)+vq(k,1,3)*fl(3,4)
1274 m14(k)= vq(k,1,1)*ml(1,4)+vq(k,1,2)*ml(2,4)
1275
1276 f24(k)= vq(k,2,1)*fl(1,4)+vq(k,2,2)*fl(2,4)+vq(k,2,3)*fl(3,4)
1277 m24(k)= vq(k,2,1)*ml(1,4)+vq(k,2,2)*ml(2,4)
1278
1279 f34(k)= vq(k,3,1)*fl(1,4)+vq(k,3,2)*fl(2,4)
1280 m34(k)= vq(k,3,1)*ml(1,4)+vq(k,3,2)*ml(2,4)
1281
1282 IF (idril>0) THEN
1283 m11(k)= m11(k)+ vq(k,1,3)*vmz(k,1)
1284 m21(k)= m21(k)+ vq(k,2,3)*vmz(k,1)
1285 m31(k)= m31(k)+ vq(k,3,3)*vmz(k,1)
1286
1287 m12(k)= m12(k)+ vq(k,1,3)*vmz(k,2)
1288 m22(k)= m22(k)+ vq(k,2,3)*vmz(k,2)
1289 m32(k)= m32(k)+ vq(k,3,3)*vmz(k,2)
1290
1291 m13(k)= m13(k)+ vq(k,1,3)*vmz(k,3)
1292 m23(k)= m23(k)+ vq(k,2,3)*vmz(k,3)
1293 m33(k)= m33(k)+ vq(k,3,3)*vmz(k,3)
1294
1295 m14(k)= m14(k)+ vq(k,1,3)*vmz(k,4)
1296 m24(k)= m24(k)+ vq(k,2,3)*vmz(k,4)
1297 m34(k)= m34(k)+ vq(k,3,3)*vmz(k,4)
1298 END IF
1299
1300 ELSE
1301 IF (impl_s>0.AND.ikproj<=0) THEN
1302
1303
1304
1305 mm(1,1)=(one-vqn(k,1,1)*vqn(k,1,1))*ml(1,1)-
1306 1 vqn(k,1,1)*vqn(k,2,1) *ml(2,1)
1307 mm(2,1)=(one-vqn(k,2,1)*vqn(k,2,1))*ml(2,1)-
1308 1 vqn(k,1,1)*vqn(k,2,1) *ml(1,1)
1309 mm(3,1)= -vqn(k,1,1)*vqn(k,3,1) *ml(1,1)-
1310 1 vqn(k,2,1)*vqn(k,3,1) *ml(2,1)
1311
1312
1313 mm(1,2)=(one - vqn(k,1,2)*vqn(k,1,2))*ml(1,2)-
1314 1 vqn(k,1,2)*vqn(k,2,2) *ml(2,2)
1315 mm(2,2)=(one - vqn(k,2,2)*vqn(k,2,2))*ml(2,2)-
1316 1 vqn(k,1,2)*vqn(k,2,2) *ml(1,2)
1317 mm(3,2)= -vqn(k,1,2)*vqn(k,3,2) *ml(1,2)-
1318 1 vqn(k,2,2)*vqn(k,3,2) *ml(2,2)
1319
1320
1321 mm(1,3)=(one-vqn(k,1,3)*vqn(k,1,3))*ml(1,3)-
1322 1 vqn(k,1,3)*vqn(k,2,3) *ml(2,3)
1323 mm(2,3)=(one-vqn(k,2,3)*vqn(k,2,3))*ml(2,3)-
1324 1 vqn(k,1,3)*vqn(k,2,3) *ml(1,3)
1325 mm(3,3)= -vqn(k,1,3)*vqn(k,3,3) *ml(1,3)-
1326 1 vqn(k,2,3)*vqn(k,3,3) *ml(2,3)
1327
1328
1329 mm(1,4)=(one-vqn(k,1,4)*vqn(k,1,4))*ml(1,4)-
1330 1 vqn(k,1,4)*vqn(k,2,4) *ml(2,4)
1331 mm(2,4)=(one-vqn(k,2,4)*vqn(k,2,4))*ml(2,4)-
1332 1 vqn(k,1,4)*vqn(k,2,4) *ml(1,4)
1333 mm(3,4)= -vqn(k,1,4)*vqn(k,3,4) *ml(1,4)-
1334 1 vqn(k,2,4)*vqn(k,3,4) *ml(2,4)
1335 IF (idril>0) THEN
1336 DO j=1,4
1337 mm(1,j)=mm(1,j)+ vqn(k,1,j)*vmz(k,j)
1338 mm(2,j)=mm(2,j)+ vqn(k,2,j)*vmz(k,j)
1339 mm(3,j)=mm(3,j)+ vqn(k,3,j)*vmz(k,j)
1340 END DO
1341 END IF
1342 ELSE
1343
1344 ar(1)= -z1(k)*(fl(2,1)-fl(2,2)+fl(2,3)-fl(2,4))
1345 1 +corel(k,2,1)*fl(3,1)+ml(1,1)
1346 2 +corel(k,2,2)*fl(3,2)+ml(1,2)
1347 3 +corel(k,2,3)*fl(3,3)+ml(1,3)
1348 4 +corel(k,2,4)*fl(3,4)+ml(1,4)
1349 ar(2)= z1(k)*(fl(1,1)-fl(1,2)+fl(1,3)-fl(1,4))
1350 1 -corel(k,1,1)*fl(3,1)+ml(2,1)
1351 2 -corel(k,1,2)*fl(3,2)+ml(2,2)
1352 3 -corel(k,1,3)*fl(3,3)+ml(2,3)
1353 4 -corel(k,1,4)*fl(3,4)+ml(2,4)
1354 ar(3)=-corel(k,2,1)*fl(1,1)+corel(k,1,1)*fl(2,1)
1355 1 -corel(k,2,2)*fl(1,2)+corel(k,1,2)*fl(2,2)
1356 2 -corel(k,2,3)*fl(1,3)+corel(k,1,3)*fl(2,3)
1357 3 -corel(k,2,4)*fl(1,4)+corel(k,1,4)*fl(2,4)
1358 ad(1)= vqn(k,1,1)*ml(1,1)+vqn(k,2,1)*ml(2,1)
1359 ad(2)= vqn(k,1,2)*ml(1,2)+vqn(k,2,2)*ml(2,2)
1360 ad(3)= vqn(k,1,3)*ml(1,3)+vqn(k,2,3)*ml(2,3)
1361 ad(4)= vqn(k,1,4)*ml(1,4)+vqn(k,2,4)*ml(2,4)
1362
1363 dbad(1)= db(k,1,1)*ad(1)+db(k,1,2)*ad(2)
1364 1 +db(k,1,3)*ad(3)+db(k,1,4)*ad(4)
1365 dbad(2)= db(k,2,1)*ad(1)+db(k,2,2)*ad(2)
1366 1 +db(k,2,3)*ad(3)+db(k,2,4)*ad(4)
1367 dbad(3)= db(k,3,1)*ad(1)+db(k,3,2)*ad(2)
1368 1 +db(k,3,3)*ad(3)+db(k,3,4)*ad(4)
1369
1370 alr(1) =di(k,1)*ar(1)+di(k,4)*ar(2)+di(k,5)*ar(3)-dbad(1)
1371 alr(2) =di(k,4)*ar(1)+di(k,2)*ar(2)+di(k,6)*ar(3)-dbad(2)
1372 alr(3) =di(k,5)*ar(1)+di(k,6)*ar(2)+di(k,3)*ar(3)-dbad(3)
1373
1374 ald(1) = ad(1)+vqn(k,1,1)*dbad(1)+vqn(k,2,1)*dbad(2)
1375 1 +vqn(k,3,1)*dbad(3)
1376 2 -db(k,1,1)*ar(1)-db(k,2,1)*ar(2)-db(k,3,1)*ar(3)
1377 ald(2) = ad(2)+vqn(k,1,2)*dbad(1)+vqn(k,2,2)*dbad(2)
1378 1 +vqn(k,3,2)*dbad(3)
1379 2 -db(k,1,2)*ar(1)-db(k,2,2)*ar(2)-db(k,3,2)*ar(3)
1380 ald(3) = ad(3)+vqn(k,1,3)*dbad(1)+vqn(k,2,3)*dbad(2)
1381 1 +vqn(k,3,3)*dbad(3)
1382 2 -db(k,1,3)*ar(1)-db(k,2,3)*ar(2)-db(k,3,3)*ar(3)
1383 ald(4) = ad(4)+vqn(k,1,4)*dbad(1)+vqn(k,2,4)*dbad(2)
1384 1 +vqn(k,3,4)*dbad(3)
1385 2 -db(k,1,4)*ar(1)-db(k,2,4)*ar(2)-db(k,3,4)*ar(3)
1386 IF (idril>0) THEN
1387 arz = vmz(k,1)+vmz(k,2)+vmz(k,3)+vmz(k,4)
1388 alr(1) =alr(1)+diz(k,1)*arz
1389 alr(2) =alr(2)+diz(k,2)*arz
1390 alr(3) =alr(3)+diz(k,3)*arz
1391 END IF !(idril>0) THEN
1392
1393 c1 =z1(k)*alr(2)
1394 fl(1,1)= fl(1,1)-c1+corel(k,2,1)*alr(3)
1395 fl(1,2)= fl(1,2)+c1+corel(k,2,2)*alr(3)
1396 fl(1,3)= fl(1,3)-c1+corel(k,2,3)*alr(3)
1397 fl(1,4)= fl(1,4)+c1+corel(k,2,4)*alr(3)
1398
1399 c1 =z1(k)*alr(1)
1400 fl(2,1)= fl(2,1)+c1-corel(k,1,1)*alr(3)
1401 fl(2,2)= fl(2,2)-c1-corel(k,1,2)*alr(3)
1402 fl(2,3)= fl(2,3)+c1-corel(k,1,3)*alr(3)
1403 fl(2,4)= fl(2,4)-c1-corel(k,1,4)*alr(3)
1404
1405 DO j=1,4
1406 fl(3,j)= fl(3,j)-corel(k,2,j)*alr(1)+corel(k,1,j)*alr(2)
1407 mm(1,j)= ml(1,j)-alr(1)-vqn(k,1,j)*ald(j)
1408 mm(2,j)= ml(2,j)-alr(2)-vqn(k,2,j)*ald(j)
1409 mm(3,j)= -alr(3)-vqn(k,3,j)*ald(j)
1410 ENDDO
1411
1412 IF (idril>0) THEN
1413 DO j=1,4
1414 mm(3,j)= mm(3,j)+vmz(k,j)
1415 ENDDO
1416 END IF
1417
1418 END IF
1419
1420
1421
1422 f11(k)= vq(k,1,1)*fl(1,1)+vq(k,1,2)*fl(2,1)+vq(k,1,3)*fl(3,1)
1423 m11(k)= vq(k,1,1)*mm(1,1)+vq(k,1,2)*mm(2,1)+vq(k,1,3)*mm(3,1)
1424
1425 f21(k)= vq(k,2,1)*fl(1,1)+vq(k,2,2)*fl(2,1)+vq(k,2,3)*fl(3,1)
1426 m21(k)= vq(k,2,1)*mm(1,1)+vq(k,2,2)*mm(2,1)+vq(k,2,3)*mm(3,1)
1427
1428 f31(k)= vq(k,3,1)*fl(1,1)+vq(k,3,2)*fl(2,1)+vq(k,3,3)*fl(3,1)
1429 m31(k)= vq(k,3,1)*mm(1,1)+vq(k,3,2)*mm(2,1)+vq(k,3,3)*mm(3,1)
1430
1431
1432
1433 f12(k)= vq(k,1,1)*fl(1,2)+vq(k,1,2)*fl(2,2)+vq(k,1,3)*fl(3,2)
1434 m12(k)= vq(k,1,1)*mm(1,2)+vq(k,1,2)*mm(2,2)+vq(k,1,3)*mm(3,2)
1435
1436 f22(k)= vq(k,2,1)*fl(1,2)+vq(k,2,2)*fl(2,2)+vq(k,2,3)*fl(3,2)
1437 m22(k)= vq(k,2,1)*mm(1,2)+vq(k,2,2)*mm(2,2)+vq(k,2,3)*mm(3,2)
1438
1439 f32(k)= vq(k,3,1)*fl(1,2)+vq(k,3,2)*fl(2,2)+vq(k,3,3)*fl(3,2)
1440 m32(k)= vq(k,3,1)*mm(1,2)+vq(k,3,2)*mm(2,2)+vq(k,3,3)*mm(3,2)
1441
1442
1443
1444 f13(k)= vq(k,1,1)*fl(1,3)+vq(k,1,2)*fl(2,3)+vq(k,1,3)*fl(3,3)
1445 m13(k)= vq(k,1,1)*mm(1,3)+vq(k,1,2)*mm(2,3)+vq(k,1,3)*mm(3,3)
1446
1447 f23(k)= vq(k,2,1)*fl(1,3)+vq(k,2,2)*fl(2,3)+vq(k,2,3)*fl(3,3)
1448 m23(k)= vq(k,2,1)*mm(1,3)+vq(k,2,2)*mm(2,3)+vq(k,2,3)*mm(3,3)
1449
1450 f33(k)= vq(k,3,1)*fl(1,3)+vq(k,3,2)*fl(2,3)+vq(k,3,3)*fl(3,3)
1451 m33(k)= vq(k,3,1)*mm(1,3)+vq(k,3,2)*mm(2,3)+vq(k,3,3)*mm(3,3)
1452
1453
1454
1455 f14(k)= vq(k,1,1)*fl(1,4)+vq(k,1,2)*fl(2,4)+vq(k,1,3)*fl(3,4)
1456 m14(k)= vq(k,1,1)*mm(1,4)+vq(k,1,2)*mm(2,4)+vq(k,1,3)*mm(3,4)
1457
1458 f24(k)= vq(k,2,1)*fl(1,4)+vq(k,2,2)*fl(2,4)+vq(k,2,3)*fl(3,4)
1459 m24(k)= vq(k,2,1)*mm(1,4)+vq(k,2,2)*mm(2,4)+vq(k,2,3)*mm(3,4)
1460
1461 f34(k)= vq(k,3,1)*fl(1,4)+vq(k,3,2)*fl(2,4)+vq(k,3,3)*fl(3,4)
1462 m34(k)= vq(k,3,1)*mm(1,4)+vq(k,3,2)*mm(2,4)+vq(k,3,3)*mm(3,4)
1463
1464 ENDIF
1465
1466 ENDDO
1467
1468 END IF
1469
1470 RETURN