Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions examples/triangle2D/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
project(triangle2D LANGUAGES CXX)

add_executable(${PROJECT_NAME} "${PROJECT_NAME}.cpp")
target_link_libraries(${PROJECT_NAME} PRIVATE ViennaRay)
configure_file(lineMesh.dat ${CMAKE_CURRENT_BINARY_DIR}/lineMesh.dat COPYONLY)

add_dependencies(ViennaRay_Examples ${PROJECT_NAME})
263 changes: 263 additions & 0 deletions examples/triangle2D/lineMesh.dat
Original file line number Diff line number Diff line change
@@ -0,0 +1,263 @@
grid_delta 0.2
n_nodes 131
n_elements 130
n -2.0 -8.0 0.0
n -2.0 -8.0 0.0
n -1.8 -8.0 0.0
n -1.6 -8.0 0.0
n -1.4 -8.0 0.0
n -1.2 -8.0 0.0
n -1.0 -8.0 0.0
n -0.8 -8.0 0.0
n -0.6 -8.0 0.0
n -0.4 -8.0 0.0
n -0.2 -8.0 0.0
n 0.0 -8.0 0.0
n 0.2 -8.0 0.0
n 0.4 -8.0 0.0
n 0.6 -8.0 0.0
n 0.8 -8.0 0.0
n 1.0 -8.0 0.0
n 1.2 -8.0 0.0
n 1.4 -8.0 0.0
n 1.6 -8.0 0.0
n 1.8 -8.0 0.0
n 2.0 -8.0 0.0
n 2.0 -8.0 0.0
n -2.0 -7.8 0.0
n 2.0 -7.8 0.0
n -2.0 -7.6 0.0
n 2.0 -7.6 0.0
n -2.0 -7.4 0.0
n 2.0 -7.4 0.0
n -2.0 -7.2 0.0
n 2.0 -7.2 0.0
n -2.0 -7.0 0.0
n 2.0 -7.0 0.0
n -2.0 -6.8 0.0
n 2.0 -6.8 0.0
n -2.0 -6.6 0.0
n 2.0 -6.6 0.0
n -2.0 -6.4 0.0
n 2.0 -6.4 0.0
n -2.0 -6.2 0.0
n 2.0 -6.2 0.0
n -2.0 -6.0 0.0
n 2.0 -6.0 0.0
n -2.0 -5.8 0.0
n 2.0 -5.8 0.0
n -2.0 -5.6 0.0
n 2.0 -5.6 0.0
n -2.0 -5.4 0.0
n 2.0 -5.4 0.0
n -2.0 -5.2 0.0
n 2.0 -5.2 0.0
n -2.0 -5.0 0.0
n 2.0 -5.0 0.0
n -2.0 -4.8 0.0
n 2.0 -4.8 0.0
n -2.0 -4.6 0.0
n 2.0 -4.6 0.0
n -2.0 -4.4 0.0
n 2.0 -4.4 0.0
n -2.0 -4.2 0.0
n 2.0 -4.2 0.0
n -2.0 -4.0 0.0
n 2.0 -4.0 0.0
n -2.0 -3.8 0.0
n 2.0 -3.8 0.0
n -2.0 -3.6 0.0
n 2.0 -3.6 0.0
n -2.0 -3.4 0.0
n 2.0 -3.4 0.0
n -2.0 -3.2 0.0
n 2.0 -3.2 0.0
n -2.0 -3.0 0.0
n 2.0 -3.0 0.0
n -2.0 -2.8 0.0
n 2.0 -2.8 0.0
n -2.0 -2.6 0.0
n 2.0 -2.6 0.0
n -2.0 -2.4 0.0
n 2.0 -2.4 0.0
n -2.0 -2.2 0.0
n 2.0 -2.2 0.0
n -2.0 -2.0 0.0
n 2.0 -2.0 0.0
n -2.0 -1.8 0.0
n 2.0 -1.8 0.0
n -2.0 -1.6 0.0
n 2.0 -1.6 0.0
n -2.0 -1.4 0.0
n 2.0 -1.4 0.0
n -2.0 -1.2 0.0
n 2.0 -1.2 0.0
n -2.0 -1.0 0.0
n 2.0 -1.0 0.0
n -2.0 -0.8 0.0
n 2.0 -0.8 0.0
n -2.0 -0.6 0.0
n 2.0 -0.6 0.0
n -2.0 -0.4 0.0
n 2.0 -0.4 0.0
n -2.0 -0.2 0.0
n 2.0 -0.2 0.0
n -5.0 -0.0 0.0
n -4.8 -0.0 0.0
n -4.6 -0.0 0.0
n -4.4 -0.0 0.0
n -4.2 -0.0 0.0
n -4.0 -0.0 0.0
n -3.8 -0.0 0.0
n -3.6 -0.0 0.0
n -3.4 -0.0 0.0
n -3.2 -0.0 0.0
n -3.0 -0.0 0.0
n -2.8 -0.0 0.0
n -2.6 -0.0 0.0
n -2.4 -0.0 0.0
n -2.2 -0.0 0.0
n 2.2 -0.0 0.0
n 2.4 -0.0 0.0
n 2.6 -0.0 0.0
n 2.8 -0.0 0.0
n 3.0 -0.0 0.0
n 3.2 -0.0 0.0
n 3.4 -0.0 0.0
n 3.6 -0.0 0.0
n 3.8 -0.0 0.0
n 4.0 -0.0 0.0
n 4.2 -0.0 0.0
n 4.4 -0.0 0.0
n 4.6 -0.0 0.0
n 4.8 -0.0 0.0
n 5.0 -0.0 0.0
e 1 2
e 2 3
e 3 4
e 4 5
e 5 6
e 6 7
e 7 8
e 8 9
e 9 10
e 10 11
e 11 12
e 12 13
e 13 14
e 14 15
e 15 16
e 16 17
e 17 18
e 18 19
e 19 20
e 20 21
e 21 22
e 23 0
e 22 24
e 25 23
e 24 26
e 27 25
e 26 28
e 29 27
e 28 30
e 31 29
e 30 32
e 33 31
e 32 34
e 35 33
e 34 36
e 37 35
e 36 38
e 39 37
e 38 40
e 41 39
e 40 42
e 43 41
e 42 44
e 45 43
e 44 46
e 47 45
e 46 48
e 49 47
e 48 50
e 51 49
e 50 52
e 53 51
e 52 54
e 55 53
e 54 56
e 57 55
e 56 58
e 59 57
e 58 60
e 61 59
e 60 62
e 63 61
e 62 64
e 65 63
e 64 66
e 67 65
e 66 68
e 69 67
e 68 70
e 71 69
e 70 72
e 73 71
e 72 74
e 75 73
e 74 76
e 77 75
e 76 78
e 79 77
e 78 80
e 81 79
e 80 82
e 83 81
e 82 84
e 85 83
e 84 86
e 87 85
e 86 88
e 89 87
e 88 90
e 91 89
e 90 92
e 93 91
e 92 94
e 95 93
e 94 96
e 97 95
e 96 98
e 99 97
e 98 100
e 101 102
e 102 103
e 103 104
e 104 105
e 105 106
e 106 107
e 107 108
e 108 109
e 109 110
e 110 111
e 111 112
e 112 113
e 113 114
e 114 115
e 115 99
e 100 116
e 116 117
e 117 118
e 118 119
e 119 120
e 120 121
e 121 122
e 122 123
e 123 124
e 124 125
e 125 126
e 126 127
e 127 128
e 128 129
e 129 130
45 changes: 45 additions & 0 deletions examples/triangle2D/triangle2D.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#include <rayTraceTriangle.hpp>
#include <rayUtil.hpp>

