How to create 3d array equivalent to fortran dimension?

4 views (last 30 days)
Hello all, I have this fortran code
dimension x(2,m,n)
where m=100, n=40 Now how to convert this into the matlab?

Accepted Answer

Jan
Jan on 16 May 2016
Perhaps you mean:
x = zeros(2, m, n)
  2 Comments
adi kul
adi kul on 16 May 2016
Thank you. It does create 2XmXn array but this gives zeros of the defined size matrix
In fortran this is not the case. Please guide.
adi kul
adi kul on 16 May 2016
Sorry. This helped me. Thank you. Now I am facing a new issue.
My fortran code says
j=1,m
g(j) = t(k,i,j)*dcos(anglezx) - t(j)*dsin(anglezx)
How can I do this 3d multiplication in 1d in matlab. If I use this as it is I get size error for g(j) as matlab cosiders it as 1x1 while my t(k,i,j) is a 2xmxn sized matrix.

Sign in to comment.

More Answers (1)

Farrukh Mazhar
Farrukh Mazhar on 20 Feb 2019
this code probably is wrong the correct Fortran code would be like
do k=1,aa
do i=1,n
do j=1,m
g(j) = t(k,i,j)*dcos(anglezx) - t(j)*dsin(anglezx)
enddo
enddo
enddo
Please change to
for k=1:aa
do i=1:n
do j=1:m
g(k,j,i) = t(k,i,j)*dcos(anglezx) - t(j)*dsin(anglezx)
end
end
end

Categories

Find more on Fortran with MATLAB in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!