private static BranchData legBranchData(String twtId, Side side, LegBase<?> leg, double g, double b, double ratedU0,
Complex starVoltage,
double epsilonX, boolean applyReactanceCorrection) {
String branchId = twtId + "_" + side;
double r = side == Side.ONE ? leg.getR() : adjustedR((Leg2or3) leg);
double x = side == Side.ONE ? leg.getX() : adjustedX((Leg2or3) leg);
double uk = getV(leg);
double thetak = getTheta(leg);
double u0 = starVoltage.abs();
double theta0 = starVoltage.getArgument();
double gk = 0;
double bk = 0;
double g0 = g;
double b0 = b;
double rhok = side == Side.ONE ? 1.0 : rho((Leg2or3) leg, ratedU0);
double alphak = 0;
double rho0 = 1;
double alpha0 = 0;
boolean buskMainComponent = true;
boolean bus0MainComponent = true;
boolean buskConnected = true;
boolean bus0Connected = true;
double flowPk = Double.NaN;
double flowQk = Double.NaN;
double flowP0 = Double.NaN;
double flowQ0 = Double.NaN;
return new BranchData(branchId, r, x, rhok, rho0, uk, u0, thetak, theta0, alphak, alpha0, gk, g0, bk, b0,
flowPk, flowQk, flowP0, flowQ0, buskConnected, bus0Connected, buskMainComponent, bus0MainComponent,
epsilonX, applyReactanceCorrection);
}