diff options
author | 2020-05-14 15:52:06 -0400 | |
---|---|---|
committer | 2020-05-14 15:52:06 -0400 | |
commit | 076b3b1042269757a32ad902402529fe6bed50e6 (patch) | |
tree | 830d2b132191149b80fe99ac61b49714d771f25d /Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run | |
parent | Merge branch 'master' of https://github.com/viatra/VIATRA-Generator (diff) | |
download | VIATRA-Generator-076b3b1042269757a32ad902402529fe6bed50e6.tar.gz VIATRA-Generator-076b3b1042269757a32ad902402529fe6bed50e6.tar.zst VIATRA-Generator-076b3b1042269757a32ad902402529fe6bed50e6.zip |
Adjust Pledge, handling of many households.
Diffstat (limited to 'Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run')
-rw-r--r-- | Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/RunGeneratorConfig.xtend | 34 |
1 files changed, 20 insertions, 14 deletions
diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/RunGeneratorConfig.xtend b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/RunGeneratorConfig.xtend index 01f74f29..98bf7c83 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/RunGeneratorConfig.xtend +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/RunGeneratorConfig.xtend | |||
@@ -1,18 +1,17 @@ | |||
1 | package run | 1 | package run |
2 | 2 | ||
3 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ClassTypeScope | ||
4 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigSpecification | 3 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigSpecification |
5 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigurationScript | 4 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigurationScript |
6 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ExactNumber | ||
7 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileSpecification | 5 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileSpecification |
8 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.GenerationTask | 6 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.GenerationTask |
9 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.IntervallNumber | 7 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.IntervallNumber |
8 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ModelEntry | ||
10 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ObjectTypeScope | 9 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ObjectTypeScope |
10 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PartialModelSpecification | ||
11 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.RuntimeEntry | 11 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.RuntimeEntry |
12 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ScopeSpecification | 12 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ScopeSpecification |
13 | import hu.bme.mit.inf.dslreasoner.application.execution.ScriptExecutor | 13 | import hu.bme.mit.inf.dslreasoner.application.execution.ScriptExecutor |
14 | import hu.bme.mit.inf.dslreasoner.application.execution.StandaloneScriptExecutor | 14 | import hu.bme.mit.inf.dslreasoner.application.execution.StandaloneScriptExecutor |
15 | import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace | ||
16 | import java.text.SimpleDateFormat | 15 | import java.text.SimpleDateFormat |
17 | import java.util.Date | 16 | import java.util.Date |
18 | import org.apache.commons.cli.BasicParser | 17 | import org.apache.commons.cli.BasicParser |
@@ -23,13 +22,11 @@ import org.apache.commons.cli.Option | |||
23 | import org.apache.commons.cli.Options | 22 | import org.apache.commons.cli.Options |
24 | import org.apache.commons.cli.ParseException | 23 | import org.apache.commons.cli.ParseException |
25 | import org.eclipse.core.runtime.NullProgressMonitor | 24 | import org.eclipse.core.runtime.NullProgressMonitor |
26 | import org.eclipse.emf.ecore.resource.Resource | ||
27 | import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl | ||
28 | 25 | ||
29 | class RunGeneratorConfig { | 26 | class RunGeneratorConfig { |
30 | static var SIZE_LB = 20 | 27 | static var SIZE_LB = 20 |
31 | static var SIZE_UB = -1 | 28 | static var SIZE_UB = -1 |
32 | static var HOUSEHOLD = -1 | 29 | static var HOUSEHOLD = 0 |
33 | 30 | ||
34 | static var RUNS = 10 | 31 | static var RUNS = 10 |
35 | static var RUNTIME = 900 | 32 | static var RUNTIME = 900 |
@@ -39,6 +36,10 @@ class RunGeneratorConfig { | |||
39 | static val INITIAL = true | 36 | static val INITIAL = true |
40 | 37 | ||
41 | def static void main(String[] args) { | 38 | def static void main(String[] args) { |
39 | // Resource.Factory.Registry.INSTANCE.extensionToFactoryMap.put("xmi", new XMIResourceFactoryImpl) | ||
40 | // val workspace = new FileSystemWorkspace('''x/''', "") | ||
41 | // workspace.initAndClear | ||
42 | |||
42 | val options = new Options() | 43 | val options = new Options() |
43 | 44 | ||
44 | val lb = new Option("lb", "lowerBound", true, "generated model Lower bound") | 45 | val lb = new Option("lb", "lowerBound", true, "generated model Lower bound") |
@@ -101,7 +102,8 @@ class RunGeneratorConfig { | |||
101 | if (DOMAIN == "TaxationWithRoot") { | 102 | if (DOMAIN == "TaxationWithRoot") { |
102 | println("<<Households: " + HOUSEHOLD + ">>") | 103 | println("<<Households: " + HOUSEHOLD + ">>") |
103 | } | 104 | } |
104 | println() | 105 | |
106 | |||
105 | 107 | ||
106 | val naming = DOMAIN + "/size" + toStr(SIZE_LB) + "to" + toStr(SIZE_UB) + "x" + RUNS | 108 | val naming = DOMAIN + "/size" + toStr(SIZE_LB) + "to" + toStr(SIZE_UB) + "x" + RUNS |
107 | 109 | ||
@@ -128,15 +130,18 @@ class RunGeneratorConfig { | |||
128 | interval.maxUnlimited = false | 130 | interval.maxUnlimited = false |
129 | interval.maxNumber = SIZE_UB | 131 | interval.maxNumber = SIZE_UB |
130 | } | 132 | } |
133 | // workspace.writeModel(config, '''x.xmi''') | ||
134 | |||
135 | |||
131 | 136 | ||
132 | if (DOMAIN == "TaxationWithRoot") { | 137 | if (DOMAIN == "TaxationWithRoot") { |
133 | if (HOUSEHOLD == -1) { | 138 | if (HOUSEHOLD > 0) { |
134 | scopeSpec.scopes.remove(1) | 139 | val pms = genTask.partialModel as PartialModelSpecification |
135 | } else { | 140 | val me = pms.entry.get(0) as ModelEntry |
136 | val clsScope = scopeSpec.scopes.get(1) as ClassTypeScope | 141 | val fs = me.path as FileSpecification |
137 | val num = clsScope.number as ExactNumber | 142 | fs.path = "inputs/Resource" + HOUSEHOLD + "hh.xmi" |
138 | num.exactNumber = HOUSEHOLD | 143 | println("<<Using " + fs.path + " as initial model>>") |
139 | } | 144 | } |
140 | } | 145 | } |
141 | 146 | ||
142 | // Runtime | 147 | // Runtime |
@@ -155,6 +160,7 @@ class RunGeneratorConfig { | |||
155 | stats.path = statsPath | 160 | stats.path = statsPath |
156 | 161 | ||
157 | // Run Generator | 162 | // Run Generator |
163 | println() | ||
158 | executor.executeScript(config, new NullProgressMonitor) | 164 | executor.executeScript(config, new NullProgressMonitor) |
159 | 165 | ||
160 | println() | 166 | println() |