private EsgDissymmetricalBranch createDissymmetricalBranch(String id, ConnectionBus bus1, ConnectionBus bus2, double nominalV, double r, double x, double g1, double b1, double g2, double b2, EsgGeneralParameters parameters) { EsgBranchConnectionStatus status = getStatus(bus1, bus2); float rate = parameters.getSnref(); double vnom2 = Math.pow(nominalV, 2); double rb = (r * parameters.getSnref()) / vnom2; double rxb = (x * parameters.getSnref()) / vnom2; double gs1 = (g1 / parameters.getSnref()) * vnom2; double bs1 = (b1 / parameters.getSnref()) * vnom2; double gs2 = (g2 / parameters.getSnref()) * vnom2; double bs2 = (b2 / parameters.getSnref()) * vnom2; return new EsgDissymmetricalBranch(new EsgBranchName(new Esg8charName(dictionary.getEsgId(bus1.getId())), new Esg8charName(dictionary.getEsgId(bus2.getId())), parallelIndexes.getParallelIndex(id)), status, rb, rxb, gs1, bs1, rate, rb, rxb, gs2, bs2); }