	version 2.5.3

	1) beampropagationmacro.f90 (~l.143-146) : branche gwavelinear
	incomplète. Il manquait trois lignes: le calcul de Emod et celui
	de tolc
	2) Dans cdmlib.f90, les appels dfftw_* des lignes 3277-3282,
	4153-4159 et 4364-4370 ne sont pas protégés par #ifdef USE_FFTW.
	3) assert close arete si ref negatif.
	4) Dans sldr phit et thetat en inout.
	5) dans gaussiand fait plus propre si que evanescent mais jamais
	utilise.
	6) dans polarisabiite fait le cas dddis=0 avec la maille meme si
	jamais utilise
	7) ajoutte des arrets dans preconditionneur scalaire.
	8) nom version changee et doc recompilee.

	-----------------------------------------------------
	version 2.5.2

	1) en simple precision Cext en metre carre.
	2) Correction sur testgreen fait pour deallocate
	3) Correction de la norme en simple precision pour ne pas dépasser
	la limite.
	4) dans preconditionneurscal.f90 preconditionneurscalopt.f90
	preconditionneurinitscal.f90 preconditionneurinitscal2.f90
	probleme sur r== 0 dans la fonction de Green scalaire
	5) Dans cdmlib.f90, pour nrig=9, nprecon=2 et le chemin scalaire
	optimisé, le programme appelait : call
	inverserigscalaireoptpg(...)  Il s'agissait du préconditionneur
	gauche, alors que le préconditionneur droit était demandé
	6) if (tol1 .ne. tol1) then Nan detecte les Nan si tol1 est mal
	calculé.
	7) eps0 enleve dans les gaussian rigoureux dans l'appel ds
	cdmlib.f90.
	8) niso == 1 oublie dans Rytov dans cdmlib.f90
	9) Les temporaires PRIVATE etaient alloues avant la region OpenMP
	pour preconditionneur.f90. Les allocations se font maintenant dans
	la region parallele.
	10) allocattion fft force faire apres l'init des plans
	11) Dans inverserigscalairepd.f90 oublie de définir ii dans la
	dernière boucle.
	12) rajoute dans nrig == 9 init avec Rytov!
	13) infostr='BPM not possible with this beam' enleve les
	gaussianpara de cette restriction.
	14) dans calculwidefield.f90 tol était local et non initialisé
	pour la quadrature gaussienne rigoureuse ; eps0 était non
	initialisé dans les branches paraxiales.
	15) dans diffracte2dinc eps0 non initialise correctement.
	16) dans diffracte2dinc erreur argument dans gaussianchampcirc.
	17) dans diffracte2denergy erreur argument dans gaussianchampcirc.
	18) dans diffracte2denergy  eps0 non initialise correctement.
	19) dans gaussiandfft.f90 90–91 inversait les arguments de types
	différents tol (réel) et nloin (entier).
	20) nstop dans incidentarbitrary en inout!!
	21) seed refait dans idrs.
	22) dans inverserig GPBICGplus 10 caracteres dans l'égalite et pas
	8.
	23) dans preconditionneurinit2 appele dans precon droit oublie de
	niso.
	24) Dans les main.f90 nrig declare plus tots.
	25) QMRCLA correction en effet de certains conjugués.
	26) correction conjugue dans zbicgstabl.f90
	27) Rytov changé pour éviter division par zero.
	28) passage des preconditionneurs simple precision pour les blas.
	29) changement nom version.
	30) deallocate corrige place dans diffractefft2dinckzneg
	31) remet ancien QMR et corrige un goto 200 manquant.
	32) correction Rytov macro
	33) Dans verif les valeurs sont changees car speckle et demi
	speckle ont ete corrigee.
	34) continu si tolerance pas obtenue mais inferieur a 10-3.
	35) passage test arbitrary en precision simple ou double.
	36) dans test compsimp corrige pour mettre arbitrary objet en nm
	et precision.
	37) dans test compsimp corrige pour mettre arbitrary wave en nm
	et precision.
	38) change seed = int(speckseed, kind=kind(seed)) pour
	diffractefft2dinc.f90 diffractefft2dinckzneg.f90 gcors2.f90
	idrs.f90 objectinhomo.f90 objectparainhomo.f90
	objectparainhomonxnynz.f90 objectsphererandom.f90
	objectsphererandommulti.f90 objectsphererandomnxnynz.f90
	speckle.f90
	39) refait correction pour Cext !
	40) compile les tex.


	AF champ, microscopy double simple!

	-----------------------------------------------------
	version 2.5.1

	1) README changé.
	2) Accès potentiellement hors limites -
	`objectsphereconcentric.f90:75 ok
	3) Conversion complexe vers réel -
	`objectsphereconcentric.f90:26,124,179` et `objectnspheres.f90 ok
	4) Division avant contrôle du dénominateur -
	`gausskronrodpattersonmulti.f90:1642-1647` ok
	5) Conversions complexe dipoleinc ok
	6) Conversions complexe  `gaussianpara.f90:297` ok
	7) Conversions complexe `microsconfocalfluo.f90:587-589` ok
	8) `cdmlib.f90:1313` : conversion réel -> entier lors de
	l'affectation à `nabs` ok
	9) remet les deallocate oublie dans differents routines.
	10) changement nom version.

	-----------------------------------------------------
	version	2.5.0

	1) correction petite erreur dans un write.
	2) modifie GPBICG pour si on rentre la bonne valeur au départ.
	3) modifie GPBICG CUDA pour si on rentre la bonne valeur au
	départ.
	4) changement nom version.
	5) ajout l'aide de Michel pour CUDA dans la doc.
	6) compile les latex.
	7) correction nom version dans les .pro
	8) nettoie le bin


	-----------------------------------------------------
	version 2.4.5

	1) changement nom ABC en NRBC dans le menu.
	2) ajout de MDDA dans la doc en francais.
	3) arret pour la MDDA pour les objets et faisceau non fait.
	4) ajout de MDDA dans la doc en anglais.
	5) changement nom version.
	6) ajoute arret pour preconditionneur avec la MDDA.
	7) ajout sur la doc pour MDDA.
	8) recompilation des docs.
	9) correction sur la taille nxy2 oublié pour la tomographie.
	10) detruit les plans planb et planf apres l'inversion de la
	matrice, le recree pour les forces optiques et le detruit si
	nécessaire, realloue vectx pour les microscopie.
	11) oublie de creation plan pour la FFT pour les microscopes
	autres que holographie.
	12) probleme champ proche large: OK
	13) refaire les tests: ok test1, test3 et test4.
	14) refait test2 du au nouveau tirage des spheres.
	15) recompile les tex.
	16) microscope holographique ok avec MDDA.
	17) enleve calcul force optique pour la MDDA, onde pas assez plane
	avec la background et force gradient écrase la pression de
	radiation.
	18) changement presentation pour centrale aperture dans texte et
	l'interface.


	-----------------------------------------------------
	version 2.4.4

	1) changement de codage de tous les entiers pour pouvoir passer de
	32 bits a 64 bits facilement.
	2) rechanger les int(,8) en rien car pris dans ip.
	3) passage de zero en zzero pour les complex.
	4) correction bug dans interpdielec sur lambda.
	5) changement nom version.
	6) deallocate dans les main.f90 des tests.

	-----------------------------------------------------
	version 2.4.3

	1) objetinhomo changé pour que le tirage soit le meme quelque soit
	les pml.
	2) constc corrige declaration dans abcchi.
	3) objetparainhomo changé pour que le tirage soit le meme quelque soit
	les pml.
	4) fait le para inhomo pour MDDA avec < et > stricte sur le cote.
	5) fait gaussianpara avec MDDA.
	6) blocksize sur GPBICOR_cuda.cu, idrs_cuda.cu, TFQMR +
	produitmatvect
	7) correction dans parainhomo: eps0 complex
	8) version faite.
	9) blocksize sur GPBICOR_cuda fait.
	10) eps0 =zone dans cdmlib
	11) tous les eps0, et indice avec, passées en complex dans toutes
	les routines.


	-----------------------------------------------------
	version 2.4.2

	1) nettoyage des directories.
	2) passage blocksize dans les produits.
	3) blocksize pour gpbicg2 et bicgstabL
	4) remet en forme les sorties CUDA.
	5) change indice en codage 8 dans les calculs des fonctions de
	Green ainsi que pour les produits matvect
	6) indice pour les produitsmatvec scalaire.
	7) numblock pour BICGSTARPLUS, gpbicgar et tous les gp...
	8) correction du 5
	9) correction sur le codage de ntotal pour widefield.
	10) parallelisation masquepml
	11) CORS ajouter sous cuda

	AF: blocksize sur GPBICOR_cuda.cu:idrs_cuda.cu: QMR


	-----------------------------------------------------
	version 2.4.1

	1) mis les routines cudas methode iterative pour inverserigopt.
	2) cuda pour inverserig pour les methodes ietratives.
	3) correction sur bicgstabL pour CUDA
	4) optimiser objet pour vitesse avec pml
	5) changement numerotation pour pml
	6) enleve write dans hdf5write1d
	7) changement nom version.
	8) nettoit un peu avant INPUT DATA
	9) BORNSERIE pour pour inverserigopt.
	10) enleve des doubles dans QMR et TFQMR.
	11) BRONSERIE pour inverserig.
	12) remplacement des block <<<>>> par la formule plus facile de
	changer la taille du block dans inverserig(opt)_cuda.cu
	13) correction de 12 car plein d'erreur
	14) changement des blocks avec 12 dans gpbicg et bicgstab.

	-----------------------------------------------------
	version 2.4.0

	1) remet fft cuda pour le tensor
	2) correction de zbicgstabl.f90 par Michel.
	3) ajout de gpbicg2 de Michel.

	4) change masquepml pour normaliser le champ
	5) normalise champ incident dans inverserigopt si option SP.
	6) ntotal utilise pour allocate vectxyz.
	7) changement en 8 bits pour declaration de vectxyz dans toutes
	les routines.
	8) correction erreur sur BICGSTAB dans inverserig_cuda.cu


	-----------------------------------------------------
 	version 2.3.9

	1) remet fft cuda pour le tensor
	2) correction de zbicgstabl.f90 par Michel.
	3) ajout de gpbicg2 de Michel pour CUDA

	-----------------------------------------------------
	version 2.3.8

	1) dans cuda vire ntotalm car pas utilise avec les nouveaux vect.
	2) ajout arret si dépasse le 4 bits sur le cuda pour nxyz2.
	3) changement nom version.


	---------------------------------------------------
	version 2.3.7

	1) changement nom version
	2) changement doc pour simp
	3) correction dans inversrig_cuda sur la liste des arguments.
	4) passage de ntotal en 8 bit pour aller plus loin
	5) ajoute un arret si objet devient très grand.
	6) ajoute dans doc sur les blas et lapack.

	---------------------------------------------------
	version 2.3.6

	1) passage en fortran 90 de 2.2.0 avec 1.1
	2) passage simple ou double precision
	3) correction d'erreur sur la MDDA ajout de PML.
	4) correction singleton.
	5) passage en fortran 90 et correction pour tous les tests.
	6) correction tabdip mal placé pour MDDA.

	-----------------------------------------------
	version 2.2.0

	1) transformation background imaginaire pour améliorer la
	convergence.

	-----------------------------------------------
	version 1.1

	1) passage du code en fortran 90
	2) correction sur le makefile pour le module precision.
	3) passage en f90 dans verif.

	-----------------------------------------------

	version 1.0.29

	1) tenseur en rangement de 2n a n+1 en utilisant la symmétrie dans
	le fortran
	2) mis tenseur memoire minimisee pour GPU en double precision
	3) DFFTENSEUR pour les forces du coup passe en allocatble
	4) force et torque memoire a zero si option pas choisi.
	5) FFTENSEUR fait pour cuda en simpe precision.
	6) RAM pour la scalaire optimisé pour ne faire une une dimension
	en tableau pour polarisa et epsilon. Fait dans toutes les routines.
	7) dimension RAM pour bicgstab, optimiser et mis avec nlar.
	8) passage de pola en scalaire pour cuda et cuda_simp.
	9) passer les mains dans tous les test avec niso.
	10) correction des plans dans produitmatvect confusion forward et
	backward. verif avec la version 23.
	11) correction argument greenquadfft et correction dans la routine.
	12) erreur sur Rytov corrige pour xi=-xi
	13) correction inverserig a la fin sur ligne qui ne sert pas.

	14) correction des produitmatvect en plus : correction des plans
	et des dimensions des FFTTENSOR.
	15) encore correction sur backward et forward pour FFT.
	16) correction sur polamodifie niso oublie.
	17) correction niso dans savemacroscopicfield
	18) correction nlar manquant dans savemacroscopicfield
	19) correction dans produitfftmatvectopt: oubli de passer
	FFTTENSOR a la bonne taille.

	20) correction sur Rytov.
	21) correction Born renormalise.
	22) correction scalaire.
	23) corection sur produitmatvectplus dans inverserig(opt)
	24) correction sur nlar dans le C++ fait
	25) erreur sur QMRCLA

	26) corrige les inverserig(opt) sous cuda et cuda simp.
	27) corrige les produitmatvect sous cuda et cuda simp.
	28) correction microsconfocal.f
	29) correction dans inverserigoptpd.f pour GPBICG2

	30) correction cuda dp inverserigopt, melange avec version future.
	31) correction cuda non opt oublie de iso pour polarisa.
	32) verif sur cuda simp pareil sous cuda optimiser une partie
	d'une version posterieur.
	33) directory verif terminé
	34) fait sans WRK_f dans cuda SP. Correction dans inverserigopt et
	inverserig.

	35) ajout d'un nouveau objet.

	faire doc sur le nouveau objet

	----------------------------------------------------------
	version 1.0.28

	1) correction de primefactor sur le format.

	----------------------------------------------------------
	version 1.0.27

	1) checkMemGPU eclairci.
	2) FFT_ESTIMATE pour GPU et pour objet en dessous de 1 million de
	dipoles sinon FFTW_MEASURE.
	3) script shell pour GPU en simple precision fait.
	4) Dans CUDA ecrit 17 chiffres significatif pour le residu pour
	bicgstab et gpbigc
	5) dans test_command, changement pour double complex.
	6) changement dans script shell pour GPU en double precision,
	ajout de libc++.
	7) passage de cuda double precision en FFT 1D.
	8) cosmetique sur sortie memoire pour cuda en SP et DP.
	9) declaration variable cuda SP refaite.



	----------------------------------------------------------
	version 1.0.26

	1) enleve des write dans cuda.
	2) supression de write inutile.
	3) correction plot poynting dans matlab, quart de tour...
	4) rajoutte une approximation sur l'angle pour quand FFT
	holographie cela tombe sur une maille evite les trucs qui
	bavent pour l'onde plane unique.

	----------------------------------------------------------
	version 1.0.25

	1) reoptimisation des FFT pour batch suivant x.
	2) enleve des write dans bicgstab.
	3) refait les dimensions correctement dans les methodes iteratives
	et refait aussi le nom correctement pour eviter les doublons.
	4) remis a jour nom version dans tous les .pro.
	5) recompilation doc.
	6) reposition schema dans doc pour le titre.
	7) rechange MEASURE en ESTIMATE, long a calculer MEASURE...
	8) reverification des 4 tests: OK
	9) mis en forme cosmétique pour le latex fr et en.
	10) correction initialisation des plans en cuda simp.
	11) correction initialisation des plans dans DP opt.
	12) diminue de la RAM GPU pour BICGSTAB double precision.
	13) diminue de la RAM GPU pour BICGSTAB simple precision.
	14) correction initialisation des plans en cuda simp bis.
	15) correction de tabdip en cuda simp.

	----------------------------------------------------------
	version 1.0.24

	1) passe les FFTW en 1D en prenant en compte les zero du padding,
	gain de 10% en temps de calcul. Du coup changement de nombreux
	appels.
	2) meme chose en cuda sur la simple precision.

	----------------------------------------------------------
	version 1.0.23

	1) optimise encore un peu cuda en simple precision
	2) change FFTW_ESTIMATE en FFTW_MEASURE=0

	----------------------------------------------------------
	version 1.0.22

	essai fftw qui se retrouve dans la version 24.

	----------------------------------------------------------
	version 1.0.21

	1) optimisation dans kernel.cu
	2) passe trope dans les routines de microscopie
	3) passe trope dans les routines cuda.
	4) ajout de iso dans kernel_simp pour la pola
	5) optimise avec le trope en simple precision.
	6) ajout de cuda dans microssansinc
	7) changement nom version
	8) recompilation des docs.

	------------------------------------------------------------
	version 1.0.20

	1) possibilité de compiler en simple precision le cuda
	2) creation de test_simp pour faire en simple precision avec ou
	sans cuda avec un makefile intégrer.
	3) ajoute dans la doc que le cuda simple precision est fait.
	4) change nom version.
	5) remis test identique aux options et refait le passage des
	termes microscopie pour etre plus clair. dans les main.f

	------------------------------------------------------------
	version 1.0.19

	essai fortran simple precision: trop compliqué et peu de gain.

	------------------------------------------------------------
	version 1.0.18

	1) remet coefficient precis pour la polarisabilite LDR de Draine
	et Goodman donnée par Yurkin.
	2) recalcule sldr dans le cas général.
	3) changement nom version.
	4) ajout dans la doc des b precis et de alpha_LS et recompile la doc.
	5) oublie d'un sldr dans poladiff dans cdmlib.f

	6) facteur dans la puissance pour bf en reflexion.
	7) correction quand la composante suivant x.

	------------------------------------------------------------
	version 1.0.17

	1) ajout de bicgstab en cuda
	2) ajout cuda pb direct dans microsdf.f
	3) ajout cuda pb direct dans microsbf.f
	4) ajout cuda pb direct dans microsconfocal.f
	5) ajout cuda pb direct dans microssansinc.f
	6) correction erreur: oubli d'initialiser nstop_cuda.
	7) changement nom version.
	8) ecrit sortie GPU avec residu et iteration.

	------------------------------------------------------------
	version 1.0.16

	1) refait cdm_install.pro pour sans gpu.
	2) correction de rayonmulti a la place de rayon dans main.f : Clement
	3) correction de concentricsphere dans main.f : Clement
	4) test_command permet de lancer le code en ligne de command en
	choisissant les options dans la compilation : Clement.
	5) refait les compilations pour ajouter test_command
	6) ajout compilation gpu en ligne de commande.
	7) changement de nett.
	8) changement nom version.

	AF ecrite sortie GPU avec iteration

	-------------------------------------------------------------
	version 1.0.15

	1) installation des librairies CUDA avec makefile et tout le toutim.
	ajout de nombreuses routines .cu .h etc....
	2) changement nom version fait.
	3) ecriture dans cuda pour preciser le calcul GPU.
	4) rajoutte dans la doc le GPU.
	5) mis a jour des paquets latex dans la doc et recompilation


	-------------------------------------------------------------
	version 1.0.14

	1) ajout de la serie de Born pour inverserig et inverserigopt.
	2) ajout de produitmat plus et opt: calcul de A alpha E.
	3) ajout dans cdmlib.pro des matplus.
	4) changement nom version


	---------------------------------------------------------
	version 1.0.13

	1) ajout microscopie confocal fluorescence avec les .m. Comme le
	microsocpe confocal mais avec les deux polarisations et
	l'intensité au carrée.
	2) passage codage int8 en int16 pour Param pour aller avec
	beaucoup de plan.
	3) changement nom version.
	4) interface Qt pour la fluo fait.
	5) remis les .m a leur place.
	6) correction dans le plot pour confocal fluo.
	6) ajoute scalaire normal 9 pour la fluo et ne pas faire deux
	polarisation.
	7) remet OMP qui s'était mis en commentaire et ajout de certaines
	parallelisation qui n'etaient pas mises.

	---------------------------------------------------------
	version	1.0.12

	1) cosmétique sur la sortie des données et panneau de
	configuration.
	2) correction dans cdmRun.cpp sur la partie windows pour le calcul
	de la mémoire.
	3) correction dans printfig pour eps et pdf
	4) Poynting tourne pour etre comme il faut, fais avant mais pas marque.
	5) Dans plotforce et plottorque ajout de axis equal.
	6) tous les tests refaits avec options.db3
	7) recompiler userguide
	8) dipole.eps dipolepos.eps dans les tex.
	9) changement nom version.
	10) oublie de ifdef pour FFTW corrigé dans multilayerborn
	11) quand calcul champ diffracte si directe holo, ou si nsection
	et energie chois change lre sultat: erreur facteur 3.33 d'écart
	sur le champ total.....En fait le waist est recalculer pour
	considéré que toutes l'énergie est sur la surface qui sert a
	calculer l'image, donc change aussi en fonction de aretecube et
	nfft. rajout dans la doc pour expliquer pourquoi nergie change
	l'amplitude?
	12) force randomspheremulti a etre en nproche=0.
	13) randomspheremulti correction oublie centre de la boite pour
	les spheres fixees.
	13) ds relecture correction de deux erreurs pour randomspheremulti.

	pb mybyte.h

	AF: pb représentation force depuis version Qt6 avec Fedora 40

	-------------------------------------------------------
	version 1.0.11

	1) ajout objet multiple sphere avec clutter.
	2) doc pour l'objet multi avec random sphere fait francais et
	anglais.
	3) relecture de objetrandommulti.
	4) Doc MLB faite en anglais et francais.
	5) changement nom version faite.

	AV dans relecture objet multi...

	-------------------------------------------------------
	version 1.0.10

	1) mis toutes les methodes MLB comme option possible.
	2) erreur sur ecriture hdf5 scalaire entier, entier passer sans
	tableau.
	3) MLB et BPM avec gaussian pour aller vite et sans erreurs
	4) gaussianfft passer aussi en para si inferieur a la tolerance...
	5) arret pour multilayer et BPM si beam pas pris en compte.
	6) chgt nom version.
	7) Correction que dipole ds cas multisphere. fixé nproche a 0
	regle le probleme.
	8) pour le scalaire rajouter comme faisceau possible le gaussian
	paraxial.
	9)  noms changés dans liste menu.
	10) MLB stope pour microscopy.

	faire la doc MLB

	-------------------------------------------------------
	version 1.0.9

	1) ds ifdda.m un 0 a la place de 500 pour le confocal.
	2) verifier taille ximage ds confocal: c'est juste.
	3) changement nom version.
	4) ajout de doc francais et anglais sur le calcul du microscope
	confocal.
	5) chgt axe du confocal en latex.
	6) change doc pour l'impression en accord avec printfig.m

	--------------------------------------------------------
	version 1.0.8

	1) routine pour calculer a part le large champ faite.
	2) ecrire ds cdmlib des microscopes refait.
	3) correction de NA dans C du confocal
	4) correction ds matlab de NA du confocal.
	5) changement nom version
	6) recompile les docs
	7) rajoute print avec ui command via imwrite.

	widefield pour scalaire??

	----------------------------------------------------
	version 1.0.7

	1) tous les prints matlab revus et corrigés en utilisant export
	graphics dans une routine à part.
	2) change nobjet de place dans le ifdda.m pour arreter apres plot
	epsilon.
	3) chngt numero version.
	4) change le nom des figures dans ifdda.m pour tout mettre cohérent.
	5) fait doc pour nom des figures avec leur description.
	6) recompilation des docs.

	AF cercle confocal pas la bonne ouverture numérique

	----------------------------------------------------
	version 1.0.6

	1) plotimageincreal et plotimagereal.m mal nommé dans la fonction
	corrigé.
	2) plotreal  marche bien, mais correction des legendes.
	3) change nom print des angles confocal plus titre.
	4) confocal plot gere cas nz=1
	5) confocal titre mal fait sous matlab: corrige.

	ndipole=1 a verifier.
	AF confocal print mal fait sous matlab


	----------------------------------------------------
	version 1.0.5

	1) ifdda.m corrigé des warning
	2) corrige une bonne partie des .m pour caxis et aute typo warning
	3) supression de deux fort.*
	4) dans der arbitrary manquait namefile....?
	5) changement nom version.
	6) latex recompile.


	----------------------------------------------------

	version 1.0.4

	1) supression dans routine de dahrce.f, ne sert plus.
	2) changement nom version.
	3) création de test0 qui calcule section efficace pour une grosse
	sphere, sert pour test rapidité. Modification des makefile qui va
	avec, .pro etc.
	4) supression de atxy.sty, dans les paquets linux.
	5) dans le .tex change espace entre numero et titre pour toc et
	lof.
	6) compile les latex

	----------------------------------------------------
	version 1.0.3

	1) mis en accord entre les routines commune de cdmsurf et cdm,
	change surtout celle de cdmlibsurf.
	2) changement nom version
	3) supression de inverse qui n'était pas compilé.
	4) changement de 12 en nlar partout. Y avait des oublis: verifie
	aussi si nlar bien passé.
	5) change README pour mettre en accord avec Qt6
	6) change doc pour mettre aussi Qt6.

	----------------------------------------------------
	version 1.0.2

	1) dans tous les inverserig change appel IDRS beta en residu
	double precision
	2) Changement comment appeler writecolor pour avoir argument
	explicit dans l'appel à la routine.
	3) dans les preconditionneurs suppression OMP qui était en
	commentaire, derange le compilateur intel.
	4) writehdf5mic changement des positions des options du
	preconditionneur pour laisser déclaration des variables.
	5) ajout de nxyz=nnnr dans verification taille des main.f



	----------------------------------------------------
	version 1.0.1

	1) rajout des comp dans le directory test
	2) dans make file rajout pour ubuntu
	3) changement nom version

	----------------------------------------------------
	version 1.0.0

        1) Major change: Update to Qt 6; uses Qwt 6.2.0

	----------------------------------------------------
        version 0.9.19

	1) writecolor si on veut ecrire les sorties en couleur ajouter
	2) correction ondeplaned faute ajoutee a la version 0.9.12
	3) changement nom version
	4) enleve ecrit ds le C++ info en debug
	5) enleve iret write
	6) mis en couleur des titres
	7) Change taille des deux champs du debut


	----------------------------------------------------
	version 0.9.18

	1) refait quelques write ds le code
	2) réecrit un peu la doc.
	3) changement nom version.
	4) pour l'instant enleve les sauvegardes des champs pour chaque
	incidence pour les microscopes.
	5) correction pour le confocal de l'ouverture numerique
	6) write au debut separé les differents microscope.


	-----------------------------------------------------
	version 0.9.17

	1) mis en place sauvegarde pour le micro en reflexion
	2) cght nom version
	3) change un peu la doc.
	4) dans le git oublie de intostring....
	5) verif sauve micronsansinc
	6) ferme hdf5 si interromb le calcul dans micro

	-----------------------------------------------------------
	version 0.9.16

	1) chgt nom version
	2) mis en place confocal en transmission sans incident pour
	l'instant.
	3) correction ds ifdda.m sur le titre pour pas cacher une partie
	de l'image
	4) rajout de reflexion transmission ds les menus deroulants pour
	confocal.
	5) chgt texte pour le confocal pour ajouter la transmission et
	compile les pdf.
	6) nettoyage des coucou.....


	------------------------------------------------------------
	version 0.9.15

	1) correction si que dipole calculé, oublie de fermer un group
	HDF5.
	2) Interverti deux lignes dans cdmRunWidget.cpp pour que
	multisphere plot proprement le epsilon. Du coup champ proche que
	dans l'objet supprimé.
	3) chgt nom version.
	4) change un peu la doc sur confocal et recompile.
	5) mis sanvegarde des champs ds microbf.f

	AF: meme chose df et mettre cette sauvegarde dans la liste
	numerique en bas?

	------------------------------------------------------------
	version 0.9.14

	1) nettoyage de fichiers anciens et sauvegardes
	2) sous microsconfocal mis en place une sauvegarde des champs dans
	fourier et des intensités dans le plan image.
	3) changement nom version.
	4) correction sur deltak confondu avec deltakx
	5) chgt Ediffkzpos passe en temporaire, et Ediffkzneg utilise.
	6) passe Axp Axs etc en dehors de la boucle car ne change pas.
	7) ecrit les champs de Fourier et image pour chaque incidence du
	confocal dans microscopy.h5 avec option dans le code pour
	l'instant.

	AF: meme chose pour bf et df et mettre cette sauvegarde dans la
	liste numerique en bas?

	------------------------------------------------------------
	version 0.9.13

	1) création du microscope confocal en reflexion. crée une nouvelle
	routine microsconfocal pour ce microscope avec l'option
	ntypemic=6.
	2) changement de micromasque pour introduire le confocal.
	3) erreur sur l'ouverture numerique corrigée.
	4) mis dans le menu zinf z sup et step.
	5) reécrit le texte pour le confocal
	6) remet na au ien de nainc pour le confocal dans l'interface.
	7) mis objective lens plutot que condenser
	8) sauvegarde plan milieu pour l'interface graphique.
	9) sauvegarde ascii
	10) menu deroulant que Image
	11) interface graphique, plot fait.
	12) enlever option transmission pas de sens pour confocal.
	13) parallelisation de microsconfocal.f
	14) non rigoureux confocal fait sauf BPM..
	15) sauvegarde HDF5 fait dans microsconfocal.f
	16) Matlab fait pour ploter confocal.
	17) matlab plot des incidents pour le confocal.
	18) doc pour la confocal fait et pdf crée.
	19) corrige bug pour plot dans l'interface
	20) BPM pour tous les faisceau? confocal speckle....pas de
	probleme prend le cube qui contient l'objet des que BPM choisi.
	21) probleme bord pour confocal regle dans matlab
	22) doc fichier de sortie faite.
	23) chgt nom version en 0.9.13.
	24) psi ajoute pour le confocal.
	25) change les appels dans cdmlib.f dans les quatre tests.


	-------------------------------------------------------------
	verison 0.9.12

	1) ajout commentaire sur le confocal.f
	2) ajout commentaire sur diffracte2d.f
	3) polarisation suivant y pour la valeur pp=3. Changement pour
	ondeplane et ondeplanekxky: x=2 pas fait.
	4) changement nom version fait.
	5) pp=3 et 2 mis dans ondeplanederivee pour optical force
	6) pp=2 mis également.
	7) enleve produitfftmatvect2.f qui ne sert pas.
	8) cré la routine XR=A xi pour Kamal et peut calculer champ proche.

	-------------------------------------------------------------
	verison 0.9.11

	1) ajout de GCORS2
	2) cgt nom version.
	3) supression de close(15) inutile dans routine creation objet.


	-------------------------------------------------------------

	verison 0.9.10


	1) optimisation de idrs et gpbigstabl
	2) nlar passe en argument et defini dans le C++
	3) changement des main pour mettre nlar
	4) chgt nom version
	5) chgt pour calcul conservation d'énergie maintenant toutes les
	ondes planes sont calculées pour une puissance donnée dans le menu
	mais sur une surface liée à la taille de la FFT.
	6) dans main.f ajout de FG pour la pola et nouvelles méthodes
	iteratives

	-------------------------------------------------------------
	version 0.9.9

	1) correction erreur dans savemacroscopicfield.f
	2) chgt nom version
	3) fini paralelisation de gpbicgstabl et idrs
	4) bicgstabL mis en place et paralelise.


	eps homo=


	------------------------------------------------------------
	version 0.9.8

	1) passer en LU pour idrs et gpbicgstal
	2) paralléliser un max idrs et gpbicgstal
	3) chgt nom version
	4) enleve option -g ds cdmlib.pro

	------------------------------------------------------------
	version 0.9.7

	1) IDRS commenté dans la liste
	2) correction de IDRS, erreur sur une mise en memoire.
	3) gpbicgstabL implémenté
	4) zbicgstabL implémenté
	5) les trois dans inverserigopt, dans inverserig
	7) inverserigoptpd inverserigoptpg
	8) inverserigpd inverserigpg
	9) inverserigoptscal, dans inverserigscal plus chgt pour mettre
	FFloc et non FFlocscal car pas meme dimension.
	10) inverserigscalaireoptpd et inverserigscalairepd plus cgt
	tableau dimensionnement.
	11) inverserigscalaireoptpg inverserigscalairepg pour IDR et
	gpbicgstabL + correction sur le FFloc
	12) chgt nom version



	------------------------------------------------------------
	version 0.9.6

	1) correction sur le schiren ou la pupille était mal décrite.
	2) chgt nom version

	------------------------------------------------------------
	version 0.9.5

	1) chgt ds dipoleinc(p) pour pallier les erreur d'arrondis
	2) chgt nom version
	3) ajout de IDRS pour le cas optimise, pour l'instant en
	commentaire

	------------------------------------------------------------
	version 0.9.4

	1) chgt nom version
	2) pas de reflexion avec incident dans le cas bf, df phase
	etc. enleve de ifdda.m
	3) Dans la BPM Eimage en Efourier car Eimage utilisé pour stocker
	l'intensite dans la routine microssansinc.f

	------------------------------------------------------------
	version 0.9.3

	1) Correction de version
	2) chgt de nom
	3) correction sur df oublie declaration kp.
	4) correction de bf dans test3 de la doc et coorection de main.f
	de test3.
	5) verif test1 et test2 fait
	6) elargi dans cdm les cases microscopie pour mieux voir.
	7) correction d'une sortie matlab sur le df cone
	8) verif test4 faite.
	9) refait les tests sur les paramètres pour etre coherent.


	------------------------------------------------------------
	version 0.9.2

	1) correction gros bug dans bf si le champ incident: deltaky au
	lieu de deltakxy
	2) nom version changé.
	3) bf avec BPM reutilise Eimage! Change Eimage en Efourier.
	4) bf supprime theta, phi dans openmp
	5) bf rentre theta et phi non défini pour bpm: calcul theta et phi
	pour bpm et bpmmacro
	6) df rentre theta et phi non défini pour bpm: calcul theta et phi
	pour bpm et bpmmacro
	7) df Efourier remplace Eimage pour bpm.


	------------------------------------------------------------
	version 0.9.1

	1) correction dans ifdda: ajout de ntypemic=5
	2) chgt nom version
	3) correction erreur de deltak en deltakx dans routinedeltak pour
	reperer les spéculaires.
	4) correction dans ifdda.m un if mal fait...
	5) passage en anglais de la doc sur la microscopy
	6) Correcteur orthographique sur les tex anglais.


	------------------------------------------------------------
	version 0.9.0

	1) ajout d'une routine micromasque.f pour faire plusieurs
	microscope en meme temps avc la routine microsbf
	2) chgt de la routine microssinc dans le bf pour mettre le masque.
	3) cght de les menus deroulants pour mettre en place les nouveaux
	microscopes.
	4) chgt ifdda.m en accord avec les nouveaux microscopes.
	5) chgt nom version.
	6) menu deroulant refait.
	7) changement pour mettre nmasque a une dimension dans toutes les
	routines.
	8) mis sanvegarde en hdf5
	9) sauvegarde mis aussi pour microssansinc.f
	10) hdf5 pour kz >0 bon
	11) correction kz>0 appel manque argument.
	12) kcnay correction sur un get.
	13) correction sur Kcnax mis en 37 au lieu de Kcnay
	14) verif sauvegarde fait.
	15) test refait à verfier.
	16) test3 verifier: erreur sur la calcul irradiance corrigee.
	17) test4 correction menu: options.db3 recréé.
	18) redaction doc en francais.
	19) rajoutte en variable dans microsbf et microsnfneg numpaer2,
	ntypemic
	20) qd masque mis le champ incident en pi/2 pour le dark field et
	les autres en phase.
	21) ajouter microscope phase avec champ qui repasse dans le masque
	avec le diffracte
	23) verifier quand sans FFT fait pour kz>0 et mis l'incident
	multiple du diffracté
	24) verifier quand sans FFT fait pour  kz<0
	25) verification du dernier microscope.
	26) Nettoyage des routines.
	27) refait un peu la doc.

	-----------------------------------------------------------------------
	version 0.8.10

	1) chgt nom version
	2) nettoyage de write dans cdmlib.f
	3) correction ecriture dans hdf5 et nmat de l'incident si reflexion.
	4) correction ifdda pour permettre z>0 et z<0 suivant l'option
	pour l'image avec incident.
	5) filtrage des fréquences plus élevées du confocal et speckle si
	plus grand que l'ouverture numerique de l'objectif.

	-----------------------------------------------------------------------

	version 0.8.9

	1) chgt nom version
	2) refait un peu la doc sur le confocal.
	3) correction sur les menus déroulants.
	4) ajoute dans l'interface NA pour le speckle et le confocal.
	5) chgt numaperil pour speckle et confocal.
	6) changement des appels de speckle et confocal dans cdmlib.f
	7) chgt ds diffractefft2denergieconfocal pour numaperil.
	8) cght des diffracte 2dinc pour mettre numpaeril
	9) kmax=k0*numperil partout
	10) arret si deltak trop grand ds confocal et speckle.
	11) correction matlab pour tracer les negatifs avec incident pour
	confocal et speckle.
	12) chgt README pour ubuntu et mettre tous les paquets.
	13) refait les main dans test avec numaperil.
	14) fait toutes les illuminations confocal et speckle dans la
	liste.
	15) correction erreur sur reflexion holographique pour quick
	method avec nenergy=1
	16) fait options .db3
	17) chgt appel de relecture change ainsi que argument de la
	routine avec ajout de numepril et speckseed.
	18) relecture change pour prendre en compte les quatres nouvelles
	illuminations.
	19) nettoyage de cdmlib.f
	20) relecture avec test green interdit car trois passages.


	---------------------------------------------------------------
	version 0.8.8

	1) rajoute dans l'interface graphique le speckle et la fonction de
	Green.
	2) dans la doc rajoute option fonction de Green.
	3) creation d'une routine savemacrosocpiffield pour diminuer la
	taille de cdmlib.f, correction oublie definition hdf5
	4) ajout d'une variable dans input matlab testgreen
	5) ajout plot de la fonction de Green dans iffda avec de nouvelles
	routines: plotgreen, plotgreenz
	6) changer dans les tests pour rajouter les options et la variable
	seed
	7) nprint correction anisotrope
	8) pareil pour options.db3 dans le test.
	9) cght nom version a la 0.8.8
	10) rajoutte le demi speckle pour kz>0.
	11) rajoute confocale et demi confocale.
	12) fait champ large pour les nouveaux beams.
	13) regler  la puissance pour le gaussian
	14) regler la puissance pour le speckle. mis a zero de
	l'irradiance.
	15) fait la doc en Français sur le speckle et confocal.
	16) conservation energie pour speckle et confocal.
	17) microscopie pour kz>0 fait
	18) force optique pour les nouveaux beams, rajouter dans gaussian
	FFT ou la dérivee est faite numériquement: moins précis mais ça va!
	19) doc passe en anglais.
	20) options.db3 refaite.
	21) fait microscopie pour kz<0.
	22) chgt ds menu pour les quatre images tout le temps.
	23) correction psi pour speckle et confocal.


	---------------------------------------------------------------
	 	version 0.8.7

	1) run-get Meshsize pour avoir la maille et decaller dans la
	figure comme il faut, changement aussi dans cdmPlot.cpp,
	changement aussi dans Fourier, image et poynting: plot centré sur
	le pixel
	2) nom version changé+doc pdf compilé

	----------------------------------------------------
	version 0.8.6

	1) nom version changé.
	2) ajout de la fonction de Green filtree dans le code avec pola changée.
	3) ajout dans doc de FG.

	A faire plot centrer sur le pixel
	windows
	paquet pour linux avec Qt intégrer.

	-----------------------------------------------------
	version 0.8.5

	1) Nettoyage dans cdmlib des fortrans qui ne servaient pas, comp
	et autres merdes.
	2) supression de l'option -g dans cdmlib.pro
	3) version changee.
	4) nettoyage sortie et ecriture.
	5) un ajout sous doc et recompilation.
	6) ajout donc comment faire loop.

	-----------------------------------------------------
	version 0.8.4

	1) Correction hdf5 si pas compile alors arrete en cas de choix hdf5
	2) correction ds test1 pour que main.f corresponde a options.db3.
	3) chgt nom version+pdf.
	4) chgt nett

	-----------------------------------------------------
	version 0.8.3

	1) chgt nom version.
	2) changement des main.f car erreur declaration variable.
	3) chgt des pdf pour la version et de version.
	4) chgt tfqmr fin pour nlim.
	5) cgt de qmrbi pour arret plus de tous les inv pour pb nlim
	6) chgt de zcg il manquait des conjugué
	7) cgt ds bicgstab des erreurs..

    	-----------------------------------------------------
	version 0.8.2

	1) Change le README
	2) ./version chgt nom version.


	-----------------------------------------------------
    	version 0.8.1

	1) modification doc.
	2) modif doc et readme.
	3) chgt nom version.

	-----------------------------------------------------
	version 0.8.0

	1) changement pour passer poynting a deux dimensions dans
	l'interface graphique C++
	2) passage de poynting et kxypoynting ds le C++
	3) daniel passe plot epsilon dans le champ et evite le 3D
	4) modifie qwtconfig.pri pour eviter d'aller sous root.
	5) changement nett pour qwt 6.2.0
	6) refait les listes
	7) change un peu objet arbitrary pour etre plus clair et éclairci
	la doc.
	8) chgt nom version.
	9) IFDDA article a citer.
	10) rechgt pour qwt 6.1.2
	11) changement pour plot epsilon et poynting
	12) indice pour poynting.
	13) remises des choses identiques avec la surface.
	14) rotation poynting ds interface
	15) precision poynting scattered field

	-----------------------------------------------------
	version 0.7.29

	1) Haegedus trick implementer sur le rigoureux opt et non opt,
	mais commenter : peu de gain
	2) supprimer nx,ny, nz dans main.f
	3) supprimer connerie ajouter ds preconditionneur....
	4) correction et arrangement ds ifdda sur le poynting vecteor.
	5) si init sclaire si fait le scalaire alors on fait born.
	5) si E=0 Haegedus trick evité par calcl nome du premeir point.
	6) correction Haegedus dans non opt.
	7) initialise ctmp1 et ctmp2...
	8) ajout des deallocate dans les main.f
	9) correction de spola problème signe +Txx en Gn1n1 pour le
	scalaire.


	---------------------------------------------------------
	version 0.7.28
        1) replace qwtplot3d with datavisualization library from Qt;
           plugin to be installed with 'dnf install qt5-qtdatavis3d-devel'
           examples are installed with 'dnf install qt5-qtdatavis3d-examples'
           cdm.pro updated
           Note: poynting surface has no color map property;
                 use Q3DScatter plot instead of Q3DSurface as workaround
           - add sphere.obj and largesphere.obj for Q3DScatter in /cdm directory

	---------------------------------------------------------
        version 0.7.27

	1) arret ds gpbicg si tol depasse 100
	2) correction formule couple en anglais.
	3) rajout de l'approximation scalaire classique dans l'estimée
	initiale.
	4) chgt nom version.
	5) ajout de schemamic.pov
	6) documentation -> userguide

	-------------------------------------------------------
	version 0.7.26

	1) ajout biblio dans la doc.
	2) nmatlab bien initialisé.
	3) verif ortho sur doc.
	4) changement nom version
	5) correction ortho doc.

	-------------------------------------------------------
	version 0.7.25

	1) arrange sorties
	2) correction sur dipole seulement.
	3) paralelisation boucle force.
	4) nettoyage
	5) changement nom version
	6) doc pour initial et precon.
	7) chgt nprecon pour scalaire init.
	8) nettoyage suite
	9) suppression latex package inutile ajout de atxy dans doc.


	-------------------------------------------------------
	version 0.7.24

	1) supression allocatable dans cdmlib.f
	2) nettoyer getnxm1...
	3) les main.f fait avec allocatable
	4) scalaire fait.
	5) changement nom version

	faire doc

	-------------------------------------------------------
	version 0.7.23

	1) changement nom version
	2) temps calcul ds main.f fait.
	3) version oublié dans le titre et aussi changement ds les tests.pro.

	pb allocatabale	avec main.f?
	faire doc


	-------------------------------------------------------
	version 0.7.22

	1) Changer nom version
	2) pas d'allocatable dans les main.f car ne fonctionne pas
	3) sdetnn et FFprecon oublie ds test2-3 et 4 pb allocatbale
	4) nettoyage file, << "SSBICGSAFE2" enlever mais routine reste,
	n'existe que pour le classique.
	5) correction nprecon=2 pour scalaire.
	6) sort le temps de calcul reel en seconde et l'affiche
	7) correction de deux erreur dans scal pd.

	 pb allocatabale	avec main.f?
	faire doc

	-------------------------------------------------------
	version 0.7.21

	1) arret qd nfft plus petit que nx ou ny
	2) init scal fait
	3) memoire sdet scal
	4) test refait.
	5) test fait dans directory.
	6) Rytov fait scal.

	-------------------------------------------------------
	version 0.7.20

	1) precon init pour pd scalaire fait.
	2) init pour pd fait avec FFT 2D.


	Rytov pas fait
	-------------------------------------------------------
	version 0.7.20

	1) mis le préconditionnement pour le scalaire.
	2) inititalise pour scalaire, pg pour nrig=8 et non opt.
	3) bpm pour le scalaire pour opt et non opt.


	Rytov pas fait et pd pas fait.


	-------------------------------------------------------
	version 0.7.19

	1) Update qwtplot3d library 0.3.2 taken from
	https://github.com/sintegrial/qwtplot3d
	--> modified version of qwt3d_enrichment_std.cpp: Dot configure 5
	size default value
	--> modfied version of qwt3d_colorlegend.cpp: draw method
	--> replace OpenGl with Gl (bug in qwtplot3d rendering in separate
	    window not solved yet)

	-------------------------------------------------------
	version 0.7.18

	1) ajout de julien pour compilation avec le nouveau Qt 5.15
	2) correction gaussianchampcirc oubli d'argument.
	3) do not save file mis en premier AV.
	4) change ds qwtconfig.pri  QWT_INSTALL_PREFIX    = ./qwt-$$QWT_VERSION
	en supprimant le /usr/local/qwt-$$QWT_VERSION
	5) /usr/share/qt5/qtlogging.ini ajoute 3 dernières lignes pour é
	viter une erreur.

	Rules]
	*.debug=false
	qt.qpa.xcb.xcberror.warning=false
	qt.qpa.xcb.xcberror.error=false
	qt.qpa.xcb.warning=false
	qt.qpa.xcb.error=false
	6) jpg save avant et par défaut.

	-----------------------------------------------------------

	version 0.7.17

	1) Modification de Daniel sur l'interface graphique pour afficher
	la cote z sur les images
	2) changement nom version

	-----------------------------------------------------------

	version 0.7.16

	1) option macro par defaut comme Anne l'a demandé
	2) sdetnn gere en allocatable ds le fortran et C++
	3) FFprecon mis aussi en allocatable
	4) menu deroulant ordre change
	5) initialisation des menus deroulants des coupes.

	AF doc sur precon
	AF para force??
	tooltuto pour Qt.

	-----------------------------------------------------------
	version 0.7.15

	1) correction hdf5 sur un ifdef qui ne prennait pas les close.
	2) calcul LU puis résoud avec ZGETRS. Plus rapide que pivot de
	Gauss, car inverse pas la matrice.
	3) ds cdmlib enleve beaucoup de merde et rendu non exec certains .f
	4) correction erreur dans appel zgetrs: il faut mettre la taille
	de la matrice.
	5) para ajouté dans scalaire inverserig.
	6) ajout nom version dans hdf5
	7) version avait disparu, rajouté....
	8) scalaire mis u*Gu et non u.Gu
	9) met nom plus explicit pour le scalaire et élargi le champ.
	10) doc sur scalaire faite.
	11) methode iterative sur optscalaire faite.
	12) methode iterative sur scalaire faite.
	13) kx, ky k0 en indice....

	AF doc sur precon
	AF para force??


	-----------------------------------------------------------
	version	0.7.14

	1) cgt nouvelle variable precon et ninit dans tous les mains.
	2) COLLAPSE2 ds les precons pour rajouter nz.
	3) changement de bicgstab
	4) nlim passé en argument
	5) nlim mis dans les mains.
	6) main mise en forme des nouvelles variables.
	7) remis test ds options.db3 pour les nouveaux arguments.
	8) dark fied et brigfield Born en init ajouté.
	9) df et BF fait pour les deux scalaires?
	10) doc change sur méthodes itératives.
	11) options ajouter nlim, nprecon,ninit.
	12) correction ds malloc cdmRun.cpp pour Sdetnn et FFprecon!
	lignes en trop pour la mémoire.

	AF doc sur precon et scalaire à faire.
	AF para force??

	  AF si inverse en LU plus rapide après pour faire le produit
	  matrice vecteur. ZGETRS

	-------------------------------------------------------
	version	0.7.13

	1) preconditionneur fait pour sphere, nproche=-1 pg et pd.
	2) Chan a deux D  pour pd. modifie init....

	-------------------------------------------------------
	version	0.7.12

	1) Passer calcul de Chan à FFT à deux dimensions fait pour pg.

	-------------------------------------------------------
	version	0.7.11

	1) mise en place de l'approximaiton scalaire classique
	2) correction pour microscope version 0.6.21
	3) ajout de QMAKE_CFLAGS     += -I/usr/include/hdf5/serial dans .pro
	4) ajout de ninitest pour le champ null au lieu de born et met
	Born par defaut.
	5) deallocate ds precon droit.
	6) change deallocate ds preconditionneur pour gagner de la place.
	7) corrige ninitest pour inverserig et inverserigopt
	8) mis initest pour precon gauche.
	9) mis initest pour precon droit avec une nouvelle routine pour
	faire le calcul de PE0
	10) Nlim passer en argument de toutes les routines pour etre
	defini que dans le cdmlib.f une seule fois.



	------------------------------------------------------
	version	0.7.10


	mise en place de init mais pas fini pour precon

	-----------------------------------------------------
	version	0.7.9

	fin de l'optimisation du preconditionner+ajout de la possibilite
	d'inverser LU pour la matrice de Chan

	-----------------------------------------------------
	version	0.7.5 à 0.7.8

	optimisation du calcul pour aller vite. Parallè
	lisation+FFT2D+allocattion pour eviter de définir des tableaux
	partout.

	-----------------------------------------------------
	version	0.7.4

	1) Mise en plan de l'interface graphique pour l'interface du
	preconditionner.
	2) mise en place pour preconditionner gauche et droite sauf pour
	QMR qui demande la transposée
	3) nproche passe en 0 des que nprecon différent de 1.

	-----------------------------------------------------
	version	0.7.3

	essai de preconditionnement 2D par une matrice de Chan avec main.f
	premier essai plutot bien

	-----------------------------------------------------
	version 0.7.1 et 0.7.2

	essai de preconditionnement 3D par une matrice de Chan pas
	concluant. laisse tomber.

	-----------------------------------------------------
	version 0.6.20

	1) Erreur ds la routine derivative: dimension 5 en 4.
	2) para sur ecriture iso en hdf5.

	paralelisation boucle force ds cdmlib.f?

	-----------------------------------------------------
	version 0.6.19

	1) ajoute sous tests pour compiler que les fortrans sans
	l'interface graphique.
	2) la doc est changée en conséquence
	3) README changé aussi.

	-----------------------------------------------------
	version 0.6.18

	1) Changement readme pour qt5
	2) write hdf5 numaperinc en entier alors que c'est un double.
	3) changement doc pour qt4 et qt5
	4) ajout d'une ligne dans README


	-----------------------------------------------------
	version 0.6.17

	1) changement de TRUE en true

	-------------------------------------------------------
	version 0.6.16

	1) modification make file pour résoudre problème
	2) supression des -g ds la compilation
	3) changement organisation début du panneau de configuration
	4) améliore l'interface advancedinterface.
	5) supression de l'output 99.
	6) changement nom version.

	----------------------------------------------------------
	version 0.6.15

	1) 4096 qui restait ds diffracte2lens.f
	2) lecture du fichier HDF5 et affichage que quand l'option est
	choisie.
	3) création de compfr et compen pour compiler les soucres latex.
	4) ajout de bibliographie dans la toc.
	5) changement nom version.


	---------------------------------------------------------
	version 0.6.14

	1) remet en forme cdmOptionsWindow.cpp + toutes les options sont
	maintenant mises.
	2) correction chaptest
	3) création chaptest en anglais.

	----------------------------------------------------------
	version 0.6.13

	1) cdmOptionsWindow gère la sauvegarde du fichier de
	configuration. ajout sauvegarde multiple wave.
	2) correction ds diffracte energie depassement de ligne.
	3) ds cdmOptionsWindow.cpp rajoute Antenna comme source
	4) ds cdmOptionsWindow.cpp correction concentric sphere.
	5) ds cdmOptionsWindow.cpp rajoute nside, NA condenser, et focal
	plane.
 	6) ds cdmOptionsWindow.cpp rajoute emissivity.
	7) ds cdmOptionsWindow.cpp rajoute gaussian avec FFT.
	8) remet en forme cdmOptionsWindow.cpp
	9) ds nett nettoie les .opt ds le bin.
	10) changement nom version.
	11) ajout de test1 dans le userguide en Francais.
	12) ajout de test2 dans le userguide en Francais.
	13) ajout de test3 dans le userguide en Francais.
	14) ajout de test4 dans le userguide en Francais.

	---------------------------------------------------------------
	version 0.6.12

	1) changement nom de version.
	2) Réécriture de sortie énergie.
	3) Dans ifdda.m changement des titres pour etre en relatif, champ
	local macroscopique et microscopie, force et torque
	4) pareil pour microscopie.
	5) création de chgtunit.m si on veut changer des unites. Pas
	implementé, il faut rajouter un argument ds toutes les functions
	pour passer l'unité....


	---------------------------------------------------------------
	version 0.6.11

	1) rajoute unité dans faisceau ecriture.
	2) mis en if nmat.eq.0 de l'ouverture des fichiers matlab, evite
	des ouvertures de fichiers vides dans cdmlib.f et tous les
	fichiers qui crées les objets
	3) Ecrit ds ifdda.m quel type de fichier on utilise.
	4) option print mis dans le ifdda.m
	5) correction dans object pour ne pas ecrire quand nmat pas égale à 0.
	6) meme correction que 5 sur xwf, ywf et zwf.

	7) Correction pour wf écrit au format hdf5 et plus en .mat quand
	option 2 choisie.
	8) wf lit dans ifdda.m
	9) correction sur ecriture eps.
	10) Changement nett.



	----------------------------------------------------------
	version 0.6.10

	1) Erreur dans objet arbitrary sur la mise en memoire des x,y,z.
	2) Changement dans l'écriture des data.


	----------------------------------------------------------
	version 0.6.9

	1) pb objet arbitrary nxmp=nymp=nzmp=0 pas d'affichage: En fait pb
	quand nmat=2 et ecriture local et macro.Dans ce cas, la mise en
	mémoire n'était pas fait et pas de plot possble. Rectifier
	ecriture fait comme avec la surface dans cdmlib.f
	2) Dans objet arbitrary passe na a 0 si -1 choisi car forcement 0
	pour nproche dans objetarbitrary.f
	3) changement nom version en 0.6.9.
	4) remet la memoire ecrit pour savoir ce qu'on utilise et supprime
	les logs qui servaient pas.
	5)  if (minz == maxz) {
      minz=minz*0.5;
      maxz=maxz*1.5;
	}
	pour rangez pour définir en même temps la colorbar. et evite le
	cas aussi ou les deux vallent zero.



	interpolation vraiment moche?


	----------------------------------------------------------
	version 0.6.8

	1) Passe la gestion de nxmp=nymp=nzmp=0 dans le C++ et plus dans
	le fortran. Du coup elimine aussi un bug avec object arbitrary sur
	le tracé.
	2) passe dans le fortran tabfft2 en tableau dans toute les
	routines, de par ce fait tableau défini dans le code main.
	3) Dans la liste des arguments pour la fft passe à un maxi de
	16384 dans le menu déroulant.
	4) introduction de tabfft2 dans le C++
	5) correction oublie de tabfft2 dans microssansinc.f
	6) ajout de tabfft2 dans les main.f qui sont dans les tests.
	7) setNtypemic(query.value(37).toInt()) était en double ainsi que
	nside!!
	8) ntypemic->setCurrentIndex(0); enlevé il ne faut pas l'intialiser
	c'est le load qui le fait.
	9) correction concordance entre test3 et test4 avec les main.f

	-----------------------------------------------------------
	version 0.6.7

	1) réécriture de main.f pour le faire plus conviviale, meme modèle
	que pour mainsurf.
	2) refait un peu écriture des datas dans cdmlib.f.
	3) suppression d'un write 999 et correction d'un zfocus qui
	manquant dans private de openmp pour l'holographie.
	4) création de quatre tests, les deux derniers testent bf et df. 4
	tests sous options.db3 dans bin/tests.
	5) test1, test2, test3 et test4 cohérents avec options.db3.
	6) supression des écritures fort dans tout le code.
	7) nett changé pour nettoyer les tests.
	8) condenser mis en option suivant le choix du microscope dans le
	menu déroulant.
	9) additional side band mis à la bonne place avec le wide field et
	plus dans numerical parameter.
	10) remis quelques légende au propre dans l'interface cdm.

	----------------------------------------------------------------
	version 0.6.6

	1) Dans cdmRunWidget.cpp si df et bf alors ne trace pas la phase
	pour les composantes car pas de sens.
	2) nett ajouter pour nettoyer ce qui est dans tests.

	----------------------------------------------------------------
	version 0.6.5

	1) changement nom version.
	2) dans bf et df ameliore un peu rapidite: k02 et kpara


	----------------------------------------------------------------
	version 0.6.4

	1) nprochefft=0 si demande large field mais en fait np=0 pour
	toutes les composantes. Evite de refaire un calcul pour rien.
	2) dans recalcul de la fonction de Green, la pola était mal
	recalculee dans le cas anisotrope.
	3) Ecriture energie et flux en concordance avec notation de la
	surface.
	4) Ecriture pour holography en accord avec la surface.

	----------------------------------------------------------------
	version 0.6.3

	1) changement des options de compilation pour éviter bug de beam
	64.
	2) Correction erreur sur bf. Confusion deltak incident et
	diffracte, de meme pour imaxk0 entre diffracte et incident
	3) bf: icomp de trop sur le champ incident: enleve.
	4) change dans microbf quand non rapide oublie initialise de
	imaxk0 quand 2) a ete fait.
	5) dark field Confusion deltak incident et
	diffracte, de meme pour imaxk0 entre diffracte et incident
	6) df: icomp pas de trop sur le champ incident car dephase de pi
	pour le contraste de phase.
	7) pb dans instuction OMP de df et bf, il manquait
	u,v,zfocus,sintmp et costmp
	8) dans cdmlib ecrivait nprochefft avant de le calculer.
	9) changement microssansinc pour faire comme le df et bf en
	transmission avec correction des memes erreurs...

	----------------------------------------------------------------
	version 0.6.2

	1) change chap1*.tex pour inclure la nouvelle methode de
	compilation. Recompilation des userguides.
	2) Changement titre de la fenetre.


	----------------------------------------------------------------
	version 0.6.1

	1) Brightfield change pour le nombre d'incidence car trop grand
	par defaut.  Maintenant base sur delta k=2*pi /(2L) et multiple de
	deltakx=2 pi/ (a*N) pour éviter les problèmes d'arrondi si on ne
	tombe pas sur un point incident de fourier.
	2) Meme chose que le 1 mais pour dark field. par contre plus
	multiple de delakx car sur un cercle.
	3) modification de ifdda.m pour tracer les incidents choisis pour
	le df et le bf dans la figure 560
	4) création d'un test4 sous options.db3 pour le bf avec une grosse
	sphere.

	----------------------------------------------------------------
	version 0.6.0

	La version ou les trois branches sont fusionnees est enfin finie
	et les bugs corrigés.

	----------------------------------------------------------------
	version 0.5.13

	1) creation de test typique pour l'interface graphique:
	options.db3 avec test1, test2 et test3 dans bin/tests
	2)si pas de nom donné pour la relecture alors arret:
	if (long.eq.0) then
        infostr='No file given for read local field from file'
	  nstop=1
        return
        endif
	changement dans relecture.f
	3) rajoutte de primefactor et averti si décomposition compliquée
	qui ralenti la FFT.
	changement dans cdmlib.f ajout de primefactor.f et changement dans
	cdmlib.pro
	4) enlever un write debile dans gausskronrod patterson
	5) main.f dans le directory correspond au cas test1 de
	bin/tests/options.db3
	6) nett ajouter rm des librairies lib*.so dans cdmlib/lib
	7) ajouter define fftw et hdf5 dans cdm.pro pour que nmatlist soit
	bien fixe.
	8) changement dans cdmOptionsWidget.cpp pour éviter d'afficher le
	champ hdf5 dans hdf5 pas choisi

	--------------------------------------------------------------
	version 0.5.12

	1) Correction dans le makefile du a la fusion
	2) creation d'un directory test pour main.f

	--------------------------------------------------------------
	version 0.5.11

	1) nettoyage de routine fortran qui ne servaient plus, car
	intégration perso des fonctions de Green.
	2) Changement pour mettre les trois branches en une avec des ifdef
	un peu partout dans le code donc fusion des trois en branche en une


	--------------------------------------------------------------
	version 0.5.10

	1) actualisation du nom de la version
	2) sintmp =0 evite de diviser par zero dans ce cas
	3) integration de la fonction de Green par une methode de Simpson
	et supression de dhchre.f et routines annexes qui bugguaient.

	--------------------------------------------------------------
	version 0.5.9

	1) en réflexion calcul a part pour holography car pas de speculaire.
	2) ifdda.m z<0 et kz<0 pour reflexion
	---
	3) adapte le README
	4) chap5.tex et chap5a.tex partie microsocpy, changer pour faire
	comme pour la surface.
	5) ajout arret si nxm, nym ou nzm egal a zero.

