Asked by Ano
on 7 Nov 2016

Hello, I would like to export the impedance matrix from FEKO into matlab but Matlab says that the .mat file is corrupted, any help in this issue?! Thank you in advance

Answer by Klearchos Samaras
on 14 Mar 2017

Edited by Klearchos Samaras
on 15 Mar 2017

Accepted Answer

First of all, this *.mat file is not a typical *.mat file. It has a FORTRAN block structure. You can find some useful information here: http://www.feko.info/support/helpcenter/how-to/how-to-read-the-.mat-.lud-.rhs-files-and-.str-files .

I am a FEKO user too. Well, the mat2ascii.exe utility can be used via Command Prompt and the data can be stored in a *.txt file, however the generated file will only contain the rows, columns, real part and imaginary part of the impedance matrix FOR THE FIRST FREQUENCY OF THE SIMULATION. In other words, if you want to simulate at a frequency range (multiple frequencies) the generated *.mat file contains the data of every impedance matrix, however the mat2ascii.exe utility converts only the data of the first impedance matrix of the simulation to *.txt file. Maybe the *.mat file can be easily read in a FORTRAN environment but I don't know that. I have tried to use the f2matlab routine created by Prof. Ben Barrowes, but it failed. I am no expert in programming, though.

***IMPORTANT: There might be a mistake in the *.txt file generated by mat2ascii.exe. It contains some explanatory text in the beginning and then it contains 4 columns with the data of the first frequency impedance matrix. The first column has the numbers of rows, the second has the numbers of columns, the third has the elements of R matrix (real part) and the fourth has the numbers of X matrix (imaginary part). I believe that the third column should be labeled as imaginary and the fourth as real, because the very first element of the R matrix should always be a positive number (it belongs to the main diagonal and R is positive definite), but in my case it is negative.

Log in to comment.

Opportunities for recent engineering grads.

Apply Today
## 5 Comments

## sumithra Panneer Selvam (view profile)

Direct link to this comment:https://www.mathworks.com/matlabcentral/answers/311026-how-to-export-the-impedance-matrix-from-feko-into-matlab#comment_538142

Dear experts, I could export the impedance matrix from feko, impedance matrix contained (NX1) real and NX1 imag parts. I would like to extract Eigen value and Eigen vector from thesereal and imag vectors.eig command needs square matrix of impedance - pl help to extract Eigen value and Eigen vector.

## Ano (view profile)

Direct link to this comment:https://www.mathworks.com/matlabcentral/answers/311026-how-to-export-the-impedance-matrix-from-feko-into-matlab#comment_538166

Hello! you have just to reshape them in order to get a square matrix, then you can apply eig .

## sumithra Panneer Selvam (view profile)

Direct link to this comment:https://www.mathworks.com/matlabcentral/answers/311026-how-to-export-the-impedance-matrix-from-feko-into-matlab#comment_538521

Thank so much sir... it works...

## sumithra Panneer Selvam (view profile)

Direct link to this comment:https://www.mathworks.com/matlabcentral/answers/311026-how-to-export-the-impedance-matrix-from-feko-into-matlab#comment_538891

Dear experts, I need to plot eigen value graph for characteristic modes with eigen value (339X1) and frequency (22X1) in the range of 1.35ghz to 1.5ghz. I have attached .mat file of eigen value(num.mat) and frequency(frequency.mat). Plz help.

## Ano (view profile)

Direct link to this comment:https://www.mathworks.com/matlabcentral/answers/311026-how-to-export-the-impedance-matrix-from-feko-into-matlab#comment_539061

Hello! in order to be able to plot that graph the eigenvalues matrix should be of size (339x22) which means that you get the eigenvalues for each frequency sample.

Log in to comment.