To communicate to MATPOWER to exchange network data these functions are available.

pandapower.converter.from_mpc(mpc_file, f_hz=50, casename_mpc_file='mpc', validate_conversion=False, **kwargs)

This function converts a matpower case file version 2 to a pandapower net.

Note: The input is a .mat file not an .m script. You need to save the mpc dict variable as .mat file. If the saved variable of the matlab workspace is not named ‘mpc’, you can adapt the value of ‘casename_mpc_file’ as needed.

Note: python is 0-based while Matlab is 1-based.


mpc_file - path to a matpower case file (.mat format not .m script).


f_hz (int, 50) - The frequency of the network.

casename_mpc_file (str, ‘mpc’) - The name of the variable in .mat file which contain the matpower case structure, i.e. the arrays “gen”, “branch” and “bus”.

**kwargs - key word arguments for from_ppc()


net - The pandapower network


import pandapower.converter as pc

pp_net = cv.from_mpc(‘case9.mat’, f_hz=60)

pandapower.converter.to_mpc(net, filename=None, **kwargs)

This function converts a pandapower net to a matpower case files (.mat) version 2. Note: python is 0-based while Matlab is 1-based.


net - The pandapower net.

filename (str, None) - File path + name of the mat file which will be created. If None

the mpc will only be returned

**kwargs - please look at to_ppc() documentation


import pandapower.converter as pc import pandapower.networks as pn net = pn.case9() pc.to_mpc(net, “case9.mat”)