Hi Romain,

thanks, I didn’t realize I was applying the “when” on the aggregation 
transition…

I am having some OpenMOLE compilation errors:

[error] 
/Users/as12312/Software/OpenMOLE/openmole/runtime/org.openmole.runtime.daemon/src/main/scala/org/openmole/runtime/daemon/JobLauncher.scala:78:
 missing arguments for method newFile in class Workspace;
[error] follow this method with `_' if you want to treat it as a partially 
applied function
[error]     val storageFile = Workspace.newFile
[error]                                 ^
[error] 
/Users/as12312/Software/OpenMOLE/openmole/runtime/org.openmole.runtime.daemon/src/main/scala/org/openmole/runtime/daemon/JobLauncher.scala:291:
 missing arguments for method newDir in class Workspace;
[error] follow this method with `_' if you want to treat it as a partially 
applied function
[error]                 val dir = Workspace.newDir
[error]                                     ^
[error] 
/Users/as12312/Software/OpenMOLE/openmole/runtime/org.openmole.runtime.daemon/src/main/scala/org/openmole/runtime/daemon/JobLauncher.scala:300:
 missing arguments for method newDir in class Workspace;
[error] follow this method with `_' if you want to treat it as a partially 
applied function
[error]           val pluginDir = Workspace.newDir
[error]                                     ^
[error] 
/Users/as12312/Software/OpenMOLE/openmole/runtime/org.openmole.runtime.daemon/src/main/scala/org/openmole/runtime/daemon/JobLauncher.scala:328:
 missing arguments for method newDir in class Workspace;
[error] follow this method with `_' if you want to treat it as a partially 
applied function
[error] Error occurred in an application involving default arguments.
[error]           val localCommunicationDirPath = Workspace.newDir


Andreas

> On 18 May 2015, at 15:57, Romain Reuillon <[email protected]> wrote:
> 
> Hi Andrea,
> 
> the generalized notation for transition using when was not implemented for 
> Exploration and Aggreagtion transition. The commit 
> b6d6fe420c22f33f0b38644195f7efaaeac8d3eb fixed it. Could you test it?
> 
> Cheers,
> Romain
> 
> Le 18/05/2015 14:42, Andreas Schuh a écrit :
>> Hi,
>> 
>> the following are excerpts of my recent attempt to workaround previous WF 
>> issues (which I believe are due to bugs in OpenMOLE…). How can I resolve the 
>> compilation error:
>> 
>> [error] 
>> /Users/as12312/Documents/Projects/REPEAT/src/main/scala/com/andreasschuh/repeat/workflow/RunRegistration.scala:496:
>>  overloaded method value >- with alternatives:
>> [error]   (toHead: org.openmole.core.workflow.puzzle.Puzzle,toTail: 
>> org.openmole.core.workflow.puzzle.Puzzle*)org.openmole.core.workflow.puzzle.Puzzle
>>  <and>
>> [error]   (to: org.openmole.core.workflow.puzzle.Puzzle,condition: 
>> org.openmole.core.workflow.transition.Condition,filter: 
>> org.openmole.core.workflow.transition.Filter[String],trigger: 
>> org.openmole.core.workflow.transition.Condition)org.openmole.core.workflow.puzzle.Puzzle
>> [error]  cannot be applied to 
>> (org.openmole.core.workflow.transition.TransitionParameter, 
>> org.openmole.core.workflow.transition.TransitionParameter)
>> [error]           evaluateOverlapEnd >- (
>> [error]                              ^
>> [error] one error found
>> [error] (compile:compile) Compilation failed
>> 
>> 
>> List of OpenMOLE imports:
>> 
>> import org.openmole.core.dsl._
>> import org.openmole.core.workflow.data.Prototype
>> import org.openmole.plugin.domain.file._
>> import org.openmole.plugin.hook.file._
>> import org.openmole.plugin.sampling.combine._
>> import org.openmole.plugin.sampling.csv._
>> import org.openmole.plugin.task.scala._
>> import org.openmole.plugin.tool.pattern.Skip
>> 
>> 
>> Here the offending aggregation:
>> 
>> val writeMean =
>>   evaluateOverlapEnd >- (
>>     writeMeanOverlap(dscRegAvgCsvPath, dscGrpAvg, dscRegAvg, header = 
>> groups) when "!dscGrpAvgValid.contains(false)",
>>     writeMeanOverlap(jsiRegAvgCsvPath, jsiGrpAvg, jsiRegAvg, header = 
>> groups) when "!jsiGrpAvgValid.contains(false)"
>>   )
>> 
>> 
>> Definition of evaluateOverlapEnd:
>> 
>> val evaluateOverlapEnd =
>>   Capsule(
>>     EmptyTask() set (
>>       name    := s"${reg.id}-EvaluateOverlapEnd",
>>       inputs  += (dscValues, dscGrpAvg, dscGrpStd, jsiValues, jsiGrpAvg, 
>> jsiGrpStd),
>>       inputs  += (dscValuesValid, dscGrpAvgValid, dscGrpStdValid, 
>> jsiValuesValid, jsiGrpAvgValid, jsiGrpStdValid),
>>       outputs += (dscValues, dscGrpAvg, dscGrpStd, jsiValues, jsiGrpAvg, 
>> jsiGrpStd),
>>       outputs += (dscValuesValid, dscGrpAvgValid, dscGrpStdValid, 
>> jsiValuesValid, jsiGrpAvgValid, jsiGrpStdValid)
>>     ),
>>     strainer = true
>>   )
>> 
>> 
>> Definition of writeMeanOverlap:
>> 
>> def writeMeanOverlap(path: String, values: Prototype[Array[Double]], mean: 
>> Prototype[Array[Double]], header: String) =
>>   ScalaTask(
>>     s"""
>>       | val regId = input.regId.head
>>       | val parId = input.parId.head
>>       | val ${mean.name} = ${values.name}.transpose.map(_.sum / 
>> ${values.name}.head.size)
>>     """.stripMargin
>>   ) set (
>>     name    := s"${reg.id}-Write${mean.name.capitalize}",
>>     inputs  += (regId.toArray, parId.toArray, values.toArray),
>>     outputs += (regId, parId, mean)
>>   ) hook (
>>     AppendToCSVFileHook(path, regId, parId, mean) set (
>>       csvHeader := "Registration,Parameters," + header,
>>       singleRow := true
>>     )
>>   )
>> 
>> 
>> Cheers,
>> Andreas
>> _______________________________________________
>> OpenMOLE-users mailing list
>> [email protected]
>> http://fedex.iscpif.fr/mailman/listinfo/openmole-users
> 
> 


_______________________________________________
OpenMOLE-users mailing list
[email protected]
http://fedex.iscpif.fr/mailman/listinfo/openmole-users

Reply via email to