1 //===================================================== 2 // File : size_lin_log.hh 3 // Author : L. Plagne <laurent.plagne (at) edf.fr)> 4 // Copyright (C) EDF R&D, mar dc 3 18:59:37 CET 2002 5 //===================================================== 6 // 7 // This program is free software; you can redistribute it and/or 8 // modify it under the terms of the GNU General Public License 9 // as published by the Free Software Foundation; either version 2 10 // of the License, or (at your option) any later version. 11 // 12 // This program is distributed in the hope that it will be useful, 13 // but WITHOUT ANY WARRANTY; without even the implied warranty of 14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 // GNU General Public License for more details. 16 // You should have received a copy of the GNU General Public License 17 // along with this program; if not, write to the Free Software 18 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 19 // 20 #ifndef SIZE_LIN_LOG 21 #define SIZE_LIN_LOG 22 23 #include "size_log.hh" 24 25 template<class Vector> 26 void size_lin_log(const int nb_point, const int size_min, const int size_max, Vector & X) 27 { 28 int ten=10; 29 int nine=9; 30 31 X.resize(nb_point); 32 33 if (nb_point>ten){ 34 35 for (int i=0;i<nine;i++){ 36 37 X[i]=i+1; 38 39 } 40 41 Vector log_size; 42 size_log(nb_point-nine,ten,size_max,log_size); 43 44 for (int i=0;i<nb_point-nine;i++){ 45 46 X[i+nine]=log_size[i]; 47 48 } 49 } 50 else{ 51 52 for (int i=0;i<nb_point;i++){ 53 54 X[i]=i+1; 55 56 } 57 } 58 59 // for (int i=0;i<nb_point;i++){ 60 61 // INFOS("computed sizes : X["<<i<<"]="<<X[i]); 62 63 // } 64 65 } 66 67 #endif 68 69 70 71