--------------------------------------------------------------
	version 0.5.8

	1) Correction bug pour ecrire fichier pour objet arbitraire
	2) correction bug dans ecriture hdf5 avec openmp


--------------------------------------------------------------
	version 0.5.7

	1) dans relecture pour le faisceau met if
	(.not.(lle(Beamtmp,Beam))) goto 1000 évite problemede relecture
	pour la troisième fois!!!
	2) correction bug sur kx pour afficher ls kxy dans l'interface
	3) na =0.9 er r=100 au debut.

	4) dans main.f erreur non sur fichier objet et manque declaration
	ierror.
	5) Dans main hdf5 file pas dans la liste d'argument de cdmlib
	6) Supression de produitfftmatvect2.f
	7) Supression de gaissiaudfft.f

	dérivée faisceau gaussian avec fft

--------------------------------------------------------------
	version 0.5.6

	1) Numerotation incidence pour bf et df.
	2) améliore message erreur Meshsize too small
	3) ajoutte arret pour tous les inhomo si lc=hc=0
	4) random sphere arret si rayon < meshsize.
	5) erreur longueur chaine character dans relecture pour
	gfftwavecircular

--------------------------------------------------------------
	version 0.5.5

	1) ajout unite cross section avec integration
	2) correction unite force modulus
	3) precise et ajoute qqs write
	4) reread avec les differentes methodes pour resoudre pb direct
	5) erreur sur relecture croisement nfft et nrig!

	commit fait

	6) enlever write dans writehdf5 a ne pas cherry pick.
