print a matrix in output file

3 Ansichten (letzte 30 Tage)
Ayda
Ayda am 31 Okt. 2011
Good morning\evening
I tried to print a result matrix R in an output file.
fprintf(fid,'%.3f\t\n %.3f\t\n %.3f\t\n',R);
Actually, the output prints the matrix row by row.
Can you help me?
Regards, Ayda

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 31 Okt. 2011
Each of the \n in the formats indicates that you want to start a new line.
The \t you have indicate that you want a tab before the newline; that would be somewhat unusual.
Anyhow, you should use R.' (the transpose of R) as the argument to fprintf() instead of just R
  3 Kommentare
Walter Roberson
Walter Roberson am 31 Okt. 2011
What size is your array R, and how do you want it to look when it is printed out?
I note that you used R' rather than the R.' that I indicated. The effect is the same for real-valued matrices, but if your R happened to contain complex values then using R' would lead to incorrect printout, as R' means the "conjugate transpose" (that is, the result is the transpose of the result of taking the complex conjugate of each item.)
The format you have given would be suitable for a matrix R which is 3 columns wide and you want two decimal places of each value printed out. The output would, though, appear "ragged" such as
11.23 49.18 28.20
5.36 33.62 -1.98
as you have not requested that a fixed number of characters be used per column.
Ayda
Ayda am 31 Okt. 2011
sorry i did not notice that you say .'
Thanks alot
its works =)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by