Commit 300f3d24 authored by Kirill Terekhov's avatar Kirill Terekhov
Browse files

Examples/GridTools moved to separate repository

parent b53160fb
project(GridGen)
add_executable(FixFaults test_fix_faults.cpp)
add_executable(SetLayers test_set_layers.cpp)
add_executable(MakeFaults test_make_faults.cpp)
add_executable(FixTiny fix_tiny.cpp)
add_executable(FixTinyCollapse fix_tiny_collapse.cpp)
add_executable(UniteFaces unite_faces.cpp)
add_executable(Dual dual.cpp)
add_executable(Tetra tetra.cpp)
add_executable(Slice slice.cpp)
add_executable(SliceFunc test_slice_func.cpp)
add_executable(SplitNonplanar split_nonplanar.cpp)
add_executable(CollapseDegenerate collapse_degenerate.cpp)
add_executable(Bnd2Stl bnd2stl.cpp)
add_executable(Sector sector.cpp)
add_executable(Sew sew.cpp)
add_executable(Scale scale.cpp)
add_executable(Move move.cpp)
add_executable(Convert convert.cpp)
add_executable(CubeTransform test_cube_transform.cpp)
add_executable(MeshInfo mesh_info.cpp)
add_executable(SameMeshDifference difference_same.cpp)
add_executable(MatchSameMeshDifference difference_same_match.cpp)
add_executable(MeshDifference difference_map.cpp)
add_executable(Kmeans kmeans.cpp)
add_executable(Agglomerate agglomerate.cpp)
add_executable(acute_mesh acute_grid.cpp)
add_executable(disturbed_mesh disturbed_grid.cpp)
add_executable(hex_mesh hex_grid.cpp)
add_executable(kershaw_mesh kershaw_grid.cpp)
add_executable(nonconvex_mesh nonconvex_grid.cpp)
add_executable(e_mesh e_grid.cpp)
add_executable(twist_mesh twist_grid.cpp)
add_executable(shestakov_mesh shestakov_grid.cpp)
add_executable(sinusoidal_mesh sinusoidal_grid.cpp)
add_executable(split_faces split_faces.cpp)
add_executable(glue_faces glue_faces.cpp)
add_executable(check_collapse check_collapse.cpp)
add_executable(Fracture test_fracture.cpp)
add_executable(segment_data segment_data.cpp)
add_executable(ChangeTagName change_tag_name.cpp)
add_library(FractureLib fracture.cpp fracture.h)
add_library(SliceFuncLib slice_func.cpp slice_func.h)
add_library(FixFaultsLib fix_faults.cpp fix_faults.h)
add_library(CubeTransformLib cube_transform.cpp cube_transform.h)
add_library(SetLayersLib set_layers.cpp set_layers.h)
target_link_libraries(MakeFaults inmost)
target_link_libraries(MakeFaults FractureLib)
target_link_libraries(MakeFaults FixFaultsLib)
target_link_libraries(MakeFaults SliceFuncLib)
if(USE_MPI)
message("linking MakeFaults with MPI")
target_link_libraries(MakeFaults ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(MakeFaults PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS MakeFaults EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(SetLayers inmost)
target_link_libraries(SetLayers SetLayersLib)
if(USE_MPI)
message("linking SetLayers with MPI")
target_link_libraries(SetLayers ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(SetLayers PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS SetLayers EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Fracture inmost)
target_link_libraries(Fracture FractureLib)
if(USE_MPI)
message("linking Fracture with MPI")
target_link_libraries(Fracture ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Fracture PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Fracture EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(FixFaults inmost)
target_link_libraries(FixFaults FixFaultsLib)
if(USE_MPI)
message("linking FixFaults with MPI")
target_link_libraries(FixFaults ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(FixFaults PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS FixFaults EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(FixTinyCollapse inmost)
if(USE_MPI)
message("linking FixTinyCollapse with MPI")
target_link_libraries(FixTinyCollapse ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(FixTinyCollapse PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS FixTinyCollapse EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(split_faces inmost)
if(USE_MPI)
message("linking split_faces with MPI")
target_link_libraries(split_faces ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(split_faces PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS split_faces EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(check_collapse inmost)
if(USE_MPI)
message("linking check_collapse with MPI")
target_link_libraries(check_collapse ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(check_collapse PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS check_collapse EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(glue_faces inmost)
if(USE_MPI)
message("linking glue_faces with MPI")
target_link_libraries(glue_faces ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(glue_faces PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS glue_faces EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(FixTiny inmost)
if(USE_MPI)
message("linking FixTiny with MPI")
target_link_libraries(FixTiny ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(FixTiny PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS FixTiny EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(UniteFaces inmost)
if(USE_MPI)
message("linking UniteFaces with MPI")
target_link_libraries(UniteFaces ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(UniteFaces PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS UniteFaces EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Dual inmost)
if(USE_MPI)
message("linking Dual with MPI")
target_link_libraries(Dual ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Dual PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Dual EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Tetra inmost)
if(USE_MPI)
message("linking Tetra with MPI")
target_link_libraries(Tetra ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Tetra PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Tetra EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Slice inmost)
if(USE_MPI)
message("linking Slice with MPI")
target_link_libraries(Slice ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Slice PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Slice EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(SliceFunc inmost)
target_link_libraries(SliceFunc SliceFuncLib)
if(USE_MPI)
message("linking SliceFunc with MPI")
target_link_libraries(SliceFunc ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(SliceFunc PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS SliceFunc EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(SplitNonplanar inmost)
if(USE_MPI)
message("linking SplitNonplanar with MPI")
target_link_libraries(SplitNonplanar ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(SplitNonplanar PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS SplitNonplanar EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(CollapseDegenerate inmost)
if(USE_MPI)
message("linking CollapseDegenerate with MPI")
target_link_libraries(CollapseDegenerate ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(CollapseDegenerate PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS CollapseDegenerate EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Bnd2Stl inmost)
if(USE_MPI)
message("linking Bnd2Stl with MPI")
target_link_libraries(Bnd2Stl ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Bnd2Stl PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Bnd2Stl EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Sector inmost)
if(USE_MPI)
message("linking Sector with MPI")
target_link_libraries(Sector ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Sector PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Sector EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Sew inmost)
if(USE_MPI)
message("linking Sew with MPI")
target_link_libraries(Sew ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Sew PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Sew EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Scale inmost)
if(USE_MPI)
message("linking Scale with MPI")
target_link_libraries(Scale ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Scale PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Scale EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Move inmost)
if(USE_MPI)
message("linking Move with MPI")
target_link_libraries(Move ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Move PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Move EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Convert inmost)
if(USE_MPI)
message("linking Convert with MPI")
target_link_libraries(Convert ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Convert PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Convert EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(CubeTransform inmost)
target_link_libraries(CubeTransform CubeTransformLib)
if(USE_MPI)
message("linking CubeTransform with MPI")
target_link_libraries(CubeTransform ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(CubeTransform PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS CubeTransform EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(MeshInfo inmost)
if(USE_MPI)
message("linking MeshInfo with MPI")
target_link_libraries(MeshInfo ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(MeshInfo PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS MeshInfo EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(SameMeshDifference inmost)
if(USE_MPI)
message("linking SameMeshDifference with MPI")
target_link_libraries(SameMeshDifference ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(SameMeshDifference PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS SameMeshDifference EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(MatchSameMeshDifference inmost)
if(USE_MPI)
message("linking MatchSameMeshDifference with MPI")
target_link_libraries(MatchSameMeshDifference ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(MatchSameMeshDifference PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS MatchSameMeshDifference EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(MeshDifference inmost)
if(USE_MPI)
message("linking MeshDifference with MPI")
target_link_libraries(MeshDifference ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(MeshDifference PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS MeshDifference EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Kmeans inmost)
if(USE_MPI)
message("linking Kmeans with MPI")
target_link_libraries(Kmeans ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Kmeans PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Kmeans EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(Agglomerate inmost)
if(USE_MPI)
message("linking Agglomerate with MPI")
target_link_libraries(Agglomerate ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(Agglomerate PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS Agglomerate EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(acute_mesh inmost)
if(USE_MPI)
message("linking acute_mesh with MPI")
target_link_libraries(acute_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(acute_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS acute_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(disturbed_mesh inmost)
if(USE_MPI)
message("linking disturbed_mesh with MPI")
target_link_libraries(disturbed_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(disturbed_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS disturbed_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(hex_mesh inmost)
if(USE_MPI)
message("linking hex_mesh with MPI")
target_link_libraries(hex_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(hex_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS hex_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(kershaw_mesh inmost)
if(USE_MPI)
message("linking kershaw_mesh with MPI")
target_link_libraries(kershaw_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(kershaw_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS kershaw_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(nonconvex_mesh inmost)
if(USE_MPI)
message("linking nonconvex_mesh with MPI")
target_link_libraries(nonconvex_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(nonconvex_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS nonconvex_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(e_mesh inmost)
if(USE_MPI)
message("linking e_mesh with MPI")
target_link_libraries(e_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(e_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS e_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(twist_mesh inmost)
if(USE_MPI)
message("linking twist_mesh with MPI")
target_link_libraries(twist_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(twist_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS twist_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(shestakov_mesh inmost)
if(USE_MPI)
message("linking shestakov_mesh with MPI")
target_link_libraries(shestakov_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(shestakov_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS shestakov_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(sinusoidal_mesh inmost)
if(USE_MPI)
message("linking sinusoidal_mesh with MPI")
target_link_libraries(sinusoidal_mesh ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(sinusoidal_mesh PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS sinusoidal_mesh EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(segment_data inmost)
if(USE_MPI)
message("linking segment_data with MPI")
target_link_libraries(segment_data ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(segment_data PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS segment_data EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
target_link_libraries(ChangeTagName inmost)
if(USE_MPI)
message("linking ChangeTagName with MPI")
target_link_libraries(ChangeTagName ${MPI_LIBRARIES})
if(MPI_LINK_FLAGS)
set_target_properties(ChangeTagName PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
endif()
endif(USE_MPI)
install(TARGETS ChangeTagName EXPORT inmost-targets RUNTIME DESTINATION bin/GridTools)
set_property(TARGET FractureLib PROPERTY PUBLIC_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/fracture.h")
set_property(TARGET SliceFuncLib PROPERTY PUBLIC_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/slice_func.h")
set_property(TARGET FixFaultsLib PROPERTY PUBLIC_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/fix_faults.h")
set_property(TARGET CubeTransformLib PROPERTY PUBLIC_HEADER "${CMAKE_CURRENT_SOURCE_DIR}/cube_transform.h")
install(TARGETS FractureLib SliceFuncLib FixFaultsLib CubeTransformLib EXPORT inmost-targets
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
PUBLIC_HEADER DESTINATION include)
#include "inmost.h"
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
std::string mesh_name = "ACUTE_TRIANGULAR";
using namespace INMOST;
const Storage::real pi = 3.1415926535897932384626433832795;
#define V_ID(x, y, z) ((x)*n*nz + (y)*nz + (z))
#define V_ID2_X(x, y, z) ((x)*(n-1)*nz + (y)*nz + (z))
#define V_ID2_Y(x, y, z) ((x)*(n)*nz + (y)*nz + (z))
#define V_ID3(x, y, z, q) (((x)*(n-1)*nz + (y)*nz + (z))*4+(q))
int main(int argc, char *argv[])
{
if (argc < 2)
{
std::cout << "Usage: " << argv[0] << " n [nz = 1]" << std::endl;
return -1;
}
Mesh * mesh;
int nz = 2;
int n = 16;
if (argc > 1)
n = atoi(argv[1])+1;
if( argc > 2 )
nz = atoi(argv[2])+1;
mesh = new Mesh();
array<HandleType> primary_nodes(n*n*nz);
array<HandleType> secondary_nodes_y((n-1)*n*nz); // n-1 by x, n by y
array<HandleType> secondary_nodes_x((n-1)*n*nz); // n by x, n-1 by y
array<HandleType> internal_nodes((n-1)*(n-1)*nz*4);
Tag mat = mesh->CreateTag("MATERIAL",DATA_INTEGER,CELL|NODE,NONE,1);
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
for (int k = 0; k < nz; k++)
{
Storage::real xyz[3];
xyz[0] = i * 1.0 / (n-1);
xyz[1] = j * 1.0 / (n-1);
xyz[2] = k * 1.0 / (nz - 1);
Node c = mesh->CreateNode(xyz);
primary_nodes[V_ID(i,j,k)] = c.GetHandle();
c.Integer(mat) = 0;
}
}
}
//go through X lines
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n-1; j++)
{
for (int k = 0; k < nz; k++)
{
Storage::real xyz[3];
xyz[0] = i * 1.0 / (n-1);
xyz[1] = (j+0.5) * 1.0 / (n-1);
xyz[2] = k * 1.0 / (nz - 1);
Node c = mesh->CreateNode(xyz);
c.Integer(mat) = 1;
secondary_nodes_x[V_ID2_X(i,j,k)] = c.GetHandle();
}
}
}
//go through Y lines
for(int i = 0; i < n-1; i++)
{
for(int j = 0; j < n; j++)
{
for (int k = 0; k < nz; k++)
{
Storage::real xyz[3];
xyz[0] = (i+0.5) * 1.0 / (n-1);
xyz[1] = j * 1.0 / (n-1);
xyz[2] = k * 1.0 / (nz - 1);
Node c = mesh->CreateNode(xyz);
c.Integer(mat) = 2;
secondary_nodes_y[V_ID2_Y(i,j,k)] = c.GetHandle();
}
}
}
//go through internals
for(int i = 0; i < n-1; i++)
{
for(int j = 0; j < n-1; j++)
{
for (int k = 0; k < nz; k++)
{
Node c;
Storage::real xyz[3];
xyz[0] = (i+0.35) * 1.0 / (n-1);
xyz[1] = (j+0.35) * 1.0 / (n-1);
xyz[2] = k * 1.0 / (nz - 1);
c = mesh->CreateNode(xyz);
c.Integer(mat) = 3;
internal_nodes[V_ID3(i,j,k,0)] = c.GetHandle();
xyz[0] = (i+0.3) * 1.0 / (n-1);
xyz[1] = (j+0.7) * 1.0 / (n-1);
xyz[2] = k * 1.0 / (nz - 1);