This repository was archived by the owner on Jan 23, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathmappingFunction.m
More file actions
74 lines (56 loc) · 3.27 KB
/
Copy pathmappingFunction.m
File metadata and controls
74 lines (56 loc) · 3.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
function [ mappedInput ] = mappingFunction( input )
x = sind(input(1));
z = cosd(input(1));
inputOne = {x z};
centerPoint = [0 1.35];
minSize = [1 1] / 2;
maxSize = [8 2.7] / 2;
delta = maxSize - minSize;
leftmostBorder = centerPoint(1) - minSize(1) - input(2) * delta(1);
rightmostBorder = centerPoint(1) + minSize(1) + input(2) * delta(1);
lowerBorder = centerPoint(2) - minSize(2) - input(2) * delta(2);
upperBorder = centerPoint(2) + minSize(2) + input(2) * delta(2);
inputTwo = {leftmostBorder, rightmostBorder, lowerBorder, upperBorder};
baseSchedule = [5 14];
startingHour = baseSchedule(1) + floor(input(3));
endingHour = baseSchedule(2) + floor(input(3));
inputThree = {startingHour, endingHour};
models = evalin('base', 'models');
index = evalin('base', 'index');
usedMaterialIds = [4 11 12];
modelIds = floor([input(4), 31 + input(5)]) + 1;
materialConfigurations = {};
for modelId = modelIds
model = models(modelId);
numMaterials = numel(model.materials);
materialConfiguration = strcat(num2str(numMaterials));
for i = 1:numel(model.materials)
material = model.materials(i);
materialConfiguration = strcat(materialConfiguration, ',', index(material.id).name, ',');
materialConfiguration = strcat(materialConfiguration, num2str(material.mesh), ',');
materialConfiguration = strcat(materialConfiguration, num2str(material.width * 10));
if ~any(usedMaterialIds == material.id)
usedMaterialIds = cat(2, usedMaterialIds, material.id);
end
end
materialConfigurations = cat(2, materialConfigurations, materialConfiguration);
end
materialList = strcat('i,Domus:Materiais,', num2str(numel(usedMaterialIds)));
materialSpecifications = '';
for materialId = usedMaterialIds
material = index(materialId);
materialList = strcat(materialList, ',', material.name);
materialSpecifications = strcat(materialSpecifications, sprintf('%s%s%s', char(13), newline(), 'i,Domus:Material,'), material.name, ',');
materialSpecifications = strcat(materialSpecifications, num2str(material.density), ',');
materialSpecifications = strcat(materialSpecifications, num2str(material.porosity), ',');
materialSpecifications = strcat(materialSpecifications, num2str(material.specificHeat), ',');
materialSpecifications = strcat(materialSpecifications, num2str(material.thermalConductivity), ',');
materialSpecifications = strcat(materialSpecifications, num2str(material.isothermsTable), ',');
materialSpecifications = strcat(materialSpecifications, num2str(material.isothermsGranularity), ',');
materialSpecifications = strcat(materialSpecifications, material.dataFile, ',');
materialSpecifications = strcat(materialSpecifications, material.isothermsFile, ',');
materialSpecifications = strcat(materialSpecifications, material.isothermsFunction, ',0;');
end
materialList = strcat(materialList, ';');
mappedInput = cat(2, inputOne, inputTwo, inputThree, materialConfigurations, materialList, materialSpecifications);
end