--------------------------------------------------------------
	version 0.5.4

	1) changement de Nproche de 0 à 1 dans c++ pour objet multiple car
	sinon le plot est faux. (avant c'était de 1 à 2!!) et suppression
	de la ligne nproche-1.
	2) ajout de trim pour les chaines de caracteres.

	3) rajout de sauvegarde hdf5 pour objectnspheres.f, objectpara.f,
	objectparainhomo.f...
	4) nseed=0 dans random sphere enleve.

--------------------------------------------------------------
	version 0.5.3

	1) correction et ajout du calcul de temps
	2) fonction de green quand relecture utilise ne la recalcul pas.

--------------------------------------------------------------
	version 0.5.2

	1) changement de numerotation de ffts et fftw+ correction de ffts
	ou singleton avait disparu.
	2) pb pour wide field. Maintenant fait comme pour la surface on
	cela fit exactement ce que demande l'operateur.

	3) ajout routine calcul de temps.
	4) ajout exclusion arbitrary si nnnr < 2.
	5) nettoyage de write


--------------------------------------------------------------
	version 0.5.1 (hdf-fftw) 0.4.10 (fftw) 0.3.17 (ffts)

1) refaire hdf5 pour fourier, et ne stocker que la partie non
	nulle comme pour la surface.
2) passage de bawkward a forward pour la FFT de fourier a image
	pour tenir compte du grossissement negatif

