00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 char map_radial_th_manip_C[] = "$Header: /cvsroot/Lorene/C++/Source/Map/map_radial_th_manip.C,v 1.3 2006/05/26 09:00:11 j_novak Exp $" ;
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047 #include "map.h"
00048 #include "tensor.h"
00049
00050
00051
00052
00053
00054
00055
00056
00057 void Map_radial::mult_cost(Scalar& ci) const {
00058
00059 assert(ci.get_etat() != ETATNONDEF) ;
00060
00061 if (ci.get_etat() == ETATZERO) {
00062 return ;
00063 }
00064
00065 assert((ci.get_etat() == ETATQCQ) || (ci.get_etat() == ETATUN)) ;
00066
00067 Valeur& val = ci.set_spectral_va() ;
00068
00069 assert(val.get_mg() == mg) ;
00070
00071 val = val.mult_ct() ;
00072
00073 ci.set_etat_qcq() ;
00074
00075 }
00076
00077
00078
00079
00080
00081 void Map_radial::div_cost(Scalar& ci) const {
00082
00083 assert(ci.get_etat() != ETATNONDEF) ;
00084
00085 if (ci.get_etat() == ETATZERO) {
00086 return ;
00087 }
00088
00089 assert((ci.get_etat() == ETATQCQ) || (ci.get_etat() == ETATUN)) ;
00090
00091 Valeur& val = ci.set_spectral_va() ;
00092
00093 assert(val.get_mg() == mg) ;
00094
00095 val = val.scost() ;
00096
00097 ci.set_etat_qcq() ;
00098 }
00099
00100
00101
00102
00103
00104
00105 void Map_radial::mult_sint(Scalar& ci) const {
00106
00107 assert(ci.get_etat() != ETATNONDEF) ;
00108
00109 if (ci.get_etat() == ETATZERO) {
00110 return ;
00111 }
00112
00113 assert((ci.get_etat() == ETATQCQ) || (ci.get_etat() == ETATUN)) ;
00114
00115 Valeur& val = ci.set_spectral_va() ;
00116
00117 assert(val.get_mg() == mg) ;
00118
00119 val = val.mult_st() ;
00120
00121 ci.set_etat_qcq() ;
00122
00123 }
00124
00125
00126
00127
00128
00129 void Map_radial::div_sint(Scalar& ci) const {
00130
00131 assert(ci.get_etat() != ETATNONDEF) ;
00132
00133 if (ci.get_etat() == ETATZERO) {
00134 return ;
00135 }
00136
00137 assert((ci.get_etat() == ETATQCQ) || (ci.get_etat() == ETATUN)) ;
00138
00139 Valeur& val = ci.set_spectral_va() ;
00140
00141 assert(val.get_mg() == mg) ;
00142
00143 val = val.ssint() ;
00144
00145 ci.set_etat_qcq() ;
00146 }
00147
00148
00149
00150
00151
00152
00153
00154 void Map_radial::div_tant(Scalar& ci) const {
00155
00156 assert(ci.get_etat() != ETATNONDEF) ;
00157
00158 if (ci.get_etat() == ETATZERO) {
00159 return ;
00160 }
00161
00162 assert((ci.get_etat() == ETATQCQ) || (ci.get_etat() == ETATUN)) ;
00163
00164 Valeur& val = ci.set_spectral_va() ;
00165
00166 assert(val.get_mg() == mg) ;
00167
00168 val = val.mult_ct() ;
00169
00170 val = val.ssint() ;
00171
00172 ci.set_etat_qcq() ;
00173 }
00174