ComputationalRadiationPhysics / haseongpu

HASEonGPU: High performance Amplified Spontaneous Emission on GPU
http://www.hzdr.de/crp
Other
7 stars 6 forks source link

HASEonGPU

High performance Amplified Spontaneous Emission on GPU

Description

Referencing

HASEonGPU is a scientific project. If you present and/or publish scientific results that used HASEonGPU, you should set this as a reference.

Software License

HASEonGPU is licensed under the GPLv3+. Please refer to our LICENSE.md

Dependencies

Compiling

Usage

Quick MATLAB laser pump example

A small example for Phi ASE calculation with a pumped crystal. The simulation can be started by the following:

  1. follow the compile instructions above
  2. change path "cd example/matlab_example/"
  3. run : matlab laserPumpCladdingExample
  4. watch progress
  5. take a look at the results (*.vtk) with paraview

Quick C-Application ASE flux example

  1. follow the compile instructions above
  2. change path "cd example/c_example/"
  3. run : ./bin/calcPhiASE --input-path=./input/cylindrical --min-rays=10000
  4. watch progress
  5. take a look at the results in the output directory

MATLAB compatible interface

[phiASE, MSE, nRays] = calcPhiASE(
                                    points,  
                                    trianglePointIndices,           
                                    betaCells,  
                                    betaVolume,  
                                    claddingCellTypes,  
                                    claddingNumber,  
                                    claddingAbsorption,  
                                    useReflections,  
                                    refractiveIndices,  
                                    reflectivities,  
                                    triangleNormalsX,  
                                    triangleNormalsY,  
                                    triangleNeighbors,  
                                    triangleSurfaces,  
                                    triangleCenterX,  
                                    triangleCenterY,  
                                    triangleNormalPoint,  
                                    forbiddenEdge,  
                                    minRaysPerSample,  
                                    maxRaysPerSample,  
                                    mseThreshold,  
                                    repetitions,  
                                    nTot,  
                                    thickness,  
                                    laserParameter,  
                                    crystal,  
                                    numberOfLevels,  
                                    deviceMode,
                                    parallelMode,  
                                    maxGPUs,  
                                    nPerNode
                                );  

Input argument description

In the following all arguments of the MATLAB call are described. You will find on each point a head with datatype (an array when in brackets []), the size of the array and to which set of numbers the array belongs.

Synopsis

C-Application Templates

Active Team

Scientific Supervision

Maintainers and core developers

Participants, Former Members and Thanks

File Descriptions