Effacer les filtres
Effacer les filtres

Display output in FORTRAN format ?

4 vues (au cours des 30 derniers jours)
Juliette Salexa
Juliette Salexa le 16 Juin 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 commentaire
Juliette Salexa
Juliette Salexa le 17 Juin 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.

Connectez-vous pour commenter.

Réponses (1)

Walter Roberson
Walter Roberson le 16 Juin 2012
fprintf(fid, '(%f,%f)\n', [real(A(:)), imag(A(:))].' )
  2 commentaires
Juliette Salexa
Juliette Salexa le 16 Juin 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 le 16 Juin 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))

Connectez-vous pour commenter.

Catégories

En savoir plus sur Fortran with MATLAB dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by