3) refait ifdda.m pour la version 0.5.1: titre en entier et
	indique le cote observe en microscopie.
4) ajout de figure et explication des différentes version dans la doc.
5) correction polarisabiité de LR
6) nsens ajouter ligne 2417
7) rajoutte des chiffres après la virgule dans le plot
8) Evite le gris de constant dans le plot
9) ecris tout le temps inputmatlab mais arrete si option ecrit pas demande.
10) erreur legende dans matlab pour composante image microscopie.
11) rajoute si near field pas coche alors forcement nproche=0 dans
	cdmRunwidget.cpp
12) Erreur dans ifdda.m sur y et z.


--------------------------------------------------------------
	version 0.5.0 (fftw+hdf5)

1) Ajout de sauvegarde hdf5 et modification de matlab en
	consequence et de tres nombreuses routines et de l'interface.
2) Ferme hdf5 quand option que dipole.

------------------------------------------

	version 0.4.8 (fftw) et cdm-0.3.15 (ffts)

1) changement de nom pour la microscopy ds le menu deroulant.
2) Ajout de l'option Save as.
3) Correction bug en reflexion bf et df.


------------------------------------------

	version 0.4.7 (fftw) et cdm-0.3.14 (ffts)

1) Ajoute option pour calculer l'image à travers un microscope en reflexion.
2) Correction de ifdda.m pour voir titre en entier.
3) Correction fourierimage2.f for ffts.
4) Write un peu mieux écrit.
5) correction matrice de roation avec gross.
6) arbitrary ne passe pas par le test nnnr
7) arbitrary saute definition epsilon
8) correction facteur sqrt(gamma/gamma') pour holography et  microsansinc.
9) correction facteur sqrt(gamma/gamma')+ rotation remis a neuf pour microbf
	et microdf+ ajout tmp dans openmp pour cdmlib et microsansinc
10) permutation fourierimage pour inverser les images et bien etre comme un microscope.
11) nstop a zero des le debut
12) rajoute pola modifiee pour les spheres.

