TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
forcage_spectral.h
1/****************************************************************************
2* Copyright (c) 2019, CEA
3* All rights reserved.
4*
5* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
6* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
7* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
8* 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
9*
10* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
11* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
12* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
13*
14*****************************************************************************/
15
16#ifndef forcage_spectral_included
17#define forcage_spectral_included
18
19#include <IJK_Field_vector.h>
20#include <IJK_Field.h>
21#include <Objet_U.h>
22#include <fftw3.h>
23#pragma GCC diagnostic push
24// Portability for mpich which do not honour -Wsuggest-override
25#if __GNUC__ > 5 || __clang_major__ > 10
26#pragma GCC diagnostic ignored "-Wsuggest-override"
27#endif
28#include <fftw3-mpi.h>
29#pragma GCC diagnostic pop
30#include <vector>
31
32
33/*! @brief : class Chouippe
34 *
35 * <Description of class Chouippe>
36 *
37 *
38 *
39 */
40int unidentified_function(int argc, char **argv);
41void Create_file(std::string const& fichname, std::string const& name);
42void Add_in_file(std::string const& fichname, std::string const& information);
43void Add_in_file(std::string const& fichname, int const information);
44void Add_in_file(std::string const& fichname, ArrOfInt const& information);
45void Add_in_file(std::string const& fichname, std::string const& info, int const information);
46
47// void fftw_org_real_data_MPI_transform(int argc, char **argv);
48std::string fftw_org_real_data_MPI_transform();
49// int fftw_org_unidentified_function(int argc, char **argv);
50std::string fftw_org_unidentified_function();
51
52
54{
55
56 Declare_instanciable( forcage_spectral ) ;
57
58public :
59 // Constructeurs
60 // forcage_spectral();
61 // Destructeur;
62 // ~forcage_spectral();
63
65 int get_compteur0();
66 int get_compteur1();
67 int get_compteur2();
68 void set_nk_kmin_kmax(const int number_k, const double kmin, const double kmax);
70 void set_a_force();
71
72protected :
73 //void compute_inital_velocity_spectral(IJK_Field_vector3_double);
74private:
75
76 double k_max = 0.;
77 double k_min= 0.;
78 int nk = 0;
79 int nk_tot = 0;
80 // std::vector<double> kx(), ky(),kz();
81 ArrOfDouble kx, ky,kz;
82 // std::vector<double> fx(),fy(),fz();
83 ArrOfDouble fx,fy,fz;
84
85 int compteur[3];
86};
87
88
89
90
91
92#endif
Objet_U()
Constructeur par defaut : attribue un numero d'identifiant unique a l'objet (object_id_),...
Definition Objet_U.cpp:55
void fftw_org_multi_D_MPI_DFT_real_data()
void set_nk_kmin_kmax(const int number_k, const double kmin, const double kmax)