How to create 3d array equivalent to fortran dimension?

4 visualizaciones (últimos 30 días)
adi kul
adi kul el 16 de Mayo de 2016
Respondida: Farrukh Mazhar el 20 de Feb. de 2019
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?

Respuesta aceptada

Jan
Jan el 16 de Mayo de 2016
Perhaps you mean:
x = zeros(2, m, n)
  2 comentarios
adi kul
adi kul el 16 de Mayo de 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 el 16 de Mayo de 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.

Iniciar sesión para comentar.

Más respuestas (1)

Farrukh Mazhar
Farrukh Mazhar el 20 de Feb. de 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

Categorías

Más información sobre Fortran with MATLAB en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by