96 #include "type_parite.h" 109 int nullite_plm_t_leg (
int j,
int nt,
int k,
int np) {
111 int m = (k%2 == 0) ? k/2 : (k-1)/2 ;
112 int borne_sup = nt-1 ;
114 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
115 return 0 ;
else return 1 ;
123 int nullite_plm_nonsym (
int j,
int nt,
int k,
int np) {
125 int m = (k%2 == 0) ? k/2 : (k-1)/2 ;
126 int borne_sup = (m%2 == 0) ? nt-1 : nt-2 ;
127 int borne_inf = (m%2 == 0) ? m/2 : (m-1)/2 ;
128 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
129 return 0 ;
else return 1 ;
136 int nullite_plm_nonsym_anti (
int j,
int nt,
int k,
int np) {
138 int m = (k%2 == 0) ? k/2 : (k-1)/2 ;
140 int borne_sup = nt-2 ;
142 int borne_inf = (m%2 == 0) ? m/2 : (m-1)/2 ;
143 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
144 return 0 ;
else return 1 ;
154 int nullite_plm_sym (
int j,
int nt,
int k,
int np) {
156 int m = (k%2 == 0) ? k : k-1 ;
157 int borne_inf = m/2 ;
158 int borne_sup = nt-1 ;
159 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
160 return 0 ;
else return 1 ;
168 int nullite_plm_t_leg_ip(
int j,
int nt,
int k,
int np) {
170 int m = (k%2 == 0) ? k : k-1 ;
171 int borne_sup = nt-2 ;
172 int borne_inf = m/2 ;
173 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
174 return 0 ;
else return 1 ;
182 int nullite_plm_t_leg_pi(
int j,
int nt,
int k,
int np) {
189 m = (k%2 == 0) ? k-1 : k ;
192 int borne_sup = nt-2 ;
193 int borne_inf = (m-1)/2 ;
194 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
195 return 0 ;
else return 1 ;
202 int nullite_plm_t_leg_ii(
int j,
int nt,
int k,
int np) {
209 m = (k%2 == 0) ? k-1 : k ;
212 int borne_sup = nt-2 ;
213 int borne_inf = (m+1)/2 ;
214 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
215 return 0 ;
else return 1 ;
222 int nullite_plm_t_leg_mp (
int j,
int nt,
int k,
int np) {
224 int m = (k%2 == 0) ? k : k-1 ;
226 int borne_sup = nt-1 ;
227 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
228 return 0 ;
else return 1 ;
236 int nullite_plm_t_leg_mi (
int j,
int nt,
int k,
int np) {
238 int m = 2*( (k-1) / 2) + 1 ;
240 int borne_sup = nt-1 ;
241 if ((j<borne_inf) || (j>borne_sup) || (k==1) || (k>np))
242 return 0 ;
else return 1 ;
252 int nullite_plm (
int j,
int nt,
int k,
int np, Base_val base) {
257 int base_t = (base.b[0] &
MSQ_T) ;
258 int base_p = (base.b[0] &
MSQ_P) ;
266 result = nullite_plm_nonsym (j, nt, k, np) ;
271 result = nullite_plm_nonsym_anti (j, nt, k, np) ;
275 result = nullite_plm_t_leg (j, nt, k, np) ;
279 cout <<
"nullite_plm : cas inconnu ..." << endl ;
287 result = nullite_plm_sym (j, nt, k, np) ;
292 result = nullite_plm_t_leg_ip (j, nt, k, np) ;
296 result = nullite_plm_t_leg_mp (j, nt, k, np) ;
300 cout <<
"nullite_plm : cas inconnu ..." << endl ;
308 result = nullite_plm_t_leg_pi (j, nt, k, np) ;
312 result = nullite_plm_t_leg_ii (j, nt, k, np) ;
316 result = nullite_plm_t_leg_mi (j, nt, k, np) ;
320 cout <<
"nullite_plm : cas inconnu ..." << endl ;
326 cout <<
"nullite_plm : cas inconnu ..." << endl ;
#define T_LEG
fct. de Legendre associees
#define T_LEG_MP
fct. de Legendre associees avec m pair
#define P_COSSIN
dev. standart
#define T_LEG_PI
fct. de Legendre associees paires avec m impair
#define T_LEG_MI
fct. de Legendre associees avec m impair
#define MSQ_P
Extraction de l'info sur Phi.
#define T_LEG_I
fct. de Legendre associees impaires
#define MSQ_T
Extraction de l'info sur Theta.
#define T_LEG_IP
fct. de Legendre associees impaires avec m pair
#define T_LEG_P
fct. de Legendre associees paires
#define P_COSSIN_I
dev. sur Phi = 2*phi, freq. impaires
#define P_COSSIN_P
dev. sur Phi = 2*phi, freq. paires
#define T_LEG_II
fct. de Legendre associees impaires avec m impair
#define T_LEG_PP
fct. de Legendre associees paires avec m pair