Attention une mise à jour du serveur va être effectuée le vendredi 16 avril entre 12h et 12h30. Cette mise à jour va générer une interruption du service de quelques minutes.

Commit dfeb1440 authored by COULAUD Olivier's avatar COULAUD Olivier

New architecture and add the driver to build distributions

parent 19996b55
......@@ -29,7 +29,7 @@ project(ScalFMM)
# ScalFMM version number. An even minor number corresponds to releases.
SET(ScalFMM_MAJOR_VERSION 1)
SET(ScalFMM_MINOR_VERSION 1)
SET(ScalFMM_MINOR_VERSION 2)
SET(ScalFMM_PATCH_VERSION 1)
SET(ScalFMM_VERSION "${ScalFMM_MAJOR_VERSION}.${ScalFMM_MINOR_VERSION}.${ScalFMM_PATCH_VERSION}" )
......@@ -217,6 +217,10 @@ add_subdirectory(Src)
# Link with scalfmm lib
set(scalfmm_lib scalfmm)
# Build - Examples and drivers
add_subdirectory(Examples)
# Build - Tests
MESSAGE( STATUS "ScalFMM_BUILD_TESTS = ${ScalFMM_BUILD_TESTS}" )
if( ScalFMM_BUILD_TESTS )
......
......@@ -34,7 +34,7 @@ PROJECT_NAME = "ScalFmm"
# This could be handy for archiving the generated documentation or
# if some version control system is used.
PROJECT_NUMBER =
PROJECT_NUMBER = @ScalFMM_MAJOR_VERSION@.@ScalFMM_MINOR_VERSION@
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer
......@@ -665,7 +665,8 @@ WARN_LOGFILE =
# with spaces.
INPUT = @CMAKE_CURRENT_SOURCE_DIR@/../Doc/Site_dox \
@CMAKE_CURRENT_SOURCE_DIR@/../Src/
@CMAKE_CURRENT_SOURCE_DIR@/../Src/ \
@CMAKE_CURRENT_SOURCE_DIR@/../Examples/
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
......
......@@ -21,9 +21,13 @@
* <li> Bérenger Bramas </li>
* <li> Cyrille Piacibello </li>
* <li> Pierre Blanchard </li>
* </ul>
* Old contributors
*
* <ul>
* <li> Matthias Messner </li>
* </ul>
*/
......@@ -12,33 +12,54 @@
#include <string>
#include "Utils/FMath.hpp"
#include "Utils/FGenerateDistribution.hpp"
/// \file
//! \example generateDistributions.cpp
//! \brief generateDistributions: Driver to generate N points (non)uniformly distributed on a geometry
//! Options
//! -h to see the parameters available in this driver
//! -N The number of points in the distribution
//! Geometry
//! \arg \b -unitSphere uniform distribution on unit sphere
//! \arg -sphere uniform distribution on sphere of radius given by
//
/// \file generateDistributions.cpp
//!
//! \brief generateDistributions: Driver to generate N points (non)uniformly distributed on a given geometry
//!
//! The goal of this driver is to generate uniform or non uniform points on the following geometries
//!
//! Uniform : sphere, prolate,
//!
//! Non uniform : ellipsoid, prolate
//!
//! You can set two kind of physical values depending of your problem. By default all values are between 0 and 1.
//! If you select the argument -charge (see bellow) the values are between -1 and 1.
//! The arguments available are
//!
//! <b> General arguments:</b>
//! \param -h to see the parameters available in this driver
//! \param -N The number of points in the distribution
//! \param -filename name: generic name for files (without extension) and save data
//! with following format in name.xxx or name.bin in -bin (not yet implemented) is set
//! \param -visu save output in filename.txt
//!
//! <b> Geometry arguments:</b>
//! \param -unitSphere uniform distribution on unit sphere
//! \param -sphere uniform distribution on sphere of radius given by
//! \arg -radius R - default value for R is 2.0
//! \arg -ellipsoid non uniform distribution on an ellipsoid of aspect ratio given by
//! -ar a:b:c with a, b and c > 0
//! \param -ellipsoid non uniform distribution on an ellipsoid of aspect ratio given by
//! \arg -ar a:b:c with a, b and c > 0
//! \param -prolate ellipsoid with aspect ratio a:a:c given by
//! \arg -ar a:a:c with c > a > 0
//! \param -plummer (Highly non uniform) plummer distribution (astrophysics)
//! \arg -radius R - default value 10.0"
//!
//!
//! <b> Physical values argument:</b>
//! \param -charge generate physical values between -1 and 1 otherwise generate between 0 and 1
//!
//! -prolate ellipsoid with aspect ratio a:a:c
//! -ar a:a:c with c > a > 0
//! -plummer (Highly non unuiform) plummer distrinution (astrophysics)"
//! -radius R - default value 10.0"
//! \b examples
//!
//! -filename name: generic name for files (without extension) and save data
//! with following format in name.xxx or name.bin in -bin is set
//! -visu save output in name.txt
//! generateDistributions -prolate -ar 2:2:4 -N 20000 -filename prolate -visu
//!
//! \b Physical values
//! -charge generate physical values between -1 and 1 otherwise generate between 0 and 1
//!
//
//
void genDistusage() {
std::cout << "Driver to generate N points (non)uniformly distributed on a geometry"
std::cout << "Driver to generate N points (non)uniformly distributed on a given geometry"
<< std::endl;
std::cout << "Options "<< std::endl
<< " -h to see the parameters " << std::endl
......
......@@ -18,6 +18,7 @@ file(
# Adding the project sources dir as an include dir
INCLUDE_DIRECTORIES(
${CMAKE_BINARY_DIR}/Src
${CMAKE_SOURCE_DIR}/Src
)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment