Adding a single left bracket and a single right bracket to a matrix

I want the following:
I get the following:
k = 13;
disp(['Number of neutral strand = ' num2str(k)])
Rb = 1.269/2/12; % ft
disp(['Radius of the circle passing through the centers of the neutral strands, Rb = ' num2str(Rb) ' ft'])
RDc = 0.498/2/12; % ft
disp(['Phase conductor equivalent (self) radius, RDc = ' num2str(RDc) ' ft'])
RDs = 0.1019/2/12; % ft
disp(['Neutral strand equivalent radius, RDs = ' num2str(RDs) ' ft'])
yag = (77.3619i)/(log(Rb/RDc)-(1/k)*(log(k*(RDs/Rb)))); %μS/mile
disp(['Shunt admittance, yag = ' num2str(yag) ' μS/mile'])
Yabc = diag([yag,yag,yag]);
disp(Yabc)
temp = splitlines(formattedDisplayText(Yabc));
temp(2) = temp(2) + " μS/mile";
disp(char(temp))

 Accepted Answer

I'm not sure if this can be done in the command window, but in a Live Script matrix output can be shown with square brackets.
A = rand(3);
sympref('FloatingPointOutput',true);
sympref('MatrixWithSquareBrackets',true);
ans = logical
0
disp(sym(A))

4 Comments

I am using Matlab live editor. The brackets look great. How do I add my units back?
k = 13;
disp(['Number of neutral strand = ' num2str(k)])
Rb = 1.269/2/12; % ft
disp(['Radius of the circle passing through the centers of the neutral strands, Rb = ' num2str(Rb) ' ft'])
RDc = 0.498/2/12; % ft
disp(['Phase conductor equivalent (self) radius, RDc = ' num2str(RDc) ' ft'])
RDs = 0.1019/2/12; % ft
disp(['Neutral strand equivalent radius, RDs = ' num2str(RDs) ' ft'])
yag = (77.3619i)/(log(Rb/RDc)-(1/k)*(log(k*(RDs/Rb)))); %μS/mile
disp(['Shunt admittance, yag = ' num2str(yag) ' μS/mile'])
Yabc = diag([yag,yag,yag]);
sympref('FloatingPointOutput',true);
sympref('MatrixWithSquareBrackets',true);
disp(sym(Yabc))
Is 'mi' acceptable over 'mile'? I guess the units are displayed in blue font. Maybe there's a preference for that?
A = rand(3);
d1 = digits(5); % set the precision for the display
sympref('MatrixWithSquareBrackets',true);
u = symunit;
mcspm = u.microsecond/u.mile;
B = vpa(A);
displayFormula('B*mcspm')
Or
displayFormula(["B","'μS/mile'"])
digits(d1); % reset to whatever the digits were
That's a really effective use of displayFormula !

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Products

Release

R2025b

Asked:

on 7 Feb 2026

Commented:

on 8 Feb 2026 at 23:14

Community Treasure Hunt

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

Start Hunting!