Author: jcouteau Date: 2009-03-25 12:45:16 +0000 (Wed, 25 Mar 2009) New Revision: 89 Modified: trunk/sensitivity/SensitivityCalculatorJavaExpandGrid.java trunk/sensitivity/SensitivityCalculatorRMorris.java Log: Adding support for Equation and Matrix continuous domains. Modified: trunk/sensitivity/SensitivityCalculatorJavaExpandGrid.java =================================================================== --- trunk/sensitivity/SensitivityCalculatorJavaExpandGrid.java 2009-03-20 13:55:55 UTC (rev 88) +++ trunk/sensitivity/SensitivityCalculatorJavaExpandGrid.java 2009-03-25 12:45:16 UTC (rev 89) @@ -37,6 +37,8 @@ import fr.ifremer.isisfish.simulator.sensitivity.SensitivityScenarios; import fr.ifremer.isisfish.simulator.sensitivity.domain.ContinuousDomain; import fr.ifremer.isisfish.simulator.sensitivity.domain.DiscreteDomain; +import fr.ifremer.isisfish.simulator.sensitivity.domain.EquationContinuousDomain; +import fr.ifremer.isisfish.simulator.sensitivity.domain.MatrixContinuousDomain; /** * Implementation of ExpandGrid method using Java @@ -107,7 +109,12 @@ rest = rest - (card * result); Double value = min + ((max - min) / card * rest); - factor.setValueForIdentifier(value); + if ((factors.get(j).getDomain() instanceof MatrixContinuousDomain) + || (factors.get(j).getDomain() instanceof EquationContinuousDomain)) { + factor.setValueForIdentifier(value.toString()); + } else { + factor.setValueForIdentifier(value); + } } if (factors.get(j).getDomain() instanceof DiscreteDomain) { int card = ((DiscreteDomain<? extends Serializable>) factors Modified: trunk/sensitivity/SensitivityCalculatorRMorris.java =================================================================== --- trunk/sensitivity/SensitivityCalculatorRMorris.java 2009-03-20 13:55:55 UTC (rev 88) +++ trunk/sensitivity/SensitivityCalculatorRMorris.java 2009-03-25 12:45:16 UTC (rev 89) @@ -40,6 +40,8 @@ import fr.ifremer.isisfish.simulator.sensitivity.SensitivityScenarios; import fr.ifremer.isisfish.simulator.sensitivity.domain.ContinuousDomain; import fr.ifremer.isisfish.simulator.sensitivity.domain.DiscreteDomain; +import fr.ifremer.isisfish.simulator.sensitivity.domain.EquationContinuousDomain; +import fr.ifremer.isisfish.simulator.sensitivity.domain.MatrixContinuousDomain; /** * Implementation of Morris method using R. @@ -224,8 +226,14 @@ Scenario experimentScenario = new Scenario(); for (int i = 0; i < factorNumber; i++) { Factor<? extends Serializable> factor = factors.get(i); - factor.setValueForIdentifier(morris - .getValue(new int[] { i, j })); + if ((factor.getDomain() instanceof MatrixContinuousDomain) + || (factor.getDomain() instanceof EquationContinuousDomain)) { + factor.setValueForIdentifier(Double.valueOf( + morris.getValue(new int[] { i, j })).toString()); + } else { + factor.setValueForIdentifier(morris.getValue(new int[] { i, + j })); + } experimentScenario.addFactor(factor); } thisExperimentScenarios.add(experimentScenario);