-------------------------------------------

	version 0.4.6 (fftw) et cdm-0.3.13 (ffts)

1) création d'une interface simple, sans fichier écrit avec calcul automatique
	de la taille de la fft si necessaire.
2)  -w dans gfortran pour ne pas avoir les warning.
3) nettoyage du C++ pour avoir moins d'écrit (INFO en DEBUG).
4) nettoyage du fortran et refait présentation sorties.
5) verifier cette ligne:
quickdiffractCheck == 1 || nprocheCheck > 0 || microscopyFFTCheck == 1 || nenergieCheck. changement fait.
6) Correction sur QMRCLA ou les plans FFT etaient oublies.
7) ajout zlens dans main.f
8) création de deux branches fftw et ffts avec singleton pour
	faire un chaneglog commum
9) ajout arret dans matlab file si fichiers absents.
10) GPBICGplus ajoute.
11) ajout arret dans bf et df
12) ajout grisage de l'onde incidente quand bf et df choisis.



-------------------------------------------

	27/07/18 : version	0.4.5


1) bug dans cdmOptionsWindow pour cuboid meshsize
2) bug OMP dans private pour le champ local.
3) changer titre et mis version dans le nom a jour
4) mis à jour doc en pdf.
5) openmp dans les objets pour initialisation
6) correction titre matlab microscopy.
7) pour le calcul du champ local, remet la valeur incidente pour l'objet.
8) ajout de la possibilite de regler la position du foyer de la lentille.
9) élargissement des champs pour la microcopie.


---------------------------------------------
	27/06/18 : version 0.4.4

1) Ajout de routine brightfield
2) Mise de microscopie comme menu principale.
3) Dans cdmlib ajout de numaperinc et ntype micro.
4) ajoute de dark field et phase
5) changement menu car pas de fourier pour df et bf.
6) erreur init de FFT2D vectx au lieu de imagex.
7) correction unite dans legende
8) arret nnnr si ni cuboid2 et inhomocuboid2 et randomsphere2.
9) ajoute critere arret si nxm,nym et nzm trop petit dans le cas
	cuboid2 et inhomocuboid2 et randomsphere2.
10) objet avec sphere arret si trop grosse et a/2 si trop petite.
11) bf et df en openmp.
12) dipole corrige pour l'interaction avec microscopy.
13) mise option quick microscopy active par defaut.
14) ifdda ajoute pour ntypemic.
15) brightfield et darkfield deltak fixe aussi par la FFT.
16) Correction ondeplanekxky mis en accord avec ondeplane
17) creation ondeplanecirc en kx,ky
18) diffract2dinc change pour les ondes planes. On prend au plus proche.
19) Changement convention ondeplane pour theta et -theta comme
	ondeplanekxky et changement pour les dérivées aussi
20) bug sur wavelinearmulti corrigé.
21) ajout et modif de main.f
22) Correction bug : champ proche + brightfield oblige a
	recalculer tenseur et pola.
23) Correction bug. force + brightfield pb. Recalcul tenseur et force avant.
24) Ajoute arret si pas assez de FFT pour dark bright field.
25) change texte pour antenne
26) correction pour que iffda prend en compte bf et df.
27) correction dans microdf pour deltak avec nfft2d.
28) rajoutte return pour nstop =1
29) deltakroutine k0 au lieu de 1
30) pour bf pour ne pas etre au dela de 1 pour AN deltakroutine

	----------------------------------------------------------

	7/05/18 : version 0.4.3


1) suprression du factor235 partout car FFTW s'en moque.
2) Changement nxm, nym, nzm base sur nxm=nnnr+2*nxmp.
3) bouton rouge pour start.
4) mis en gras des titres pour plus de visibilité et des sous titres.
5) Rajoute des unites de nm.
6) Supression de la routine factor235
7) Changement nom pour le menu microsocpy.
8) Beam liste  avec des noms explicits.
9) Object Liste noms explicits.
10) Passe nxmp,nymp et nzmp en argument.
11) cuboid2 objet fait.
12) enleve signe moins de xy() car marche pas pour le plot et
	decalle le zero.
13) cuboid2 ajoute dans relecture.
14) si arbitrary object alors utilise le fichier pour definir taille max.
15) rajoute random spheres en reglant meshsize en QT et fortran
	(nouvelle routine+cdmlib.f + relecture changes).
16) rajoute cube inhomo en nxnynz dans le fortran (routine+cdmlib et relecture).
17) rajoute cube inhomo dans le QT.


----------------------------------------------------------

	12/03/18 : version 0.4.2

1) Ameliore le README.


----------------------------------------------------------

	12/03/18 : version 0.4.1

1) suppression 	 des lignes avec fac=1
2) Correction bug sur gaussian fft avec fac mal mis.
3) suppression bug dans appel fftw pour boite wf
4) termes plus explicites dans interface graphique.
5) correction fftw le 1/n oublie pour beampropagation
6) interpolation poynting refaite.
7) Correction calcul lent prepresentation du champ
8) ajout du grossissement dans le calcul de l'image.
9) correction dans openmp sur calcul champ diffracte

----------------------------------------------------------

	14/01/18 : version 0.4.0
1) RAF: passe toutes les FFT avec FFTW sauf gaussianchampdfft
2) supression de zfft 2d et 3d et kernel et produitfftmatvect2.f
	dans cdmlib.pro
3) Parallelisation de gaussian et gaussiand
4) correction sur objets inhomogènes pour FFTW.


----------------------------------------------------------
	10/01/18 : version 0.3.7
1) RAF: RUN_TBL "table run_tbl has 32 columns but 33 values were
	supplied Unable to execute statement: corrige.
2) RAF: nstop passe dans inverserig et son opt.
3) Correction sur calcul lentille pour les options.
4) parallelisation de force et couple.
5) Correction bug dans openmp pour loop sur force
6) Rajoutte intensity pour plot sur microscopie dans Qt et ifdda
7) Supression d'une erreur sur cdmPlot.cpp
8) Oublie de k0 carré dans FFT Poynting.
9) openmp pour computegcfft2d.
10) nettoyage write


----------------------------------------------------------

	19/12/17 : version 0.3.6

1) Ajoute option pour ne pas ecrire les fichiers .mat et aller
	plus vite sans stocker. Du coup changement de beaucoup d'appel.
2) Passage du calcul image par Fourier en routine. Plus de FFT
	dans cdmlib.f.
	liste routines qui contiennent FFT:
	beampropagation
	beampropagationmacro
	calculforcefft
	calculforcefftopt
	calculgreenfft
	calculgreenquadfft
	derivativefield2
	diffractefft2denergie
	diffractefft2d
	diffractefft2dinc
	diffractefft2dlens
	fouriertoimage
	gaussiandfft
	gaussianfft
	objectinhomo
	objectparainhomo
	produitfftmatvect2
	produitfftmatvect3
	produitfftmatvectopt


---------------------------------------------------------
	18/12/17 : version 0.3.5

1) Création de deux sous routine inverserig et inverserigopt pour
	faire l'inversion rigoureuse hors cdmlib.f et optimiser ou non
	suivant l'option nproche.
2) produitfft passe en OMP propre inverserig.f et inverserigopt.f,
	ainsi que gpbicg.f, gpbicg2.f, gpbicgar.f, gpbicgar2.f,
	gpbicgsafe.f, gpbicor.f, BICGSTARPLUS, CORS, TFQMR, CG,
	QMRBICGSTAB, QMRCLA, BICGSTAB, beampropagation.f,
	beampropagationmacro.f, derivativefield2.f,
	diffractefft2denergie.f, diffractefft2d.f, diffractefft2dinc.f,
	diffractefft2dlens.f, gaussiandfft.f, gaussianfft.f
3) Changement appel qmrpim pour pouvoir paralleliser.
4) Erreur dans diffracte2energie sur la verification si il y a
	beaucoup d'energie en dehors de l'ouverture numerique
5) cdmlib.f passer en parallel sur certains passages
6) grossissement pour les pixel images avec signe -.
7) Prise en compte de l'ouverture numerique pour la lentille quand
	calcul deja fait pour section efficace.
8) Mise a zero dans cdmlib.f pour mise en forme de boucle pour paralleliser.
9) parallelisation du calcul des fonctions de Green dans cdmlib.f
10) mise en routine calcul fonction de Green et sa FFT en fonction
	de nquad.
11) Evite d'utiliser vectx,y,z (remplace par DFFTENSORxx,yy,zz
	dans derivativefield) et du coup fait le calcul qu'une fois de
	vectx,y,z.
12) Mise du calcul de la FFT du champ pour calcul de force en
	routine avec optimise et non optimiser suivant na proche.
13) Ameliore affichage section efficace si pas absorbtion.
14) Incidents passes en parallele sauf gaussian à cause des commons.


--------------------------------------------------------- 11/12/17
	: version 0.3.4


1) Ajout d'une condition manquante pour ne pas refaire le champ
	diffracte.
2) Ajout et mise a jour userguide francais.
3) cdmOptionsWidget.cpp pour ternir compte quand emissivity est
	choisie et la retenir: if (crosssection->isChecked() ||
	crosssectionpoynting->isChecked() || microscopy->isChecked() ||
	nenergie->isChecked() )
4) Rajoute methode Bicgstarplus.
5) Transforme la position du faisceau gaussien en metre
6) Nettoyage fortran


	grossissement pour les pixel images avec signe -?

---------------------------------------------------------

	7/11/17 : version 0.3.3

1) diffractefft2denergie : ne refait pas le calcul si c'est deja
	fait par diffracted2d.f stocke le champ incident dans Eloin.
2) Dans cdmlib.f pour la lentille. Ne refait pas les calculs déjà
	faits.
3) Ajout de gfft pour calculer avec le champ diffracte avec le
	champ incident.


---------------------------------------------------------


	30/10/17 : version 0.3.2

1) suppression de l'écriture disque pour la dérivée
	du champ pour les anciens faisceaux gaussiens
	pour mise en mémoire dans wrk.
2) Dans gaussianchampfft pour champ large remplace FF0 par xr.
3) Dans gaussianfft erreur argument sur circ.
4) routine derivechamp ajouter.
5) ajout de calcul force pour gfftwave.
6) ajout de beam gfft dans relecture.f
7) ajout arret pour fft gaussian si theta trop fort.
8) cdmRunWidget.cpp supprimer les égalites entre double
	precision.


---------------------------------------------------------

	16/10/17 : version 0.3.1

1) Supprimé beampropagation.fsv2
2) Gaussian beam avec fft ajoutée, y compris dans les menus et
	dans la doc.
3) Changement epsilon initial pour etre sous Born.
4) Standard deviation et coherent length declarer en entier quand
	on faisait un load. Passer en double!!
5) Bug dans gfftwave sur la premiere couche.
6) Ajout dans gaussian rigoureux d'un test pour ne pas calculer si
	le champ est tres faible. Test base sur le faisceau paraxial
	analytique.
7) Large boite avec fftgaussian geree.

---------------------------------------------------------
28/09/17 : version 0.2.39=version 0.3.0


1) Arrete bpm si paraxiale utilisé.
2) supression de Open file et Save file qui ne servaient pas.
3) ajout de inhomogeneous cuboid dans le userguide.
4) supprime doc/cmd-0.2.7-FR.pdf
5) changement initial RR, ntheta, nphi,na,gross et nquad=0


---------------------------------------------------------
26/09/17 : version 0.2.38


1) relecture.f un format faux sur wavelinearmulti
2) rajoute objet randomsphere dans relecture.f
3) rajoute methode de calcul du champ dans relecture.f
4) ajout arret si multiwavelength pas d'amplitude.
5) relecture.f pour arbitrary object et beam
6) Correction bug sur concentric sphere relecture.
7) Ajout de détails dans la doc et des choses oubliées ajoutées.
8) Ajout menu pour la version anglaise de la doc.
9) ajoute routine objet cuboid inhomogene et cdmlib.pro
10) Ajout des menus du a inhomocuboid.
11) relecture.f ajout de inhomocuboid.
12) correction de sphere seed en cuboid seed.


	---------------------------------------------------------
12/06/2017: version 0.2.37

1) RAF: passe BPM champ macro et champ local ajout des deux routines.
2) RAF: ajoute arret si nnnr > nxm,nym,nzm
3) RAF: dans inhomogenous dble sur entier.
4) RAF: density ou nombre de sphere, les deux sont admis.
5) RAF: ajout d'une methode iterative CORS+openmp
6) RAF: correction parallelisation openmp pour gpbicg.f
7) RAF: supression de cdmRunThread.cpp qui ne servait pas.
8) RAF: correction character mal faits pour pola.


