From 3f5aaab5025b8eb243f414b1c789085327df04f4 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Wed, 20 Mar 2019 16:09:09 +0100 Subject: Fault tree transformation for partial models WIP --- .../transformation/ft2galileo/Ft2GalileoTransformation.xtend | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ft2galileo/Ft2GalileoTransformation.xtend') diff --git a/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ft2galileo/Ft2GalileoTransformation.xtend b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ft2galileo/Ft2GalileoTransformation.xtend index 732d9fed..4a19e2cd 100644 --- a/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ft2galileo/Ft2GalileoTransformation.xtend +++ b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ft2galileo/Ft2GalileoTransformation.xtend @@ -14,14 +14,15 @@ import org.eclipse.xtend2.lib.StringConcatenationClient class Ft2GalileoTransformation { def toGalileo(FaultTree faultTree) ''' - toplevel «faultTree.topEvent.name»; + toplevel "«faultTree.topEvent.name»"; «FOR event : faultTree.events» - «event.name» «defineEvent(event)»; + "«event.name»" «defineEvent(event)»; «ENDFOR» ''' protected dispatch def defineEvent(BasicEvent basicEvent) { - defineDistribution(basicEvent.distribution) + // ft-diet (https://moves.rwth-aachen.de/ft-diet/) needs a dormancy factor. + '''«defineDistribution(basicEvent.distribution)» dorm=0.0''' } protected dispatch def StringConcatenationClient defineDistribution(ConstantDistribution distribution) { @@ -37,7 +38,7 @@ class Ft2GalileoTransformation { } protected dispatch def StringConcatenationClient defineEvent(Gate gate) { - '''«defineGate(gate)» «FOR input : gate.inputEvents SEPARATOR " "»«input.name»«ENDFOR»''' + '''«defineGate(gate)» «FOR input : gate.inputEvents SEPARATOR " "»"«input.name»"«ENDFOR»''' } protected dispatch def StringConcatenationClient defineGate(AndGate gate) '''and''' -- cgit v1.2.3-70-g09d2