#include <vcTimer.hpp>

#include <omp.h>

using namespace viennaray;

int main() {
omp_set_num_threads(16);
constexpr int D = 2;
using NumericType = float;
Logger::setLogLevel(LogLevel::DEBUG);

std::vector<Vec3D<NumericType>> points;
std::vector<Vec2D<unsigned>> lines;
NumericType gridDelta;
rayInternal::readMeshFromFile<NumericType, D>("lineMesh.dat", gridDelta,
points, lines);

LineMesh lineMesh(points, lines, gridDelta);
TraceTriangle<NumericType, D> tracer;
tracer.setGeometry(lineMesh);

auto particle =
std::make_unique<DiffuseParticle<NumericType, D>>(0.1, "flux");
tracer.setParticleType(particle);
tracer.setNumberOfRaysPerPoint(5000);

Timer timer;
timer.start();
tracer.apply();
timer.finish();

std::cout << "Tracing time: " << timer.currentDuration / 1e9 << " s\n";

auto &localData = tracer.getLocalData();
tracer.normalizeFlux(localData.getVectorData(0), NormalizationType::SOURCE);

auto triMesh = convertLinesToTriangles(lineMesh);
rayInternal::writeVTP<NumericType, 3>("lineGeometryOutput.vtp", triMesh.nodes,
triMesh.triangles,
localData.getVectorData(0));
}
Loading
Loading