逐元素相乘子数组和数组 fortran

element wise multiply sub-array and array fortran

我想在 fortran(90) 中逐元素乘以两个数组 A 和 B 的子数组

A​​是4天,B是5天。最初我试过这个但是编译器不喜欢它

C(:,:,:,:)=A(:,:,:,:)*B(:,:,:,:,1)

有没有简单的方法将 B(:,:,:,:,1) 提取为 4d 数组,以便我可以进行二元运算 *?

编辑 - 来自编译器的错误消息

tracer1_field(:,:,:,:) = tbase(:,:,:,:,1)*domain(:,:,:,:) ! *12*12*!2 due to grid size.
                              1
Error: Rank mismatch in array reference at (1) (5/4)

错误是指数组 tbase 的秩是用四个而不是五个索引声明的。