------------------------------------------------------
12/06/2017: version 0.2.36


1) RAF: refait les closes juste après ecriture au lieu de tout à la
	fin : evite de reeecire et de passer deux foix dans le tableau.
2) RAF: Taille FFT mini a mettre pour lentille et inc avec FFT:
	retour erreur.
3) RAF: rangement xy refait pour methode lente.
4) RAF: ajout approximation de Born, Rytov, rytov normalisé, Born
	ordre 1 et BPM.

------------------------------------------------------

03/02/2017: version 0.2.35

1) RAF: main.f retire les tableaux de force et couple.
2) RAF: changement de place calcul par Mie pour etre cohérent avec la demande.
3) RAF: réarrange texte de sortie sur la fenetre interactive.
4) RAF: comparaison à Mie pour force et couple
5) AV: aniso (anisotrope) passé en ani pour etre a 3 caractères comme iso.
	Sinon j'avais un core qui se créait et un plantage du code.
6) AF: ani ne marche pas (anisotrope). Quand on rempli tout le tableau
	(les 9 lignes) seule la première ligne est sauvée. Les autres sont
	mises à zéro. - OK bug of array correspondence between c and
	fortran corrected; new arrangement epsani(3,3,numberobjet)
	cdmlib.f,objectnsphere.f,objectsphereconcentric.f,relecture.f and
	main.f adjusted with new arrangement - To be checked
------------------------------------------------------

19/01/2017: version 0.2.34

1) RAF: modification de la boite de Dialog sur Beam. enlever ssm


------------------------------------------------------

19/01/2017: version 0.2.33


1) RAF : manque k0 carré dans le poynting pour Emod dans cdmlib.f
2) RAF: k=0 au ieu de k=1 pour définir deltakx dans cdmlib.f
3) RAF:  ctmp1=-cdexp(-icomp*kz*zs(kk))*cdexp(-icomp*(var1
	$ *dble(i)+var2*dble(j)))/(-2.d0*pi*icomp*kz)
enlever le signe - pour ctmp1 dans diffractefft2dlens.f


------------------------------------------------------
19/01/2017: version 0.2.32

1) AV: rajouter dans cdmlib/Makefile les deux routines
	ondeplanemulti.f et ondeplanedmulti.f qui manquaient. - OK rajouté dans cdmlib.pro
2) AV: query.exec("insert into wavemulti_tbl values ('new',0,0,0,0,0,0,0)"); - OK
	mis à la place de ('new',0,0,0,0,0,0)"); il manquait un zéro a priori.
3) Q: pourquoi MAX_OBJECT_NUMBER est défini dans cdmRun.h et pas
	MAX_WAVEMULTI_NUMBER? - OK retiré dans cdmRun.h (doublon)
4) AF: lorsque l'on fait New, les valeurs ne sont pas
	initialisées à ce qui est marqué dans le code...je n'ai pas vu
	d'autres problème que celui d'haut dessus: point 2.
5) AF:  Le bouton save ne marche pas. Ca marque "Enter a valid name".

	-------------------------------------------------------
18/01/2017: version 0.2.31

1) RAF: supprimé les tableaux force et couple dans cdmlib.f
	cdmlib.h et les tous les autres: gain de taille mémoire.
2) RAF: arret ajouté pour section efficace avec onde plane.
3) RAF: Change QMR en QMRCLA
4) RAF: rajouté valeurs dans menu FFT
5) RAF: modification des noms: module en modulus, etc
6) RAF: Correction phase dans fichier matlab.
7) RAF: correction facteur 2 i pi gamma toujours positif
	quelque soit le sens de propagation dans diffractefft2denergie.f
8) RAF: ajoute la possibilité de faire un éclairement en onde multiple.
	ajout de ondeplanemulti.f et ondeplanedmulti.f et change cdmlib.f
	en conséquence avec modification de relecture.f, diffracte2dinc.f
	et diffracte2denergie.f et main.f.
9) AF: J'ai rajouté un faisceau qui est constitué de multiples
	ondes planes appelé wavelinearmulti. Dans cdmlib/Makefile j'ai
	rajouté ondeplanemulti.f et ondeplanedmulti.f. Après c'est un peu
	compliqué pour moi.

Dans cdmlib l'appel est changé en ajoutant une ligne insérée entre
les données de l'onde plane et infostr comme suit:
	....
c     planewavecircular.in / planewavelinear.in files
	$ theta, phi, pp, ss, P0, w0, xgaus, ygaus, zgaus,namefileinc,
c     ondeplane multiple
     $     thetam, phim, ppm, ssm,E0m,nbinc,
c     return info stringf
	$     infostr, nstop,
	....

	Il faut donc, quand dans le menu faisceau, on choisi
	wavelinearmutli avoir la possibilité de rentrer le nombre d'ondes
	planes voulu
	(entre 1 et 10) avec leur angle theta et phi, polarisation pp et
	ss, (comme wavelinear) ainsi que l'amplitude complexe de chacune
	des ondes.
	A noter que thetam, phim, ppm, ssm, E0m sont de tailles 10 dans le
	code, et c'est fixé en dur. Il faut donc faire de même dans ta
	partie.	thetam, phim, ppm, ssm double precision et E0m double complexe. --OK

-------------------------------------------------------
16/12/2016: version 0.2.30

1) RAF: changé main.f pour mettre l'efficacité.
2) RAF: changement nproche si nenergie demandée pour pouvoir utiliser FFT.
3) RAF: corrige nstop après FFT diffracte.
4) RAF: rajoute arret emissivité et lentille si beam antenna ou arbitraire.
5) RAF: arrets faits pour les options nenergie et nlentille si mauvais coté.
6) RAF: arrets ajoutés si calcul avec integration FFT fait avec
	angle trop fort car imprécis (section efficace et nenergie).
7) RAF: resolu le pb de calcul beam gaussien pour z=0 pour les
	FFT. Plus rapide maintenant.
8) RAF: rajouté calcul par Mie series si sphere et erreur en pour cent.
9) RAF: rajoute arret, si trop d'energie en dehors de l'ouverture
	numérique, alors on ne calcule pas l'emissivité.


-------------------------------------------------------
13/12/2016: version 0.2.29

1) RAF : nnnr descendu pour etre facteur de 2, 3, 5 dans objetnspheres.f
2) RAF : nzm a la place de nz dans calcul fonction de Green, boite champproche.
3) RAF : changé le main.f correspondant pour nombre objet max égale
	à nombre objet.
4) RAF : cdmlib.f: nenergie =1 supprimé et rajouté dans le
	"No calculation requested"
5) AF: Quand l'option nenergie est cochée, dans le fortran
	nenergie reste toujours à zéro. Pas vu d'erreur dans le C à part
	la ligne options->setNenergie(nenergie->isChecked()); dans
	cdmOptionsWidget.cpp qui est doublée trois lignes plus bas.  Par
	contre quand l'option nenergie est mise c'est nquicklens qui est
	mis à 1 et quand nquicklens est cochée cela ne fait rien... -- Corrigé

6) AF: nproche changé au lieu de -1, 0 et 1 on a un shift sur 0,
	1, 2, c'est à dire plus 1 sur chacun. --OK

7) Q: il faut que nxm, nym et nzm soient mutliples de 2,3 et
	5. Quand je le fait dans le code (en décrémentant), ça marche bien
	mais dans le cas de la représentation du wide field en champ
	proche y a un truc qui déconne. Par exemple si je mets nxm=11,
	dans le code fortran je passe à 10 (avec une variable
	intermédiaire) mais dans le wide field il me garde 11 pour
	représenter le champ pour 11 coupes avec une vide et je ne vois
	pas trop pourquoi. On a bien xcwf associed au champ en wf avec la
	même taille.


-------------------------------------------------------
13/12/2016: version 0.2.28

1) AF: Sphere inhomogene: ne sauve pas la deviation standard quand on
	sauve dans un fichier. -- OK
2) AV: Dans cdmRunWidget.cpp j'ai changé : char polarizability[2], char
	methodeit[12], char anisotropy[3] pour être en accord avec la
	taille déclarée dans cdmlib.f. --OK
3) AV: Dans cdmRun.cpp j'ai changé malloc et déclaration de la
	taille des variables pour: forcexmulti, forceymulti, forcezmulti,
	torquexmulti, torqueymulti, torquezmulti. Taille de nombre_objet
	et non de nombre_objet*nmax (nmax était le nombre de maille
	maximum, il y avait donc un fort désaccord de taille). Maintenant
	en accord avec cdmlib.f et beaucoup moins de core. -- OK
4) RAF: ajout pour le calcul du champ diffracté avec champ incident:
Changement de calcul pour Eimage + incident. C'est maintenant juste...
5) AV: ajout dans cdmlib/Makefile et cdmlib.pro de la
	routine diffractefft2dinc.f.   -Ok only cdmlib.pro is sufficient
6) AV: ajout du plot du champ diffracté + incident pour l'option microscopie
	dans la représentation avec modification de : cdmlib/cdmlib.h,
	cdm/cdmRunWidget.cpp, cdm/cdmRun.h, cdm/cdmRun.cpp,
	cdm/cdmlib.f. ça rajoute une ligne dans le menu microscopie pour
	les plots après scattered field et avant image et image +
	incident. J'ai du rajouté les tableaux dans le passage des
	arguments de cdmlib.f ainsi que dans cdmlib.h et changer le menu. -- OK
7) RAF: Changement de main.f pour mettre fourier avec incident en
	accord avec point 6.
8) RAF: Correction du rangement de la FFT dans diffracte2dfftinc.f
9) RAF: rajout du champ incident au diffracte quand le calcul est fait  par
	la methode lente.
10) Q: Dans les plots des forces et couples la longueur des flèches n'est
	pas linéaires avec les valeurs. Là il faudra surement se
 	télephoner pour se comprendre, mais j'ai l'impression que la
	longueur des flèches ne respecte pas toujours la valeur des
	nombres dans le fichier comme si il y a avait un auto scale?
        -- Oui, il y a un facteur grossissant pour voir les fleches, sinon on verrait des points.
11) AV : diffractefft2denergie.f rajouté dans Makefile et cdmlib.pro --Ok only cdmlib.pro is sufficient
12) Q : Quand on relance le code plusieurs fois de suite est ce
	que la RAM s'accumule?
        -- Non il y a une fonction cleanVectorsMemory a chaque appel de nouveau calcul
13) RAF: oublie k0 carré dans diffracte2d energie et lens.
14) AF : j'ai rajouté un calcul d'efficacité.
	option nenergie (0 ou 1) si 1 alors on ressort les variables associées:
	efficacite,efficaciteref,efficacitetrans. Il faut créér une box
	entre section efficace et microscopie avec pour titre Emissivity:
	Pour la sortie il faut écrire sous les sections efficaces:
	reflectivity (valeur de efficaciteref)
	transmitivity  (valeur de efficacitetrans)
	Absorptivity (1-efficacite) -- OK

	du coup cdmlib.f est changé comme:

cdmlib(
c     input file cdm.in
     $     lambda,beam,object,trope,
     $     materiaumulti,nnnr,tolinit,methodeit,polarizability,
     $     nquad,nlecture,filereread,
c     output file cdm.out
     $     nlocal,nmacro,nsection,nsectionsca,nquickdiffracte,nrig,
     $     nforce,nforced,ntorque,ntorqued,nproche,nlentille,nquicklens,
     $     nenergie,nobjet, !!!!!!!!!!!!! nenergie est placée ici !!!!!!!!!!!!!
c     cube, sphere (includes multiple)
     $     side, sidex, sidey, sidez, hauteur,
     $     numberobjet, rayonmulti, xgmulti, ygmulti, zgmulti,
     $     epsmulti, epsanimulti,lc,hc,ng,
c     ellipsoid+arbitrary
     $     demiaxea,demiaxeb,demiaxec,thetaobj,phiobj,psiobj,
     $     namefileobj,
c     planewavecircular.in / planewavelinear.in files
     $     theta, phi, pp, ss, P0, w0, xgaus, ygaus, zgaus,namefileinc,
c     return info stringf
     $     infostr, nstop,
c     return scalar results
     $     nbsphere, ndipole, aretecube,
     $     lambda10n, k0, tol1, ncompte, nloop,
     $     efficacite,efficaciteref,efficacitetrans, !!!!!!!!!!!!! efficacite !!!!!!!!!!!!!
     $     Cext, Cabs, Csca, Cscai, gasym, irra, E0,
     $     forcet, forcem,
     $     couplet, couplem,
     $     nxm, nym, nzm,
     $     incidentfield, localfield, macroscopicfield,
     $     xs, ys, zs, xswf, yswf, zswf,
     $     ntheta, nphi, thetafield, phifield, poyntingfield,
     $     forcex,forcey,forcez,forcexmulti,forceymulti,forcezmulti,
     $     torquex,torquey,torquez,torquexmulti,torqueymulti,
     $     torquezmulti,
     $     incidentfieldx, incidentfieldy, incidentfieldz,
     $     localfieldx, localfieldy, localfieldz,
     $     macroscopicfieldx, macroscopicfieldy, macroscopicfieldz,
     $     polarisa,epsilon,
     $     nfft2d,Eimagex,Eimagey,Eimagez,Eimageincx,Eimageincy,
     $     Eimageincz,Efourierx,Efouriery,Efourierz,Efourierincx,
     $     Efourierincy,Efourierincz,kxy,xy,numaper,gross, !!!!!!Efourier + inc  point avant !!!!
c****************************************************
c     tableaux utilises que dans cdmlib
c****************************************************
c     taille double complex (3*nxm*nym*nzm)
     $     FF,FF0,FFloc,xr,xi,
c     taille double complex (3*nxm*nym*nzm,12)
     $     wrk,
c     taille double real (nxm*nym*nzm,3)
     $     force,couple,
c     taille double complex (8*nxm*nym*nzm)
     $     FFTTENSORxx, FFTTENSORxy,FFTTENSORxz,FFTTENSORyy,FFTTENSORyz,
     $     FFTTENSORzz,vectx,vecty,vectz,
c     taille double complex (nfft2d,nfft2d,3)
     $     Ediffkzpos,Ediffkzneg,
c     taille entier (nxm*nym*nzm)
	$     Tabdip,Tabmulti)

15) RAF: changement des tableaux forcexmulti, forceymulti, forcezmulti,
	torquexmulti, torqueymulti, torquezmulti dans cdmlib.f pour etre
	en accord avec le C.
16) RAF: rajouté stop si éclairement du mauvais côté pour lentille et énergie.
17) AV: pourquoi nread et gross pas initialisés dans cdmOptions.cpp? je l'ai fait.
	Des fois les valeurs étaient excentriques au demarrage. -- OK
18) AV: j'ai rajouté un menu pour pouvoir choisir la taille de la
	FFT pour l'option champ lointain et microscopie.  La variable
	s'appelle logiquement nfft2d et j'ai rajouté le menu
	associé. C'est là que j'ai le plus modifié, ça compile et ça
	marche mais j'ai pu faire des erreurs. -- OK
19) AF: Quand on choisit QMR dans les méthodes iteratives (avec le
	menu déroulant) est ce possible d'associer à ce choix QMRCLA sinon
	on change QMR pour QMRCLA. -- Prendre l'option QMR --> QMRCLA (faire simple)
20) RAF: si nfft2d petit (delta k trop grand) problème de
	représentation pour Poyting car trop peu de point: ajout d'un
	arrêt. -- Pour nfft2d= 128 ou 256, il n' y a pas de representation des resultats (est-ce lie a ca ?)


A faire:- corriger le dipole pour le champ lointain: moi+ Anne.
	- point 15+3 changer le main correspondant pour nombre objet
	max:moi.
	- nxm,nym et nzm si non multiple de 2, 3 5 à faire dans
	cdmlib.f : moi


