Display output in FORTRAN format ?

4 views (last 30 days)
Juliette Salexa
Juliette Salexa on 16 Jun 2012
How do I display the numerical contents of an array so that rather than looking like:
A=
5.43297486350203e-005 + 2.66188191742774e-006i
4.93260233930857e-006 + 9.43375107613982e-005i
3.40870376238982e-004 - 5.64562919171371e-003i
it gives something that can be copied and pasted into a FORTRAN code ?
  1 Comment
Juliette Salexa
Juliette Salexa on 17 Jun 2012
I should clarify, that I'm not necessarily trying to write an output file, I'm just trying to display the variable, even if it's just in the Command Window.

Sign in to comment.

Answers (1)

Walter Roberson
Walter Roberson on 16 Jun 2012
fprintf(fid, '(%f,%f)\n', [real(A(:)), imag(A(:))].' )
  2 Comments
Juliette Salexa
Juliette Salexa on 16 Jun 2012
Thanks Walter.
I was hoping there would be something more like Mathematica's function FortranForm[ ], or Maple's function Fortran( ) ...
Walter Roberson
Walter Roberson on 16 Jun 2012
Nope. But if you want you can create
function s = FortranComplex(V)
s = sprintf( '(%f,%f)', real(V(1)), imag(V(1)) );
and then use the output string in whatever context you want.
If you have the symbolic toolbox, you could try
http://www.mathworks.com/help/toolbox/symbolic/fortran.html
fortran(A) but you might have use fortran(sym(A))

Sign in to comment.

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!