package org.ieee.odm.adapter.psse.parser.dynamic.generator; import org.ieee.odm.adapter.psse.PSSEAdapter.PsseVersion; import org.ieee.odm.adapter.psse.parser.aclf.BasePSSEDataParser; import org.ieee.odm.common.ODMException; import org.ieee.odm.model.base.ODMModelStringUtil; public class PSSEGenrouDataParser extends BasePSSEDataParser { public PSSEGenrouDataParser(PsseVersion ver) { super(ver); } @Override public String[] getMetadata() { return new String[]{ // 0----------1----------2----------3----------4 "IBUS", "Type", "MachId", "T'do", "T''do", // 5----------6----------7----------8----------9 "T'qo", "T''qo", "H", "D", "Xd", // 10----------11----------12--------13--------14 "Xq", "X'd", "X'q", "X''d", "Xl", // 15----------16---- "S(1.0)", "S(1.2)" }; } /* * Xd, Xq, X�d, X�q, X"d, X"q, Xl, H, and D are in pu, machine MVA base. X"qmust be equal to X"d. IBUS, �GENROU�, I, T�do, T"do, T"qo, T"qo, H, D, Xd, Xq, X�d, X�q, X"d, Xl, S(1.0), S(1.2)/ */ @Override public void parseFields(final String lineStr) throws ODMException { this.clearNVPairTableData(); // split the line string by multi-blanks String[] strAry=lineStr.split("\\s+"); int cnt =strAry.length; for (int i = 0; i <cnt ; i++){ if(i==1){//gen model type, need to trim the quote setValue(i,ODMModelStringUtil.trimQuote(strAry[i].trim())); } else setValue(i, strAry[i].trim()); } } }