Skip to content
Snippets Groups Projects
plot_connection_matrices.m 1.6 KiB
Newer Older
function plot_connection_matrices(IDS)
info = extract_info_connection_matrix(IDS);

for kk=1:info.ntotcircuits
    figure
    mat = info.pf_active.circuit{kk}.connections;
    
    b = zeros([size(mat)]+1);
    b(1:end-1, 1:end-1) = mat;
    pcolor(b)
    
    yti = [1:size(b,1)]+0.5;
    xti = [1:size(b,2)]+0.5;
    
    ylab = cellstr(num2str([1:size(b,1)-1]'));
    index = 0;
    xlab = {};
    
    % Get the labels
    for ii=1:info.ntotsupplies
        index = index +1;
        
        if any(ii==info.pf_active.circuit{kk}.supplies_ind_belonging_to_circuit)
           addcolor = '\color{red}';
        else
            addcolor = '\color{green}';
        end
        
        xlab{index} = [addcolor info.pf_active.supply{ii}.name 'in'];
        index = index +1;
        xlab{index} = [addcolor info.pf_active.supply{ii}.name 'out'];
    end
    for ii=1:info.ntotcoils
        
        if any(ii==info.pf_active.circuit{kk}.coils_ind_belonging_to_circuit)
           addcolor = '\color{red}';
        else
            addcolor = '\color{black}';
        end
        
        index = index +1;
        xlab{index} = [addcolor info.pf_active.coil{ii}.name 'in'];
        index = index +1;
        xlab{index} = [addcolor info.pf_active.coil{ii}.name 'out'];
    end
    
    shg
    axis ij
    ax = gca;
    colormap(bone(2))
    xlabel('Element name. (red) Elemement belonging to circuit. (green) power supplies. (black) coils');
    ylabel('Node');
    title(['Circuit ' num2str(kk) ': ' info.pf_active.circuit{kk}.name])
    set(ax,'Xtick', xti, 'Ytick', yti, 'XTickLabel', xlab, 'YTickLabel', ylab')
    
end

end