Я пытаюсь вернуть два значения из разделимости расширения Netlo go. В приведенном ниже коде расширения:
package distribution;
import java.util.Random;
import org.nlogo.api.*;
public class V2G extends DefaultReporter {
public Syntax getSyntax() {
return Syntax.reporterSyntax(new int[] {Syntax.ListType(), Syntax.NumberType(), Syntax.NumberType(), Syntax.NumberType(), Syntax.NumberType()}, Syntax.ListType());
}
public Object report(Argument args[], Context context) throws ExtensionException {
LogoList coalizao;
double gamma;
double amdc;
double op;
int constante;
double mep=0;
double sum = 0;
try {
coalizao = args[0].getList();
gamma = args[1].getDoubleValue();
amdc = args[2].getDoubleValue();
constante = args[3].getIntValue();
op = args[4].getDoubleValue();
}
catch(LogoException e) {
throw new ExtensionException( e.getMessage() ) ;
}
if (coalizao.size() < 2 || coalizao.size() > gamma) return 0;
for (int i = 0; i < coalizao.size(); i++) {
int agente = (int)((Double)coalizao.get(i)).doubleValue();
int min = 0;
int max = 30;
Random r = new Random(agente*constante);
mep += r.nextInt(max - min + 1) + min;
return mep;
}
sum = amdc + mep - op ;
return sum;
}
}
В приведенном выше коде есть два значения, которые должны возвращать mep и sum.
Я использую следующий код в Netlo go для импорта values
to-report getCoalitionValue [coalition]
report distribution:V2G coalition gamma amdc constante op
end
Теперь моя проблема в том, как я могу импортировать значения mep и sum отдельно в Netlo go.
Кто-нибудь может мне помочь с этим? Заранее спасибо.