aboutsummaryrefslogtreecommitdiffstats
path: root/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator
diff options
context:
space:
mode:
authorLibravatar 20001LastOrder <boqi.chen@mail.mcgill.ca>2019-05-30 15:22:18 -0400
committerLibravatar 20001LastOrder <boqi.chen@mail.mcgill.ca>2019-05-30 15:22:18 -0400
commit44cdd1a31dff6efaad294c1ac8b7918d0be4cd8f (patch)
treef53168fb4057acdbce3cc7584c3e794217bdb9c1 /Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator
parentfix the metric calculation could mix edge types and constraints (diff)
downloadVIATRA-Generator-44cdd1a31dff6efaad294c1ac8b7918d0be4cd8f.tar.gz
VIATRA-Generator-44cdd1a31dff6efaad294c1ac8b7918d0be4cd8f.tar.zst
VIATRA-Generator-44cdd1a31dff6efaad294c1ac8b7918d0be4cd8f.zip
measurement for controlled random generation
Diffstat (limited to 'Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator')
-rw-r--r--Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/.gitignore3
-rw-r--r--Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/app/Main.xtend10
-rw-r--r--Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/graph/EMFGraph.xtend7
3 files changed, 13 insertions, 7 deletions
diff --git a/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/.gitignore b/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/.gitignore
index b75ad9db..317e68e2 100644
--- a/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/.gitignore
+++ b/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/.gitignore
@@ -2,4 +2,5 @@
2bin/ 2bin/
3testInput/ 3testInput/
4testOutput/ 4testOutput/
5xtend-gen/ \ No newline at end of file 5xtend-gen/
6*.csv \ No newline at end of file
diff --git a/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/app/Main.xtend b/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/app/Main.xtend
index 2e793b23..15df0dde 100644
--- a/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/app/Main.xtend
+++ b/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/app/Main.xtend
@@ -25,17 +25,17 @@ class Main {
25 //init model 25 //init model
26 YakindummPackageImpl.eINSTANCE.eClass; 26 YakindummPackageImpl.eINSTANCE.eClass;
27// Yakindumm2PackageImpl.eINSTANCE.eClass; 27// Yakindumm2PackageImpl.eINSTANCE.eClass;
28 val infos = initData(); 28 //val infos = initData();
29 29
30 println("Start Reading Models..."); 30 println("Start Reading Models...");
31 var reader = new GraphReader(YakindummPackageImpl.eINSTANCE); 31 var reader = new GraphReader(YakindummPackageImpl.eINSTANCE);
32 for(info : infos){ 32// for(info : infos){
33 calculateAllModels(info.inputFolder, info.outputFolder,info.numRuns, reader); 33// calculateAllModels(info.inputFolder, info.outputFolder,info.numRuns, reader);
34 } 34// }
35 35
36 //human input has different package declaration 36 //human input has different package declaration
37// reader = new GraphReader(Yakindumm2PackageImpl.eINSTANCE); 37// reader = new GraphReader(Yakindumm2PackageImpl.eINSTANCE);
38 val human = new RWInformation("inputs/humanInput/", "../plot/statistics/humanOutput/", 1); 38 val human = new RWInformation("inputs/Random/", "outputs/", 1);
39 calculateAllModels(human.inputFolder, human.outputFolder,human.numRuns, reader); 39 calculateAllModels(human.inputFolder, human.outputFolder,human.numRuns, reader);
40 40
41 41
diff --git a/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/graph/EMFGraph.xtend b/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/graph/EMFGraph.xtend
index b20ffa01..5c161f4b 100644
--- a/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/graph/EMFGraph.xtend
+++ b/Metrics/Metrics-Calculation/ca.mcgill.ecse.dslreasoner.realistic.metrics.calculator/src/ca/mcgill/ecse/dslreasoner/realistic/metrics/calculator/graph/EMFGraph.xtend
@@ -8,7 +8,6 @@ import org.eclipse.emf.ecore.EObject
8import org.eclipse.emf.ecore.EReference 8import org.eclipse.emf.ecore.EReference
9 9
10class EMFGraph extends Graph{ 10class EMFGraph extends Graph{
11
12 def void init (EObject root, List<Metric> metrics, String name, List<String> referenceTypes){ 11 def void init (EObject root, List<Metric> metrics, String name, List<String> referenceTypes){
13 val otherContents = root.eAllContents.toList(); 12 val otherContents = root.eAllContents.toList();
14 otherContents.add(root); 13 otherContents.add(root);
@@ -67,9 +66,15 @@ class EMFGraph extends Graph{
67 nodeInfo.add(NUM_NODE_HEADER); 66 nodeInfo.add(NUM_NODE_HEADER);
68 nodeInfo.add(this.statistic.allNodes.size()+""); 67 nodeInfo.add(this.statistic.allNodes.size()+"");
69 68
69 val stateInfo = new ArrayList<String>();
70 stateInfo.add(STATE_ID_HEADER);
71 stateInfo.add(this.name);
72
73
70 output.add(metaInfo); 74 output.add(metaInfo);
71 output.add(edgeInfo); 75 output.add(edgeInfo);
72 output.add(nodeInfo); 76 output.add(nodeInfo);
77 output.add(stateInfo);
73 } 78 }
74 79
75 def EList<EObject> getNeighbours(EObject o, EReference r){ 80 def EList<EObject> getNeighbours(EObject o, EReference r){