-------------------------------------------------------
30/11/2016: version 0.2.25

1) RAF: Nettoyage des routines des variables muettes.
2) RAF: supprimer produitfftmatvect2.f dans cdmlib.pro
3) RAF: Ajout d'un arret dans les routines qui utilisent tabfft2
4) RAF: mis a jour de relecture.f pour prendre en compte le nouvel objet
et eclairement antenne.
5) RAF: correction bug dans cuboid.
6) RAF: ajout d'un arret sur nx, ny et nz si inférieur ou égal à 1.
7) RAF: oubli d'une iteration pour certaines methodes iteratives.
8) RAF: Change pour relecture pour mettre dipole et champ local.
9) RAF: Correction bug sur test pola anisotrope.
10) RAF: correction bug sur CR au lieu de RR dans routine pola.
11) RAF: ajoute un arret si epsilon anisotrope pour sphere inhomogene.
12) RAF: rajout calcul de l'intensité I0 à la position de l'objet
	quand l'éclairement est en antenne.
13) RAF: Changement de qqs noms dans le cdmRunWidget.cpp pour être
	plus clair.
14) RAF: changement tabdip
15) FAIT : Attention problem.opt ne sauve pas correctement le nspheres, il
	faut le passer à 2 objets, car par défaut il est sauvé à 1 même si
	les paramètres des deux sont sauvés: Ca on en a discuté ensemble,
	c'est le nombre d'objet qui n'est pas passé correctement
16) RAF: création d'un fichier pour charger les options prises sous matlab.
17) RAF: modification de l'ecriture pour de nombreux fichiers
	matlab pour rendre le tout cohérent et plus simple.
18) RAF: changement tabdip aussi pour force et couple.
19) RAF: rajout de fichier de sortie matlab pour l'image et fourier et
optimisation de la taille de fourier pour aller plus vite sous matlab.
20) RAF: bug dans objetnspheres sur test.
21) RAF: création d'un fichier matlab ifdda.m pour tracer les fichiers .mat
22) RAF: Changement de incidentfield et ses composantes pour etre en accord
	avec le fait de ne plus utiliser tabdip dans la representation des
	champs.
23) RAF: Correction bug dans ecriture de epsilon.mat
24) RAF: bug sur initialisation de yg pour le couple.
25) RAF: rajout antenna pour la calcul des forces.
26) RAF: correction facteur 1/(4 pi) qui manquait dans routine dipoleincder.
27) RAF: correction bug sur BICGSTAB
28) RAF: correction sur TFQMR
29) corriger QMRCLA
30) RAF: change le cas avec lentille slow method pour comme la
	FFT, sauf si pas assez de points ou l'on augmente d'un facteur 2
	jusqu'a valeur suffisante pour etre assez discretisee.
31) RAF: rajoute un arret si grossissement plus petit que 1.
32) RAF: ajoute un arret si tolerance trop petite ou trop grande.
33) RAF: changement message si probleme lors du reread d'un fichier.
34) RAF: arret si nxm, nym ou nzm pas multiples de 2, 3, 5. peut etre a remodifier.
35) RAF: modification de objet para, ellipse et cylindre
	pour optimiser au mieux la place et ne faire qu'autour de l'objet
	+ ajout arret si nx,ny nz au dela de la limite.
36) RAF: fait en sorte que les .mat marchent pour matlab et pour
	la représenation graphique dans le C.
37) RAF: modification de kxy pour faire matlab et le C++ pour
	représenter fourier.

--------------------------------------------------------------------------
11/10/2016  : version 0.2.24

1) RAF: Correction dans certains objets pour verifier si la
	discretisation est bien multiple de 2, 3, 5.

2) RAF: corriger x1,y1 z1 initialisation mour min et max

3) RAF: Correction quand nnnr est change en le decrementant au
	lien de l'incrementer

4) Pour la discrétisation on a un bouton check Epsilon/dipoles.
	Serait il possible de faire deux boutons séparés cote a
	cote. Check dipoles on ne change rien, et check epsilon par contre
	le changer en proposant différentes coupes comme pour le champ
	macro et local (ça a la même taille). Comme c'est un tenseur, on
	pourrait avant demander la composante du tenseur. Ca permettrait
	de voir comment c'est inhomogène pour le epsilon.

--------------------------------------------------------------------------
05/09/2016  : version 0.2.24

1) Rajouté une nouvelle routine d'incidence nommée dipoleinc.f,
avec comme entrée la position de l'émetteur xdip,ydip,zdip et son
orientation theta et phi. Rajout aussi de la routine dipoleincder.f
xdip,ydip,zdip passent par xgaus, ygaus et zgaus pour ne pas
augmenter le nombre d'arguments -- OK added antenna in beam menu

2) rajout d'un objet, sphere non homogene objectinhomo.f avec comme arguments:
hc, lc, epsback pris sur xg,yg,zg pour ne pas augmenter le nombre
d'argument. ng est un entier, qu'il faudrait pouvoir choisir (ca
definit la graine) -- OK  added inhomo sphere object with seed, hc, lc
properties

3) rajout de random.f -- OK

--------------------------------------------------------------------------
27/04/2016  : version 0.2.23

1) RAF: rajoute un arret si pas assez de point pour la FFT de la lentille.
2) RAF: rajoute un arret si pas assez de point pour la FFT de Poynting.
3) RAF: si champ incident par au dessus alors on ne le prend pas
	pour la lentille.
4) RAF: open MP pour produitmatvect3.f diffractefft2d.f diffractefft2dlens.f
plus nettoyage des routines.
5) RAF: openMP  cdmlib.f en partie, gpbicg.f, derivativefield2.f
6) RAF: correction signe sur diffracte lens par FFT pour le facteur d'apodisation.
7) RAF: correction sur decallage de 1 pour la FFT dans l'espace image.
8) RAF: correction bug dans epsilon de objet arbitraire.
9) RAF: correction bug dans calcul du champ à travers la lentille: erreur de sens dans la FFT.
10) RAF: rajouter dans la doc que arbitrary beam est suppose se propager dans les z positifs pour la lentille et contenir le plan z=0.
11) Rajouté produitfftmatvectopt.f pour aller plus vite dans le cas de la boite wf. permet de supprimer le tableau tabdipwf.
12) Suppression de derivativefield.f qui ne sert plus (remplace
	par la version 2)
13) Rajout d'une methode iterative GPBICOR: ajouter a la cimpilation gpbicor.f
	et dans la liste des methodes proposees  GPBICOR.
14) RAF: Correction bug sur QMR qui ne prennait pas le QMRSTAB...
--------------------------------------------------------------------------
20/04/2016  : version 0.2.22

1) lib fortran with openmp sections added
2) Add openmp flags in cdmlib.pro and cdm.pro
--------------------------------------------------------------------------
16/03/2016  : version 0.2.21

1) RAF: modification de relecture pour prendre en compte les
nouvelles variables.
2) RAF: modification de relecture pour corriger un probleme sur les chaines
de caracteres.
3) Quand on trace le champ incident est que celui-ci est constant (onde plane)
alors le plot ne donne rien...probleme de bornes identiques je pense.
4) RAF: qqs close (Poynting) oublies a la fin de cdmlib.f.
5) RAF: Update routine FFT, gain 10% en temps.
--------------------------------------------------------------------------
22/10/2015  : version 0.2.20

1) RAF : Changement dans cdmlib pour eviter la redondance d'appel
pour la fonction de Green
2) RAF: changement dans cdmlib  pour le choix de la fonction Green, pour
travailler sur des entiers car plus rapide.
3) RAF: modif dans la liste de quad pour rajouter le zero dans cdmOption.cpp
4) RAF: modif dans main.f: ninteg en nquad
5) RAF: changement dans la liste des polas  de cdmOptions.cpp pour mettre
RR en premier.
6) qqs warning en compilant:
	src/qwt3d_lighting.cpp:178:48: attention : narrowing conversion of
	attention : variable ‘beg’ set but not used
-OK
7) Upgrade qwtplot3d ver.0.3.1 (special patch for colorlegend & POINTS display)
8) Upgrade qwt ver.6.1.2
-----------------------------------------------------------------------------
21/10/2015  : version 0.2.19

1)  ajouter la possibilité de choisir sa polarisabilite.
L'appel de cdmlib est change avec methode,integ de rajouter.
SUBROUTINE cdmlib(
c     input file cdm.in
     $     lambda,beam,object,trope,
     $     materiaumulti,nnnr,tolinit,methodeit,methode,integ,nlecture
Il faut rajoutter un menu deroulant après Nxm,Nym,Nzm,
Le menu deroulant, s'appelle, polarizability, et doit comporter:
'CM'
'GB'
'LA'
'RR'
'LR'
- OK
2) rajoutter a cote un autre menu deroulant qui s'appele quad. T
et qui renvoie sur un entier 0,1,2,3,4,5.- OK
3) RAF: corrections sur la routine de polarisabilité.
4) RAF: modification du calcul de l'espace libre pour pouvoir l'integrer,
relatif au choix sur la quadrature dans cdmlib.f
5) rajout de la routine suivante pour integrer l'espace libre:
	propaespacelibreint.f -OK
6) RAF: suppression de la routine cdmlibsurf.f qui n'a rien a faire ici.
-----------------------------------------------------------------------------
09/09/2015 : version 0.2.18

1) RAF: correction du grossissement dans le champ incident
2) RAF: un bug dans Efourier sur la lentille
3) RAF: nettoyage de difracte2dlens.f
4) RAF: bug dans objet arbitrary corrige!
-----------------------------------------------------------------------------
21/04/2015 : version 0.2.17

Modify to allow compilation on CentOS 6.6
-----------------------------------------------------------------------------
02/02/2015 : version 0.2.16

1) RAF: un bug du a une verif qui trainait dans la FFT.
2) RAF: nettoyage de cdmlib avec mise en forme des sorties en *,*.
3) RAF: rajoutte un test pour voir si objet en vide ou valeur de epsilon
pas rentree.
4) RAF: Rajout dans le guide utilisateur et d'un fichier de sortie.
5) RAF: Changement de calcul de l'image pour la microscopie pour inclure le
grossissement.
call cdmlib(....,kxy,xy,numaper,gross,...). OK
6) A cote de NA il faudrait rajoutter une case Grossissement ("magnification")
et a la place de Fourier plane: scattered field in far field et dans
le menu deroulant a la place de Fourier plutot Scattered field. OK
7) Correct few bugs related to DB save and load configurations.
-----------------------------------------------------------------------------
12/01/2015 : version 0.2.15

1) RAF: nettoyage et mise en forme de main.f
2) RAF: nettoyage de cdmlib.f
3)  j'ai rajoute une routine diffractefft2dlens.f pour calculer avec
FFT le champ a travers la lentille pour aller plus vite pour les gros objets.
il faut donc ajoutter une boite comme pour  Cross section+Poynting
pour le calcul rapide: variable associee nquicklens. L'appel de cdmlib a
donc changer:nquicklens=0 calcul lent si 1 calcul rapide avec FFT.
      call cdmlib(...
c     output file cdm.out
     $     nlocal,nmacro,nsection,nsectionsca,nquickdiffracte,nrig,
     $     nforce,nforced,ntorque,ntorqued,nproche,nlentille,nquicklens
     $     ,nobjet,....
OK- Correct a bug (remove FFTmp...)

4) j'ai rajoute une nouvelle methode iterative GPBICGsafe.f
nom: GPBICGsafe a mettre entre GPBICG2 et GPBICGAR dans le menu deroulant. OK
5) RAF: gpbicg.f un peu change pour accelerer
6) Correct bug in generating new option widget (refreshing default data)
-----------------------------------------------------------------------------
18/12/2014 : version 0.2.14

Memory optimization:
- remove Ederive(x,y,z)
- remove IncidentFieldwf(x,y,z), LocalFieldwf(x,y,z), MacroscopicFieldwf(x,y,z)
- Correct bug in plotting dipoles3D

-----------------------------------------------------------------------------
16/12/2014 : version 0.2.13

1) RAF: correction mineure de la RR de la polarisabilite si le background n'est
pas le vide. Pas utilisee pour l'instant mais necessaire si background
different de un plus tard.

2) Changement pour ameliorer la dimension de la RAM.
les vecteurs vectbx,vectby,vecbtz,b disparraissent.
produitfftmatvect3 remplace 	produitfftmatvect2 (gagne un peu de temps)
derivativefield2 remplace 	derivativefield (perd un peu de temps)
La taille maintenant en RAM est de 202*N: on gagne 10%!
OK. Removed vectbx,vectby,vecbtz,b and update cdmRun accordingly.
In addition: - add memset for each malloc to reserve memory
             - cleanup plot memory when leaving tab widgets
For now memory tests takes about 430MB for nmax=50
-----------------------------------------------------------------------------
15/12/2014 : version 0.2.12

1) cdmRun.cpp, cmdRunWidget.cpp:Move allocation of cdmlib internal
   variables in the C++ code (heap).
2) cdmRun.cpp: Calculate system available memory and calculate needed memory.
   if mem_available * 0.9 < mem_needed, abort calculation. To be tested.
-----------------------------------------------------------------------------
21/11/2014 : version 0.2.11

1) cmdRunWidget.cpp: copy ntheta, nphi, nxm, nym, nzm internally
2) Update INSTALL process to have compatibility with qt_version <> 5
   and for Windows and Linux
-----------------------------------------------------------------------------
18/11/2014 : version 0.2.10

1) RAF: Pour le champ diffracte par le calcul rapide. Pour la representation
	graphique, interpolation bilineaire pour garder la meme facon de
	faire que dans le cas non rapide. Du coup on defini aussi ntheta
	et nphi dans ce cas.
2) RAF: Correction sur les routines de polarisabilite. Pas d'influence.
3) RAF: Ajouts sur calcul du champ diffracté par FFT et corrections de
	quelques fautes d'orthographe...
-----------------------------------------------------------------------------
07/11/2014 : version 0.2.9

1) RAF: Changement de dimension de thetafield,phifield,poyntingfield
	a cause de la possibilite de faire la fft. Dans la routine et le
	main. Mise a jour de l'allocation mémoire dans la partie C++. OK
2) RAF: Changement ordre de declaration pour declarer nfft2d
	avant son utilisation
-----------------------------------------------------------------------------
06/11/2014 : version 0.2.8

1) RAF: Refonte totale du calcul de l'image par la lentille, juste maintenant....
2) Bouton documentation en html 2 versions : francais anglais? TBD ...
3) Ajout d'une option pour calculer juste le champ diffracte par des FFT
	nquickdiffracte=0 bourrin et nquickdiffracte=1 par FFT.
	Il faut donc rajouter une petite boite a cocher a cote de la
	partie Cross section + Poynting (quick computation). OK
4) RAF: Correction d'un bug sur les arguments de main.f
5) RAF: Correction de très nombreux bugs dans gausskronrodpatterson
6) Ajout un choix multiple juste au dessus read local field file
	avec rigourous or renormalized Born.
	La variable est nrig=0, 1. OK
TBD:	non lineaire?
-----------------------------------------------------------------------------
23/03/2014 : version 0.2.7
1) Documentation en pdf appelée via le menu principal (Help)
TBD:    non lineaire?
        Born et Born renormalise?
-----------------------------------------------------------------------------
09/01/2014 : version 0.2.6

1) RAF: Message d'erreur dimension problem of the box quelque soit l'objet.
Rajout d'une ligne avec nstop dans le code pour plus de clarte dans le message.
2) RAF: Changement du calcul du champ diffracte dans section efficace de
diffusion et champ lointain lentille.
3) RAF: Prise en compte du champ incident a travers le microscope moyenant
certaines approximations, notamment que le champ incident au niveau de
l'observation est celui au plan de fourier objet de la lentille. Du coup
il y a maintenant trois images en sorti sur le microscope: Efourier, Eimage,
Eimageinc.
4) Rajouter une troisieme option image+incident en plus de fourier
et image dans le cadre de la microscopie. L'appel de la routine a ete change:

	Eimagex,Eimagey,Eimagez,Eimageincx,Eimageincy
	,Eimageincz,Efourierx,Efouriery,Efourierz,kxy,xy,numaper) -- OK
5) RAF: Correction sur l'origine de la frequence nulle pour la FFT et sa
normalisation pour obtenir l'image a travers la lentille.
6) Il manque quasiment toutes les legendes sur les axes des
plots.
	Far field
	image: x(m) et y(m)
	Fourier: k_x/k_0 et k_y/k_0

	Near field
	plot x: y(m) et z(m)
	plot y: x(m) et z(m)
	plot z: x(m) et y(m)

	Optical force and torque
	plot x: y(m) et z(m)
	plot y: x(m) et z(m)
	plot z: x(m) et y(m) -- OK

7) Peut etre un bouton close all window pour fermer d'un seul coup
toutes les fenetres ouvertes par les differents plots. -- Il existe un
	Clear dans le menu Plot pour cela.
8) RAF: Premier jet de la version francaise du manuel en pdf.
TBD:	non lineaire?
	Born et Born renormalise?
-----------------------------------------------------------------------------
28/11/2013 : version 0.2.5

Make clearer the code to manage options configuration from main menu and
	options widget.
1) In the main window menu Calculation it is now possible to trigger:
New : opens a new calculation widget with default values
Load : opens the configuration window
Save : saves the currently accessible calculation
Start : starts the currently accessible calculation
2) In each calculation widget it is now possible to:
Start calculation : as before
Save Configuration : saves the current configuration.
If it is New, a windows popup to insert a name and (optional)
	a description text.
3) In the Configuration window it is possible to delete or load several
configurations at once by making a multiple selection. It is possible to update
the description of a given configuration, and to save a current
	configuration by filling
the name and (optional) description of the last empty line.
---------------------------------------------------------------------
25/11/2013 : version 0.2.4

1) RAF: Ajout dans relecture.f pour le fichier lisible de sortie.
2) RAF: quand on reli par defaut choix na=0 fixe.
3) Je n'arrive toujours pas a creer une config comme tu le fais.
Un truc simple du genre New configuration et apres un save et ca demande le nom,
est ce que c'est possible a implementer? --Ok j'ai amélioré la fenetre de configuration:
a) Seules les colonnes nom,description sont modifiable lorsque l'on clicque dessus.
b) Pour loader une nouvelle config, il faut selectionner la ligne vide a la fin de la liste.
TBD:	non lineaire?
	Born et Born renormalise?
---------------------------------------------------------------------
15/11/2013 : version 0.2.3

1) RAF: Changement pour la lecture des fichiers .data
Tout est mis dans le code. On peut supprimer les .data. Comme ca,
c'est independant de la config de l OS.
2) RAF: bug corrige quand multiobjet choisi et en plus materiau choisi
dans des .data.	Tout passe dans le fortran...
3) RAF: Bug de dimensionement de variable corrige pour les variables multis.
4) RAF: Bug dans main.f sur multi corrige aussi.
5) RAF: A la demande des utilisateurs, j'ai rajoute un systeme qui peut ecrire
le champ local et le relire si necessaire. Cette routine est deja mis dans
le Makefile. Le premier coup le programme calcule le champ local et le stock,
puis le second coup il relis le champ local. On peut meme stocker different
champ local avec different nom. Pour des configs lourdes ca peut etre tres
utile.
6) Il faut donc pour la relecture et creation de ce fichier ajoutter une option.
Je propose de pouvoir cocher a cote de la commande start (nlecture=1, 0 sinon)
une case reread qui demande alors un nom de fichier (stocke dans filereread).
La subroutine est maintenant:
	SUBROUTINE cdmlib(
c     	input file cdm.in
     $     lambda,beam,object,trope,
     $     materiaumulti,nnnr,tolinit,methodeit,nlecture,filereread,

--OK pass new variables nread with checkbox and filereread with editline in cdmOptions and update
options database in table run_tbl and update cdmOptionsWidget for user input.
7) Remove unused configuration variables and functions in cdmRun (used by cdmOptions)
TBD:	non lineaire?
	Born et Born renormalise?
---------------------------------------------------------------------
05/11/2013 : version 0.2.2

1) RAF: Correction du bug sur le probleme de dimensionnement de nxm,nym et nzm.
2) RAF: Rajoutte des arrets au milieu de la boucle iterative.
3) RAF: Rajoutte un arret sur ntheta et nphi si un des deux egal a zero.
4) RAF: Gros changement sur la facon de rentrer les objets inclines pour etre
coherent entre les differents objets et base sur quelque chose de connu:
les angles d'Euler, dans la convention ZXZ avec psi, theta, phi dans cet ordre.
Ceci a permis de  corriger le bug pour que tout tienne avec un decoupage
en nnnr.
5) Il faut donc changer cuboid, elliposid et cylinder, pour mettre dans cet
ordre pour les trois objets psi (Z), theta (X) ,phi (Z). Attention il me
semble que tu as  croise phi et psi entre ce que tu as ecris sur l'interface
et ce que fait le code. -- OK
6) Par defaut quand on discretise un objet en N couches prendre
nxm=nym=nzm=N. Du coup cette option disparait du bas et ne reapparait que quand
on choisi l'option champ proche avec la valeur par defaut N. On arrive
a ce que demandait Anne. -- OK
Bug: cuboid,ellipsoid lx=10,ly=20,lz=40, dans le plot epsilon/dipole, lx ne correspond pas a ly/2
TBD:	non lineaire?
	Born et Born renormalise?
----------------------------------------------------------------------------
17/10/2013 : version 0.2.1

1) Quand on represente en 3D le module du Poynting, la courbe est rose marbree
de bleue. Est ce voulue? Non et c'est corrigé
Pour quoi pas tout en rose, ou une couleur qui depend du module? --Ok
2) RAF: test d'erreur sur nmax des le debut.
3) Probleme representation du Plot/epsilon/dipoles: quand l'option wide field
ou  cube around the object est choisie alors le plot de la sphere
par exemple n'est pas bon sur les couleurs. La couleur rose qui est associee
a la sphere (eps=2.25) ne correspond pas a la forme de la sphere. --Ok corrigé
remarque: il n'y a pas calcul de wide field pour epsilon  (pas de epsilonwf.mat)
4) RAF: Normalisation de kxy a k0 pour etre en sin(theta).
5) Quand seule l'option dipole with epsilon est choisi, n'afficher dans les
donnees	que les 4 premieres lignes. -- OK
6) RAF: correction sur un test avec epsilon (lambda10n).
7) Quand on trace la densite de force, avant en dehors de l'objet il y avait
des points a la place des fleche, car pas de force. Maintenant il y a en dehors
de l'objet: toujours des petites fleches horizontales (cas ou l'option
champ proche est choisie differente de -1)? -- OK corrigé
8) Quand on est dans le cas de deux spheres et l'option pour tracer le champ
que dans l'objet. Il y a un probleme de representation du champ proche.
Je pense que cela vient du fait que la carte de champ dans cette configuration
est sur un ensemble discontinu (deux spheres disjointes). Soit forcer dans
ce cas l'option na=0 ou arriver a representer le champ sur des ensembles
disjoints. --Ok on met nproche=1 si nproche=0 c'est le plus simple.
9) Add Export to file options button in OptionsWindow
Bugs: 1) case discretization = 20, nxm=nym=nzm=10 for all objects : crash
      2) case aniso with epsilon_i = real(i)=i (for example), no convergence
of the code, impossible to cancel the calculation (RESIDU calculation running)
TBD:	non lineaire?
	Born et Born renormalise?
----------------------------------------------------------------------------
09/10/2013 : version 0.2.0

1) lambda en minuscule dans la presentation des resultats -- OK
2) k_0 avec k en minuscule -- OK
3) Irradiance en W/m^2 (j'ai oublie le carre) -- OK
4) Mesh Size [m] (oublie de l'unite...) -- OK
5) RAF: Corrige l'erreur sur l'irradiance.
6) RAF: corrige erreur sur le faisceau Gaussien.
7) Changement complet de la presentation par Anne (si tu veux crier
tu peux le faire mais ca reste en famille...): presen.eps
Les choses non tracees au dessus de Object properties ne sont pas changees -- OK
En fait sur le tableau de gauche dans study il y aurait trois choix;
far field, near field, optical force. L'ideal serait qu'en
cliquant sur un des choix, que le sous menu (decalle sur l'image
apparaisse et que en meme temps l encadre associe a droite qui permet de
visualiser apparaisse aussi). -- OK
En dessous on laisse numerical parameters.
Dans object properties on met maintenant la discretisation -- OK
plus une icone pour tracer le epsilon en 3D ou la couleur du epsilon serait liee a sa valeur.
En fait c'est ce qu'on fait quand on trace dipole, mais on le
remplace par ce truc qui permet en meme temps de visualiser les
dipoles et la valeur du epsilon. -- A discuter:  possibilite du plot epsilon en mode farfield et inside cube only; n'est pas un setting a priori (panel de droite) -- OK
8) on rajoute dans far field, un truc de microscopie (nlentille=1).
Dans ce cas on rentre NA (qui est numerical aperture:numaper). -- OK
On sort Eimage avec trois composantes et Efourier avec trois composantes.
En abscisse et ordonnee on utilise kxy pour Efourier et xy pour Eimage.
La taille est de nfft2d qu'on peut mettre par defaut a 256 pour l'instant. -- OK
variables ajoutées:
integer nlentille,ndisnumaper,nfft2d,nfft2d2
double precision kx,ky,kz,deltakx,deltaky,numaper,matrot(3
$     ,3),ux,uy,deltax
 double precision kxy(nfft2d),xy(nfft2d)
 double complex Eimagex(nfft2d*nfft2d),Eimagey(nfft2d*nfft2d)
$     ,Eimagez(nfft2d*nfft2d),Efourierx(nfft2d*nfft2d)
$     ,Efouriery(nfft2d*nfft2d),Efourierz(nfft2d*nfft2d)
variables transmises dans cdmlib :
nlentille,Eimage,Efourier,numaper,kxy,xy,nft2d
TBD:	non lineaire?
	Born et Born renormalise?
----------------------------------------------------------------------------
02/09/2013 : version 0.1.10

1) RAF: ajout d'arrets du code apres les forces et couples.
2) RAF: correction bugs de creation et relecture fichier faisceau gaussian
paraxial.
3) RAF: correction bug de relecture fichier faisceau gaussian rigoureux.
4) RAF: passage de l'ecriture ascii en binaire pour aller plus vite pour
tous les faisceaux gaussians.
5) RAF: Bug corrige dans la derivee du faisceau gaussian paraxial.
6) Petites modifications de présentation des resultats
(peut tu faire les exposants ou lettres Grecques? Je prends la convention
Latex en supposant que tu connais!).
	\Lambda/(10|n|) [m]
	k_0 [m^{-1}]
	Irradiance [W/m]
	Field Modulus [V/m]
	Number of products Ax (iterations):	8(2) par exemple
	Extinction cross section [m^2]
	Absorbing cross section [m^2]
	Scattering cross section [m^2]
	Optical force x [N]: pour les 3 lignes suivantes meme unite
	Optical torque [N/m]: pour les 3 lignes suivantes meme unite
TBD: A faire apres correction sur irradiance faisceau gaussian rigoureux,
puis verif faisceau rigoureux.
----------------------------------------------------------------------------
27/08/2013 : version 0.1.9

1) Dans le cas d'objets multiples on a dans le tableau resultat object 1 2 3
mais dans props et Epsilon on a object 0 1 2. Il faudrait mettre aussi 1 2 3
pour etre coherent. --OK
2) Changer dans les faisceaux circular (plane et gaussian) postive negative
en polarization right et left. --OK
3) RAF: bug corrige dans E0 du faisceau gaussian.
4) RAF: bug corrige dans E0 de l'onde plane.
5) RAF: bug corrige dans irradiance de l'onde plane.
6) Mise en place d'un faisceau gaussian approximation paraxial analytique.
Meme appel que le faisceau Gaussian rigoureux avec les memes
arguments et variables.
nom: gparawavelinear et  gparawavecircular --OK
7) RAF: bugs dans test de securite sur P0 et w0 corriges.
8) Crash when COMPLETED after cancelled solved
TBD: A faire apres correction sur irradiance faisceau gaussian rigoureux,
puis verif de tous les faiceaux gaussians.
--------------------------------------------------------------------------
22/08/2013 : version 0.1.8

1) RAF: bug corrige dans incidentarbitrary
2) RAF: infostr rajoutte pour w0 et P0=0
3) RAF: Bug I0 et E0 corriges
4) RAF: concentricsphere: bugs corriges positionnement+rayon
5) RAF: test si sphere=concentricsphere=ellipse=nspheres:OK
6) ondecirc et gaussiancirc s.ge.0 alors right et s.lt.0 alors left:
evite le probleme du zero ou des arrondis. changer le menu pour mettre
positif ou negatif et non plus -1 +1 --OK
7) RAF: Bug dans TFQMR et BICGSTAB corriges
8) Bug dans nom de methode iterative. Changer dans le menu deroulant
le premier nom de GPBICG en GPBICG1 --OK
9) RAF: objectpara bug corriges na et positionnement
10) RAF: objectellipsoide nombreux bugs corriges....
11) RAF: rajoutte test nstop apres calcul object si probleme
12) RAF: objectcylindre nombreux bugs corriges notamment qd na=1 pas
cube inscrit
13) Pour multiobjets: spheres concentriques ou nspheres il faudrait
pouvoir choisir par exemple Au pour l'un et Ag pour l'autre
objet. Pour l'instant seul le choix dans le epsilon (option xx) est
offert, il faut pouvoir aller prendre dans les fichiers de data des
metaux.... --OK
14) RAF: anisotrope corrige pour spheres concentric
15) RAF: anisotrope corrige pour nspheres
16) RAF: rajoutter des arrets en cours de route
17) Probleme representation champ macro et local pour cylindre et
ellipsoide quand na=-1 et que les orientations (angles) sont
differentes de zero. Par exemple pour le champ macro le champ ne
parait pas bien range et on ne retrouve pas la forme de l'objet alors
que la force est bien ordonnee.  Contrairement quand na=0. Les valeurs
numeriques sont identiques entre les deux cas na=0 et na=-1 donc je
penche pour un probleme de representation du champ, meme si je ne suis
pas archi sur.
exemple:
ellipsoid a=30 b=20 c=10
discretization 20
Des que theta psi differents zero (par exemple 45) les coupes sont
dementes...dans le sens que les elements nuls ne sont pas au bon
endroit alors que pour la force c'est juste.
--OK
18) objetpara change pour introduire phiobj,thetaobj,psiobj comme dans
ellipsoide. Il faut donc changer le menu deroulant en consequence. On
reutilise les meme variables. Il y aura surement la meme erreur qu'au
17). --OK
19) ondeplane change: pwavelinear. Dans le menu deroulant on proposait
TM ou TE sur deux lignes. Plus simple et plus complet maintenant une
seule ligne avec TM (1) et TE (0) et cela permet le melange des
deux.... --OK
20) meme modif a faire sur gwavelinear : une seule ligne avec TM (1)
et TE (0) --OK
21) Quand il y a N objets tu ecris optical force (qui est la force
totale sur le systeme) et apres optical force 0, 1,2,...J'aurais
prefere 1,2,3,4 mais ca n'est pas tres grave.  -- OK
Par contre quand il y a un seul objet tu mets optical force qui est la
force totale et aussi la force sur l'objet puisqu'il est unique. Mais
dans ce cas tu ecris aussi la force (objet 0) avec des nombres
etranges (en fait du non calcule surement): Est ce possible de
supprimer ca quand il y a un seul objet? A l'identique pour le couple.
--OK
---------------------------------------------------------------------
