From jankner at anl.gov Thu Jan 20 22:05:21 2000 From: jankner at anl.gov (Ankner, John) Date: Thu, 20 Jan 2000 15:05:21 -0600 Subject: Windows compilation Message-ID: Having looked at the messages in the mailing list archive, I am unable to determine what steps are required to compile the mcstas distribution using Visual C++ on a Windows NT box. In particular, there are a lot of files of unknown provenance in the unpacked mcstas-1.17A4 directory and I don't know which to transfer to my NT directory. In addition, I am not clear on the redefinition of the WIN32 macro -- to what should I redefine it? Anybody who can answer these relatively trivial questions would earn my undying devotion. JFA From kristian.nielsen at risoe.dk Fri Jan 21 09:03:06 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: Fri, 21 Jan 2000 09:03:06 +0100 Subject: Windows compilation In-Reply-To: (jankner@anl.gov) Message-ID: <01JKYLOBCWCA914Q0P@risoe.dk> > Date: Thu, 20 Jan 2000 15:05:21 -0600 > From: "Ankner, John" > Having looked at the messages in the mailing list archive, I am unable to > determine what steps are required to compile the mcstas distribution using > Visual C++ on a Windows NT box. In particular, there are a lot of files of > unknown provenance in the unpacked mcstas-1.17A4 directory and I don't know > which to transfer to my NT directory. In addition, I am not clear on the > redefinition of the WIN32 macro -- to what should I redefine it? Anybody Just copy all of the files ending in ".c" and ".h". Then ask your compiler to compile all the ".c" files into a 32-bit console application called "mcstas.exe". You should also copy the "lib" subdirectory to C:\mcstas\lib on the Windows machine (you can copy it to some other directory if you define the C preprocessor macro MC_SYS_DIR to be the directory name as a string). The definition of WIN32 can be anything, the usual convention is to set it to the number 1. I think there is some menu entry somewhere in Visual C++ to set it, otherwise you could probably put the line #define WIN32 1 at the top of the file "port.h". If you get problems compiling the C files generated by McStas, try using the "--portable" flag on the mcstas compiler. Or even better, tell me how to create a new directory in Visual C++ (this is the only thing in the generated simulations that is not pure ANSI C). I am happy that someone is once again looking into compiling McStas on Windows. If your compiler is unhelpful and spits out nasty error messages, send them in an email and I will try to sort things out. - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 From rotter at physik.tu-dresden.de Mon Jan 31 16:10:04 2000 From: rotter at physik.tu-dresden.de (martin rotter) Date: Mon, 31 Jan 2000 16:10:04 +0100 Subject: pgperl problem Message-ID: <3895A5CC.17E805BE@physik.tu-dresden.de> I was not able to install the PgPerl 2.15 library on linux suse 6.2 Please find enclosed an error report. PGPLOT compiles successfully, however make test gives the output shown in file o4 (o1, o2, o3 conatin the output of Perl -V, perl Makefile.PL, make - respectively) The problem seems to be that the /usr/local/pgplot/libpgplot.so is not compatible with blib/arch/auto/PGPLOT.so I would appreciate any help on this problem because I not very expierenced (I have managed to run PgPerl under Suse 6.0 system, files *ok contain the description of this system) With best regards Martin R I. LINUX SUSE 6.2 INSTALLATION CONFIGURATION WITH PROBLEMS: Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration: Platform: osname=linux, osvers=2.2.10, archname=i586-linux uname='linux fatou 2.2.10 #2 smp thu jul 15 15:03:02 mest 1999 i686 unknown ' hint=recommended, useposix=true, d_sigaction=define usethreads=undef useperlio=undef d_sfio=undef Compiler: cc='cc', optimize='-O2 -pipe', gccversion=egcs-2.91.66 19990314/Linux (egcs-1.1.2 release) cppflags='-Dbool=char -DHAS_BOOL -I/usr/local/include' ccflags ='-Dbool=char -DHAS_BOOL -I/usr/local/include' stdchar='char', d_stdstdio=undef, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt libc=, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Built under linux Compiled at Jul 22 1999 21:20:02 @INC: /usr/lib/perl5/5.00503/i586-linux /usr/lib/perl5/5.00503 /usr/lib/perl5/site_perl/5.005/i586-linux /usr/lib/perl5/site_perl/5.005 . Found compiler g77 ExtUtils::F77: Using system=Generic compiler=G77 Checking for gcc in disguise Compiler is gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)ExtUtils::F77: Validating -L/usr/lib -L/usr/lib -lf2c -lm -L/usr/lib/gcc-lib/i486-linux/egcs-2.91.66 -lgcc [ok] ExtUtils::F77: Compiler: g77 ExtUtils::F77: Cflags: -O Writing Makefile for PGPLOT Warning: prerequisite ExtUtils::F77 1.11 not found at (eval 1) line 220. cc -c -I/usr/local/pgplot -I/home/aaossm/kgb/soft/pgplot/bld -I/usr/local/pgplot -Dbool=char -DHAS_BOOL -I/usr/local/include -O2 -pipe -DVERSION=\"2.15\" -DXS_VERSION=\"2.15\" -fpic -I/usr/lib/perl5/5.00503/i586-linux/CORE PGPLOT.c Running Mkbootstrap for PGPLOT () chmod 644 PGPLOT.bs LD_RUN_PATH="/usr/local/pgplot:/usr/X11/lib:/usr/lib:/usr/lib/gcc-lib/i486-linux/egcs-2.91.66" cc -o blib/arch/auto/PGPLOT/PGPLOT.so -shared -L/usr/local/lib PGPLOT.o -L/usr/local/pgplot -L/usr/local/pgplot -L/usr/local/lib -lcpgplot -lpgplot -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -L/usr/lib -L/usr/lib -lf2c -lm -L/usr/lib/gcc-lib/i486-linux/egcs-2.91.66 -lgcc chmod 755 blib/arch/auto/PGPLOT/PGPLOT.so cp PGPLOT.bs blib/arch/auto/PGPLOT/PGPLOT.bs chmod 644 blib/arch/auto/PGPLOT/PGPLOT.bs Manifying blib/man3/PGPLOT.3pm PERL_DL_NONLAZY=1 /usr/bin/perl -Iblib/arch -Iblib/lib -I/usr/lib/perl5/5.00503/i586-linux -I/usr/lib/perl5/5.00503 test.pl Default Device for plot tests [recommend /XSERVE] ? ============== Running test1.p ============== Can't load 'blib/arch/auto/PGPLOT/PGPLOT.so' for module PGPLOT: /usr/local/pgplot/libpgplot.so: undefined symbol: G77_getenv_0 at /usr/lib/perl5/5.00503/i586-linux/DynaLoader.pm line 169, chunk 1. at test1.p line 3 BEGIN failed--compilation aborted at test1.p line 3, chunk 1. II. LINUX SUSE 6.0 INSTALLATION CONFIGURATION WITHOUT PROBLEMS: Summary of my perl5 (5.0 patchlevel 5 subversion 2) configuration: Platform: osname=linux, osvers=2.0.36, archname=i586-linux uname='linux einstein 2.0.36 #79 tue jan 19 12:41:20 met 1999 i686 unknown ' hint=recommended, useposix=true, d_sigaction=define usethreads=undef useperlio=undef d_sfio=undef Compiler: cc='cc', optimize='-O2 -pipe', gccversion=egcs-2.91.60 19981201 (egcs-1.1.1 release) cppflags='-Dbool=char -DHAS_BOOL -I/usr/local/include' ccflags ='-Dbool=char -DHAS_BOOL -I/usr/local/include' stdchar='char', d_stdstdio=define, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt libc=, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Built under linux Compiled at Jan 27 1999 12:19:30 @INC: /usr/lib/perl5/5.00502/i586-linux /usr/lib/perl5/5.00502 /usr/lib/perl5/site_perl/5.005/i586-linux /usr/lib/perl5/site_perl/5.005 . Found compiler g77 ExtUtils::F77: Using system=Linux compiler=G77 Checking for gcc in disguise Compiler is gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release)ExtUtils::F77: Validating -L/usr/lib -L/usr/lib -lf2c -lm -L/usr/lib/gcc-lib/i486-linux/egcs-2.91.60 -lgcc [ok] ExtUtils::F77: Compiler: g77 ExtUtils::F77: Cflags: -O Writing Makefile for PGPLOT cc -c -I/home/aaossm/kgb/soft/pgplot/bld -I/usr/local/pgplot -Dbool=char -DHAS_BOOL -I/usr/local/include -O2 -pipe -DVERSION=\"2.11\" -DXS_VERSION=\"2.11\" -fpic -I/usr/lib/perl5/5.00502/i586-linux/CORE PGPLOT.c Running Mkbootstrap for PGPLOT () chmod 644 PGPLOT.bs LD_RUN_PATH="/usr/local/pgplot:/usr/X11/lib:/usr/lib:/usr/lib/gcc-lib/i486-linux/egcs-2.91.60" cc -o blib/arch/auto/PGPLOT/PGPLOT.so -shared -L/usr/local/lib PGPLOT.o -L/usr/local/pgplot -L/usr/local/pgplot -L/usr/local/lib -lcpgplot -lpgplot -L/usr/openwin/lib -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -L/usr/lib -L/usr/lib -lf2c -lm -L/usr/lib/gcc-lib/i486-linux/egcs-2.91.60 -lgcc chmod 755 blib/arch/auto/PGPLOT/PGPLOT.so cp PGPLOT.bs blib/arch/auto/PGPLOT/PGPLOT.bs chmod 644 blib/arch/auto/PGPLOT/PGPLOT.bs Manifying blib/man3/ExtUtils::F77.3pm Manifying blib/man3/PGPLOT.3pm description of installation of suse 6.0, where pgperl is running successfully, the packages installed resemble those in suse 6.2 where pgperl does not run ... [i] aalibdev Development package for aalib 0xxMount point x x [i] autoconf An m4 macro package 0xx Freex x [i] automake Tool for automatically generating GNU style Makhxx/ x x [i] bin86 8086 assembler and linker hxx 468.2 Mx x [i] binutils GNU binutils hxx/dosc x x [i] bison GNU bison parser generator hxx 36.0 Mx x [i] bwbasic There is Basic under Linux, too hxx/dosd x x [ ] clisp A Common-Lisp interpreter hxx 188.8 Mx x [ ] cvs Concurrent Versions System hxx/dose x x [ ] efence ElectricFence hxx 13.8 Mx x [i] egcs the egcs-compiler hxx/dosf x x [i] f2c A Fortran-77 to C translator hxx 76.1 Mx x [i] f2caout a.out version of libf2c hxx/dosg x x [i] flex flex - fast lexical analyzer generator [i] flex flex - fast lexical analyzer generator hxxMount point x x [ ] fpk Free Pascal Compiler hxx Freex x [i] g77 GNU Fortran Compiler 0xx/ x x [i] gcc The GNU C compiler and support files 0xx 468.2 Mx x [ ] gccfront frontend for gcc-2.7.2.x hxx/dosc x x [i] gcl GNU Common Lisp hxx 36.0 Mx x [i] gdb The GNU debugger hxx/dosd x x [i] gdlib Gif-Manipulating Library hxx 188.8 Mx x [i] gettext Tools for National Language Support (NLS) hxx/dose x x [i] gforth GNU Forth hxx 13.8 Mx x [i] global common source code tag system hxx/dosf x x [i] gmp GNU MP library hxx 76.1 Mx x [i] gnats GNATS - Problem Report Management System hxx/dosg x x [i] gobjc GNU objective C Compiler [i] gobjc GNU objective C Compiler hxxMount point x x [ ] gpc GNU Pascal Compiler hxx Freex x [i] gpp GNU C++ Compiler hxx/ x x [i] guavac A free compiler for the Java language hxx 468.2 Mx x [i] guile GNU's Ubiquitous Intelligent Language for Exten0xx/dosc x x [ ] icmake A Maker for C-Fans 0xx 36.0 Mx x [ ] indent formats C source code hxx/dosd x x [ ] java Java Developers Kit hxx 188.8 Mx x [ ] javarunt Java Runtime Environment hxx/dose x x [ ] joystick joystick support (kernel module and binaries) hxx 13.8 Mx x [ ] jresep Java Runtime Environment hxx/dosf x x [ ] kaffe A virtual machine to run Java(tm) code hxx 76.1 Mx x [i] lclint LCLint - a tool for statically checking C progrhxx/dosg x x [i] leda a library of efficient data types and algorithmh [i] leda a library of efficient data types and algorithmhxxMount point x x [i] libc Libraries for the C compiler hxx Freex x [i] libd Profiling and Debugging versions of libc. hxx/ x x [i] libgpp C++-library hxx 468.2 Mx x [i] libgpp27 old version of the c++ libraries hxx/dosc x x [i] libobjc libobjects hxx 36.0 Mx x [i] libtool Tool to build "shared libraries" 0xx/dosd x x [i] libxml Library to manipulate XML files 0xx 188.8 Mx x [i] libxmld libxml development package hxx/dose x x [i] linclude Include files for the kernel hxx 13.8 Mx x [ ] linux Rest of the kernel source code. hxx/dosf x x [ ] lx_glibc kernel-includes for glibc build hxx 76.1 Mx x [ ] lx_hack Source of the newest hacker's kernel hxx/dosg x x [ ] lx_large Kernel sources for big servers. [ ] lx_large Kernel sources for big servers. hxxMount point x x [ ] lx_suse The sources of the SuSE kernel hxx Freex x [i] make GNU make command hxx/ x x [ ] mico Mico is CORBA hxx 468.2 Mx x [ ] minigcc The GCC Preprocessor without the C-Compiler hxx/dosc x x [ ] mocka Modula-2 compiler hxx 36.0 Mx x [ ] mtc Modula-2 / C Converter hxx/dosd x x [i] nasm Netwide Assembler (an x86 assembler) hxx 188.8 Mx x [ ] orbit A high-performance CORBA ORB 0xx/dose x x [ ] orbitdev The ORBit development environment 0xx 13.8 Mx x [ ] p2c A Pascal to C translator. hxx/dosf x x [i] patch GNU patch program hxx 76.1 Mx x [ ] pccts Purdue Compiler Construction Tool Set hxx/dosg x x [i] pmake BSD make x [i] pmake BSD make hxxMount point x x [i] prcs PRCS -- Project Revision Control System hxx Freex x [i] python Python Interpreter hxx/ x x [i] rcs Revision Control System hxx 468.2 Mx x [ ] scheme UMB Scheme hxx/dosc x x [i] slang Display control hxx 36.0 Mx x [ ] smaltalk GNU Smalltalk hxx/dosd x x [ ] smeiffel SmallEiffel hxx 188.8 Mx x [i] strace Trace system calls of a program. hxx/dose x x [ ] svgaaout Svgalib Super-VGA Graphics Library (a.out) hxx 13.8 Mx x [i] svgalib Svgalib Super-VGA Graphics Library 0xx/dosf x x [ ] swi_pl SWI-Prolog distribution 0xx 76.1 Mx x [i] toolpack extensive collection of tools for Fortran progrhxx/dosg x x [ ] tvision tvision [i] slang Display control hxxMount point x x [ ] smaltalk GNU Smalltalk hxx Freex x [ ] smeiffel SmallEiffel hxx/ x x [i] strace Trace system calls of a program. hxx 468.2 Mx x [ ] svgaaout Svgalib Super-VGA Graphics Library (a.out) hxx/dosc x x [i] svgalib Svgalib Super-VGA Graphics Library hxx 36.0 Mx x [ ] swi_pl SWI-Prolog distribution hxx/dosd x x [i] toolpack extensive collection of tools for Fortran progrhxx 188.8 Mx x [ ] tvision tvision hxx/dose x x [ ] tya TYA is a 100% inofficial JIT-compiler hxx 13.8 Mx x [ ] xclass Linux Explorer + library hxx/dosf x x [ ] xscheme An object-oriented scheme hxx 76.1 Mx x [i] yacc BSD yacc 0xx/dosg x x [ ] yodl Yet Oneother Document Language 0x [ ] ddd Debugger with graphical user interface 0xxMount point x x [ ] dlgedit QT Dialog Editor 0xx Freex x [ ] ezwgl ezwgl 0xx/ x x [ ] iv InterViews - a GUI. 0xx 468.2 Mx x [ ] qtcompat Compatibility includes for older QT programs 0xx/dosc x x [ ] qtdevel QT development environment 0xx 36.0 Mx x [ ] qtext QT extensions 0xx/dosd x x [i] qtlib QT runtime libraries 0xx 188.8 Mx x [ ] vtk Visualization ToolKit hxx/dose x x [ ] vtkdata Visualization ToolKit - Datafiles hxx 13.8 Mx x [ ] wxwdemo Demo programs for wxwin hxx/dosf x x [ ] wxwdocht Documentation for wxwin in HTML hxx 76.1 Mx x [ ] wxwdocps Documentation of wxwin in PostScript hxx/dosg x x [ ] wxwin GUI Library for Motif, Openlook and MS-Windows [ ] wxwin GUI Library for Motif, Openlook and MS-Windows hxx 36.0 Mx x [ ] wxwstat Static libraries for package wxwin 0xx/dosd x x [ ] wxxt Port of wxwin with motif look-and-feel 0xx 188.8 Mx x [i] xforms Forms Library 0xx/dose x x [ ] xtpanel Interface Builder using scripts 0xx 13.8 Mx x [i] xwb software development environment for openwin 0xx/dosf x x [i] xwpe A X-window programming environment 0xx 76.1 Mx x [i] xxgdb xxgdb, user interface to the GNU debugger under0xx/dosg x x [ ] ygl a GL graphics library with sample file 0 linux base system (nearly) everything no source packages -------------- next part -------------- A non-text attachment was scrubbed... Name: rotter.vcf Type: text/x-vcard Size: 360 bytes Desc: Visitenkarte f|r martin rotter URL: From kristian.nielsen at risoe.dk Tue Jan 18 22:32:40 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 18 Jan 2000 22:32:40 +0100 Subject: help In-Reply-To: <000801bf60cc$e744bda0$940a26ca@ciae.ac.cn> (message from guolp on Mon, 17 Jan 2000 17:26:09 +0800) Message-ID: > I've just read your paper " McStas, a general software package for > neutron ray-tracing simulations" published on Neutron News > 10(1999),20-23. I'm very interested in Monte Carlo simulations of > neutron scattering spectrometer. We are designing several > spectrometers on China Advanced Research Reactor(CARR) under > construction. These spectrometers include a high resolution powder > diffractometer, a neutron reflectometer, a high Q diffractometer, a > cold and a thermal neutron guide,and a three axis spectrometer.I hope > I could use ray-tracing simulations technique and your software McStas > in our design. My colleagues and I may need your help. First, what is > ray-tracing simulations? Could you tell me some references which > introduces this technique in details? Secondly, can this technique be Well, maybe the best place to start would be to look at the McStas manual. This may be downloaded from the McStas web page http://neutron.risoe.dk/mcstas/ If you have problems obtaining it, I can send you a paper copy. > used in design of all of our spectrometers mentioned above? Yes, McStas should be able to handle all of the instruments you mentioned. > Thirdly,besides in design, does this technique has any other usages in > the running of our spectrometer after built up it in the future? I Yes. It can be used to select between different configuration before starting an experiment, for example to get the best possible signal/background ratio. And it can be used to compute eg. the resolution function of an instrument which can be used to analyse experiment data. > hope you could give some help to me. I'm looking forward to hearing > from you. Do you know Sun Kai and Dong Feng Chen? If you do, you may be interested to know that they have also started to look at Monte Carlo and McStas. I hope this helps. - Kristian. From farhi at ill.fr Tue Jan 25 12:31:55 2000 From: farhi at ill.fr (Farhi) Date: Tue, 25 Jan 2000 12:31:55 +0100 Subject: Cristallographica Message-ID: <388D89AB.D4EB590@ill.fr> By the way, the program Cristallographica only works on PC's. Do you know other ways to generate the crystal diffraction patterns ? what file format is it exactly (CIF ?) Thanks. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristian.nielsen at risoe.dk Tue Jan 25 12:37:46 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 25 Jan 2000 12:37:46 +0100 Subject: Cristallographica In-Reply-To: <388D89AB.D4EB590@ill.fr> (message from Farhi on Tue, 25 Jan 2000 12:31:55 +0100) Message-ID: > Date: Tue, 25 Jan 2000 12:31:55 +0100 > From: Farhi > the program Cristallographica only works on PC's. Do you know other ways > to generate the crystal diffraction patterns ? what file format is it > exactly (CIF ?) Hm, I am sorry to hear that Crystallographica is Windows only ... Anyway, the file is just straight ASCII, list of (h,k,l) and the structure factor |F|**2. Like this h k l dummy dummy dummy F2 h k l dummy dummy dummy F2 h k l dummy dummy dummy F2 ... Crystallographica output the "dummy"'s, but they are not used. It should be quite easy to write a program that inputs the atoms in the unit cells and does the sums in the textbook expression for F2. Anyway, this information will be in the manual (of course). - Kristian. From stuart at studsvik.uu.se Fri Feb 4 16:58:40 2000 From: stuart at studsvik.uu.se (stuart) Date: Fri, 04 Feb 2000 16:58:40 +0100 Subject: Calulating intensities Message-ID: <389AF72F.384B4B99@studsvik.uu.se> Hi I was trying to compare the intensities given from a simulation when using different energy/wavelength neutrons, and have been trying to understand the way in which the monochromator mosaicity would affect the number reflected, for those different incident energies/wavelengths. Should the energy spread of the neutrons, from the source be different for each energy simulated in order to give an identical wavelength spread, incident upon the monochromator? Or maybe I'm thinking about it the wrong way! Stuart Rycroft, NFL Studsvik From kristian.nielsen at risoe.dk Mon Feb 7 09:21:32 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: Mon, 07 Feb 2000 09:21:32 +0100 Subject: New release v1.2 of McStas Message-ID: <01JLMDA0XPWA90WXIE@risoe.dk> I am pleased to announce that McStas v1.2 has been released and may be downloaded from the web site: http://neutron.risoe.dk/mcstas/ The main new features include a new graphical user interface called mcgui as well as an extended component library including a general single crystal sample, adaptive importance sampling neutron source, resolution calculation sample, etc. See the CHANGES file in the distribution for details on what is new in v1.2. All McStas users are encouraged to upgrade to the new version. Users that have installed one of the alpha/beta versions of McStas prior to McStas version 1.2 are especially encouraged to upgrade as these pre-releases contain known bugs that are fixed in version 1.2. As usual, please report any problems so that they may be fixed in a later version. - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 From kristian.nielsen at risoe.dk Mon Feb 7 11:34:39 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: Mon, 07 Feb 2000 11:34:39 +0100 Subject: Calulating intensities In-Reply-To: <389AF72F.384B4B99@studsvik.uu.se> (message from stuart on Fri, 04 Feb 2000 16:58:40 +0100) Message-ID: <01JLMHX3CV9U919Z2M@risoe.dk> > Date: Fri, 04 Feb 2000 16:58:40 +0100 > From: stuart > I was trying to compare the intensities given from a simulation when > using different energy/wavelength neutrons, and have been trying to > understand the way in which the monochromator mosaicity would affect the > number reflected, for those different incident energies/wavelengths. > > Should the energy spread of the neutrons, from the source be different > for each energy simulated in order to give an identical wavelength > spread, incident upon the monochromator? Or maybe I'm thinking about it > the wrong way! I am not quite sure here about what you have in mind, but it sounds like your problem is that the neutron source you use specifies the spectrum in terms of energy, while what you need is to specify it in terms of wavelength. In that case you should try to use the Source_flux_lambda component that is included in the just-released McStas version 1.2 (I assume you use McStas though you did not mention it explicitly). That will give you easily the same wavelength spread at all wavelengths. More generally, the prediction of absolute reflectivity at different wavelengths of mosaic crystals is (as far as I know) a very hard problem. Complications arise because both primary and secondary extinction becomes important, and these depend strongly on the precise characteristics on the mosaic (a simple Gaussian model may not be sufficient). Samuel Werner discusses the problem in his 1965 PhD thesis (I think the title is "The multiple Bragg scattering of neutrons from mosaic crystals"). Hope this helps, - Kristian. From jankner at anl.gov Tue Feb 8 18:42:24 2000 From: jankner at anl.gov (Ankner, John) Date: Tue, 08 Feb 2000 11:42:24 -0600 Subject: 3d detectors Message-ID: Kristian, I modified your PSD_monitor routine to handle time-of-flight data (called PSDTOF_monitor.comp). The new detector generates data in x, y, and t and I find I now have a major file-size problem. For example, a 140?140 PSD_monitor generates about a 150 kB file. If we divide 16.7 msec (1/60 for the SNS source) into 10 mu-sec bins, we need 1670?150 kB or several hundred MB. These files are quite sparse, so there should be great gains to be made via data compression. In addition, the ideal way to view this data would be by looking at x-y plots over a specified range of time channels. This viewing would best be done interactively. In other words, import the entire data set into a viewer to which one can specify a range of time channels. My impression is that Nexus can help with both the compression and the viewing. Do you have any plans for generating Nexus files? I will look into this, but I suspect you are the most-qualified person for the job. John P.S. Is the source code for the DETECTOR_OUT_2D macro available? From kristian.nielsen at risoe.dk Wed Feb 9 09:51:34 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: Wed, 09 Feb 2000 09:51:34 +0100 Subject: 3d detectors In-Reply-To: (jankner@anl.gov) Message-ID: <01JLP6WYEEEQ91B0AW@risoe.dk> > Kristian, > I modified your PSD_monitor routine to handle time-of-flight data > (called PSDTOF_monitor.comp). The new detector generates data in x, y, and > t and I find I now have a major file-size problem. For example, a 140?140 > PSD_monitor generates about a 150 kB file. If we divide 16.7 msec (1/60 for > the SNS source) into 10 mu-sec bins, we need 1670?150 kB or several hundred > MB. These files are quite sparse, so there should be great gains to be made OK, that would be a problem. The current method needs to store one double precision floating point number for each bin (8 bytes) in memory during the simulation. This would be 260 Mb of RAM needed in your case which is a lot, but not totally unreasonable. To compute error estimates the current method needs three times that amount which is quite a lot. However, going to single precision is quite dangerous for large number of neutron histories (~10e9). Once the computation finishes, converting to single precision is fine, of course. I already had plans to implement an optional binary output format. This would output your detector data as a single precision binary file (130Mb in your case). This would then subsequently be converted to NeXuS. This is something I could implement for you quickly (a few weeks) if needed. > via data compression. In addition, the ideal way to view this data would be > by looking at x-y plots over a specified range of time channels. This > viewing would best be done interactively. In other words, import the entire > data set into a viewer to which one can specify a range of time channels. > My impression is that Nexus can help with both the compression and the > viewing. Do you have any plans for generating Nexus files? I will look > into this, but I suspect you are the most-qualified person for the job. Your example clearly shows the use of writing NeXuS directly from the simulation, using its build-in data compression algorithms. This would appear to be quite useful here. I will think some more about it, but that will take somewhat longer to implement. Are you saying that a suitable general viewer is already available for the NeXuS/HDF format? That would be great, obviously it will never be possible to create all the visualization tools we need specifically for McStas. If good NeXuS/HDF tools are available, I will want to accelerate the implementation of NeXuS in McStas. > P.S. Is the source code for the DETECTOR_OUT_2D macro available? Yes, it is found in the files mcstas-r.h and mcstas-r.c (located in the lib/ subdirectory of the distribution). Obviously we need to include a DETECTOR_OUT_3D macro as well. Send me your code when you finish it or get stuck, and I will look at it. Good luck, it sounds like you are doing great work! - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 From kristian.nielsen at risoe.dk Wed Feb 2 10:25:20 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 2 Feb 2000 10:25:20 +0100 Subject: Windows compilation In-Reply-To: (jankner@anl.gov) Message-ID: > Date: Tue, 01 Feb 2000 09:06:01 -0600 > From: "Ankner, John" > Kristian, > goes well, except that neither I nor the Visual C++ 5.0 compiler/linker can > locate a main() function. In my limited knowledge of C, I believe we need The main() function is located in the file "instrument.tab.c". Probably you missed this file because of file name mangling when copying between Linux and Windows. You also need the file "lex.yy.c". Maybe you should rename them to something without two dots. > In addition, what function does the mcstas-r.c code perform? Attempting to > compile it with the rest causes many error messages. I have therefore > omitted it. That is right, it should not be included. It is used in the simulations generated by mcstas, not in mcstas itself. I hope this helps, - Kristian. From jankner at anl.gov Tue Feb 1 16:06:01 2000 From: jankner at anl.gov (Ankner, John) Date: Tue, 01 Feb 2000 09:06:01 -0600 Subject: Windows compilation Message-ID: Kristian, Having now encountered sufficient difficulties in trying to compile a new PSD TOF detector on the Linux box, I am now attempting to install mcstas on my NT box. I followed the directions in your previous message and all goes well, except that neither I nor the Visual C++ 5.0 compiler/linker can locate a main() function. In my limited knowledge of C, I believe we need this. Let me know if there is something subtle going on (trivial being more likely). FYI, here is the linker error message: --------------------Configuration: mcstas - Win32 Debug-------------------- Linking... LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/mcstas.exe : fatal error LNK1120: 1 unresolved externals Error executing link.exe. mcstas.exe - 2 error(s), 0 warning(s) In addition, what function does the mcstas-r.c code perform? Attempting to compile it with the rest causes many error messages. I have therefore omitted it. Thanks, John From kristian.nielsen at risoe.dk Thu Feb 3 11:40:08 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 3 Feb 2000 11:40:08 +0100 Subject: mcgui on non linux machines In-Reply-To: <389950D1.6E1F6A81@ill.fr> (message from Farhi on Thu, 03 Feb 2000 10:56:33 +0100) Message-ID: > Date: Thu, 03 Feb 2000 10:56:33 +0100 > From: Farhi > No problems to get back ? Perhaps could you see the top of the > Mont-Blanc flying over the clouds ? No problems, but there were too many clouds to see anything (or maybe I was in the wrong side of the plane). > I've improved my Flux_adapter and Optimizer. I think it is possible to > use more that one Monitor Optimizer, in order to optimize simulation > according to various criteria. Each neutron that reach a > Monitor_Optimizer increases the Source efficiency, even if it is counted > more that once during tracing. If the neutron reaches two > Monitor_Optimizer, it will count twice in the optimization, and this is > fair. Sounds good! > I've experimented a major pb for mcgui. When on a Linux machine, no pbs > because these machines use the same compilers and options for linker... > But when running for instance on SGI/IRIX, it leads to a core because > one has to use the IRIX cc compiler, with specific options. gcc crashes. > And for HP or DEC machines, htere are even more restricted options (to > force ANSI code for instance). Ok, there is (or should be) a way to handle this. The command used by mcgui to compile is the same command used to compile mcstas during installation. If this is wrong, McStas must be re-installed with the proper compile commands. The way to do this is rm config.cache # To remove any old, wrong settings setenv CC cc # Name of compiler to use setenv CFLAGS "-O -g" # Necessary compiler options ./configure make install By setting CC and CFLAGS before configure, mcgui should pick up the right commands. Of course, there should be a way to override this after installation, I will work on that. By the way, I thought I had fixed the problem on the DEC machines, if not please send details. > I've copied the latest versions of mcstas package on the Web page, as > well as the new components definitions. It seems however that not all > components have a valid header yet. The components that I had installed > before did ! I think I get them back on the web now, so that you can get > them, and compare/add headers and MCDISPLAY sections. If you do not have > time for that, I think I can do the 'homogeneisation' today or tomorrow. > Then I'll send you the new clean components. Indeed, I seem to have forgotten MCDISPLAY in five components: Chopper, First_Chopper, Monitor_4PI, Source_div, and V_selector.comp. Thanks for the notice. However, I could not find any official components without headers (only did a quick check). I think perhaps you are thinking of some of the components that were in the BETA releases I send you, but that were removed from the final release. Perhaps they just got left in your /usr/local/lib/mcstas directory? Otherwise let me know the names, and I will fix it. Anyway, thanks for the comments. It was good to see you at the ILL! - Kristian. From farhi at ill.fr Thu Feb 3 10:56:33 2000 From: farhi at ill.fr (Farhi) Date: Thu, 03 Feb 2000 10:56:33 +0100 Subject: mcgui on non linux machines Message-ID: <389950D1.6E1F6A81@ill.fr> Hello Kristian, No problems to get back ? Perhaps could you see the top of the Mont-Blanc flying over the clouds ? I've improved my Flux_adapter and Optimizer. I think it is possible to use more that one Monitor Optimizer, in order to optimize simulation according to various criteria. Each neutron that reach a Monitor_Optimizer increases the Source efficiency, even if it is counted more that once during tracing. If the neutron reaches two Monitor_Optimizer, it will count twice in the optimization, and this is fair. I've experimented a major pb for mcgui. When on a Linux machine, no pbs because these machines use the same compilers and options for linker... But when running for instance on SGI/IRIX, it leads to a core because one has to use the IRIX cc compiler, with specific options. gcc crashes. And for HP or DEC machines, htere are even more restricted options (to force ANSI code for instance). I've copied the latest versions of mcstas package on the Web page, as well as the new components definitions. It seems however that not all components have a valid header yet. The components that I had installed before did ! I think I get them back on the web now, so that you can get them, and compare/add headers and MCDISPLAY sections. If you do not have time for that, I think I can do the 'homogeneisation' today or tomorrow. Then I'll send you the new clean components. Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristian.nielsen at risoe.dk Thu Feb 3 12:39:09 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 3 Feb 2000 12:39:09 +0100 Subject: SINS slides? Message-ID: Hi Thomas, It was good to see you at the ILL. I was very impressed with the work you have done so far, it is very ambitious I think compared to what I have seen in terms of simulations elsewhere. It also clearly demonstrates the need for a simulation program like McStas to be very extendible. We are several people here at Risoe interested in having a copy of the slides you presented at the workshop at ILL. Would it be possible for you to send a copy (either electronically or on paper)? Also thanks for the very nice tour of the new D20 you gave me. - Kristian. From hansen at ill.fr Thu Feb 3 13:01:12 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Thu, 03 Feb 2000 13:01:12 +0100 Subject: Adapt_check Message-ID: <38996E05.B5D63307@ill.fr> I'm not sure, but I think it's Adapt_check which makes my new simulation stop without error messages after about 100 neutrons passed (sometimes with finite weight p - due to the flux greater than 1 - also in Adapt_check). Debugging won't be easy, but if you could file me some general hints for the use of Source_adapt/Adapt_check, that may already be helpful enough. Thanks a lot in advance, Thomas From hansen at ill.fr Thu Feb 3 19:02:14 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Thu, 03 Feb 2000 19:02:14 +0100 Subject: Adapt_check References: <01JLH14N02CK9189QK@risoe.dk> Message-ID: <3899C299.5E1C5DE3@ill.fr> I got it: As with the new Source_adapt, weights greater one are possible, and as I had - stupid enough - in one of my components for debugging reasons "if (p>1) exit(1);", the program stops quite early. That does not mean that I am error free now, but ... we will see ... Have a nice evening, Thomas Kristian Nielsen wrote: > Hi Thomas, > > Thanks for the copy of your slides, which arrived and printed without > problems. > > As to the Source_adapt/Adapt_check combination, probably the easiest > would be if you could send me the files you used (and a set of input > parameters that show the problems). Then I could probably quickly find > the cause of your problem. > > The Source_adapt/Adapt_check components will be documented in the McStas > v1.2 manual, which I will release in a few days. > > - Kristian. -- Dr. Thomas C HANSEN, Instrument Scientist D20, Diffraction Group Institut Max von Laue-Paul Langevin, BP 156, 38042 Grenoble C?dex 9, France ILL4-1st floor room 100, Phone +33(0)476207044, Fax +33(0)476207648 mailto:hansen at ill.fr, http://www.ill.fr/YellowBook/D20 Private: 13, all?e des ?tangs, 38240 Meylan, France, +33(0)476180553 From kristian.nielsen at risoe.dk Tue Feb 8 11:02:41 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 8 Feb 2000 11:02:41 +0100 Subject: McStas PANDA simulation In-Reply-To: <38959F90.10C0269C@physik.tu-dresden.de> (message from martin rotter on Mon, 31 Jan 2000 15:43:28 +0100) Message-ID: Dear Martin, Many thanks for the report you send me. I have made it available from the McStas home page, at http://neutron.risoe.dk/mcstas/reflist.html (see the bottom of the page). I am sure that it will be of use to other users. I will also take a closer look, probably there will be some suggestions for improving future versions of McStas. For one, I have made a note to include a batch option (non-interactive postscript output) in mcdisplay and mcplot. It is clear that you have spent a great deal of effort on this work with McStas! Thanks, - Kristian. From kristian.nielsen at risoe.dk Thu Feb 10 09:03:39 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 10 Feb 2000 09:03:39 +0100 Subject: McStas installation and Perl Message-ID: Dear Ron, It was good to see you again at the ILL last week. Thanks for all your work in organizing the workshop. Last Tuesday, we discussed your problems with the location of the Perl interpreter during the McStas install. We agreed that I should implement a way for the user to explicitly set the path to Perl during the installation. Well, it turns out that this is already possible, I just did not realize it! Before running the ./configure thing, the PERL environment variable may be set to the complete path of the Perl executable to use: setenv PERL /my/special/perl ./configure --prefix=/my/prefix The setting of PERL overrides configure's guess. It may be necessary to remove configure's cache file, rm config.cache I will document this in the INSTALL document and in the FAQ. Let me know if you have any other trouble with this. I will also be looking into the compiler warnings we discussed. - Kristian. From Ralph_Gilles at Physik.TU-Muenchen.DE Fri Feb 11 17:45:44 2000 From: Ralph_Gilles at Physik.TU-Muenchen.DE (Ralph Gilles) Date: Fri, 11 Feb 2000 17:45:44 +0100 Subject: publications Message-ID: <38A43CB8.5147F1CA@ph.tum.de> Dear Kristian, In past I was not so active in sending emails concerning your excellent program (Georg Artus was combining our questions and comments).In the mentioned papers below I mentioned you and your colleague Kim for your excellent work and tried to motivate other people to use the program. Today I received questions concerning the program from 'new cancidates for McStas in future 'and this is the actual reason to write the email and to thank again for the support and help in past. Good luck ! I hope that I also helped you to spread the program over the world. greetings, Ralph paper: R. Gilles, G. Artus, J. Saroun, H. Boysen, H. Fuess The new structure powder diffractometer at the FRM II in Garching Commission on Powder Diffraction (1999), Newsletter No.22,12. R. Gilles, G. Artus, J. Saroun, H. Boysen, H. Fuess The new structure powder diffractometer at the FRM II in Garching Physica B (2000), in print. R. Gilles, J. Saroun, H. Boysen, H. Fuess Monte Carlo Simulation for a neutron guide system of the new Structure Powder Diffractometer at the FRM-II in Garching Proceedings of the HERCULES X EuroConference 2000, Grenoble, submitted. another 'one' I am preparing poster: R. Gilles, H. Boysen, H. Fuess Das Neue Strukturpulverdiffraktometer am FRM II Deutsche Neutronenstreutagung 1999 May 25th ? 27th, Potsdam, Germany -- Address: Dr. Ralph Gilles TU M?nchen Reaktorstation D-85747 Garching phone.: 049-(0)89-289-14665 fax.: 049-(0)89-289-14666 e-mail: rgilles at ph.tum.de From kristian.nielsen at risoe.dk Mon Feb 14 10:00:19 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 14 Feb 2000 10:00:19 +0100 Subject: publications In-Reply-To: <38A43CB8.5147F1CA@ph.tum.de> (message from Ralph Gilles on Fri, 11 Feb 2000 17:45:44 +0100) Message-ID: > Date: Fri, 11 Feb 2000 17:45:44 +0100 > From: Ralph Gilles > Dear Kristian, > > In past I was not so active in sending emails concerning your excellent > program (Georg Artus was combining our questions and comments).In the > mentioned papers below I mentioned you and your colleague Kim for your Thank you for the kind words and for the references. I have put the references on the web page. It is very encouraging to hear about people using the program with success, that is after all the whole motivation for doing the work. I am also happy to hear that other users are joining the project. - Kristian. From kristian.nielsen at risoe.dk Tue Feb 15 12:00:26 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 15 Feb 2000 12:00:26 +0100 Subject: Bugs in McStas/McGUI In-Reply-To: <38A296BD.5136980A@ill.fr> (message from Farhi on Thu, 10 Feb 2000 11:45:17 +0100) Message-ID: > Date: Thu, 10 Feb 2000 11:45:17 +0100 > From: Farhi Hi Emmanuel and Ron, I have fixed some of the points we discussed at my visit a few weeks ago: - Compiler warnings on SGI. - Components stored in subdirectories (samples, optics, monitors, sources, misc). - Automatic generation of documentation (HTML web pages) from component header comments. - String values for instrument parameters. The use of strings for instrument parameters was somewhat more involved than I thought initially because of the need to handle it also in the front-ends (mcgui), but I think it is solved now. I can send you a new version if you want. There is still one serious bug; because of the new subdirectory structure for components, users installing the new version may end up with both old and new components in the mcstas directory. This is bound to cause confusion and I have not yet decided the correct way to solve it. About your problems on the SGI: > 1- When on a SGI machine, I launch mcgui with the example tutorial > in14_tut (from web) > > mica~farhi 32% mcgui in14_tut.instr > Ambiguous use of expand => resolved to "expand" => at > /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038. > Ambiguous use of expand => resolved to "expand" => at > /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075. Hm, this warning addresses the syntax in the source for Perl/Tk. What version of Perl/Tk is installed? Anyway, this sounds completely harmless (but annoying anyway). It will probably go away if the "-w" switch in the first line of mcgui.pl is removed (please tell me if it does). > Then if I try to compile instrument > mcstas -t -o in14_tut.out.c in14_tut.instr > > Then I crashes (mcgui disappears, core dumped). No 'cc' call is > displayed in mcgui, but I think the problem occurs here. > The manual processing works ok. > 2- When using the POLARISATION macro, mcstas warns about comps that do > not handle that, but also crashes (seg fault) at the end. > The '.c' file is generated anyway. Not good! Unfortunately, I could not reproduce these two crashes. That makes it quite difficult to give suggestions. Would it be possible to re-establish my "nielsen" account at the ILL? Then I could just log in and try it myself, and hopefully the cause would be apparent in 10 minutes? - Kristian. From farhi at ill.fr Thu Feb 10 11:45:17 2000 From: farhi at ill.fr (Farhi) Date: Thu, 10 Feb 2000 11:45:17 +0100 Subject: Bugs in McStas/McGUI Message-ID: <38A296BD.5136980A@ill.fr> Hy again just a note to tell you about strange behaviours of McStas 1.2 1- When on a SGI machine, I launch mcgui with the example tutorial in14_tut (from web) mica~farhi 32% mcgui in14_tut.instr Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038. Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075. Then if I try to compile instrument mcstas -t -o in14_tut.out.c in14_tut.instr Then I crashes (mcgui disappears, core dumped). No 'cc' call is displayed in mcgui, but I think the problem occurs here. The manual processing works ok. 2- When using the POLARISATION macro, mcstas warns about comps that do not handle that, but also crashes (seg fault) at the end. The '.c' file is generated anyway. Cheers again. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From ron at ill.fr Mon Feb 14 13:56:11 2000 From: ron at ill.fr (Ron Ghosh) Date: Mon, 14 Feb 2000 13:56:11 +0100 Subject: McStas installation and Perl References: <01JLQJKNH5EK91C1U8@risoe.dk> Message-ID: <38A7FB6B.BE28D4A6@ill.fr> It was a great pleasure to see you again, Kristian. Inevitably configure specialists have thought of the most improbable mix of configurations! Thanks for the hints. Emmanual has hit a problem with the shared mcgui - I think he has told you. He is away at present. I'll take it up with him when he returns in a day or so. If you have any suggestions I'd be interested to hear from you. Best wishes, and keep on with the good work, Ron -- Ron Ghosh, Institut Laue Langevin, B.P. 156 tel: +33-476207178 38042 Grenoble cedex 9, FRANCE fax: +33-476483906 From kristian.nielsen at risoe.dk Wed Feb 16 10:46:54 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 16 Feb 2000 10:46:54 +0100 Subject: Bugs in McStas/McGUI In-Reply-To: <38A94485.EBBD3D5A@ill.fr> (message from Farhi on Tue, 15 Feb 2000 13:20:21 +0100) Message-ID: > Date: Tue, 15 Feb 2000 13:20:21 +0100 > From: Farhi > you can use my login on firewall.ill.fr : Ok, thanks. > For the polarisation error, I will make some other checks when I got time. Do not worry, I found the problem easily after logging in on mica. It was a stupid cut-and-paste error. Unfortunately, I was not able to debug the problems with mcgui. The ILL firewall seems to completely block all X windows access in both directions now (I think previously ILL-local applications could be displayed on remote X terminals). So it looks like we have to debug manually. As a start, try to reproduce the crash inside the perl debugger. Start mcgui with the command perl -d /usr/ill/bin/mcgui in14_tut.instr and type r to start the program. Then send the complete output when it crashes. - Kristian. From kim.lefmann at risoe.dk Tue Feb 15 13:04:22 2000 From: kim.lefmann at risoe.dk (Kim Lefmann) Date: Tue, 15 Feb 2000 13:04:22 +0100 (CET) Subject: mirror reflection In-Reply-To: <38A93A10.265DA84F@psi.ch> Message-ID: Dear Peter, The mirror component should not be difficult to use if you realize that it should be rotated 90 degrees around the Y-axis to be used in a usual geometry. Unrotated, the mirror just intersects the neutron flight direction (z) at right angles. Perhaps we should write this in the manual(!) The bottom nearest corner of the mirror is placed in Origo of the local cordinate system, so you need to shift the mirror with respect to the beam centre by "yheight/2", if you see what I mean. I can see that this is not really a convenient component to use. If you work with it for a little while and tell us how exactly you would like it to work, we will rebuild it for you in a short while. Did you, by the way, notice that McStas release 1.2. is out now? There are especially some improved graphical front ends and an adaptive source, which could be useful for you. Yours, Kim --------------------------- Kim Lefmann Dept. Cond. Matt. Phys. & Chem. Risoe National Laboratory Phone: +45 46 77 47 26 Fax: +45 46 77 47 90 On Tue, 15 Feb 2000, Peter [iso-8859-1] B?ni wrote: > Dear Kim > > In McStas there exists a component for reflection from a mirror. Somehow > I do not know how to correctly use it. The definition for the size of > the > mirror and the coordinate system are not in the same spirit as for the > monochromator component. Is this correct? Do you have an example for a > simulation that uses a mirror? Could you send me an example, if you have > one? > > Best regards Peter > > From farhi at ill.fr Wed Feb 16 14:09:55 2000 From: farhi at ill.fr (Farhi) Date: Wed, 16 Feb 2000 14:09:55 +0100 Subject: Bugs in McStas/McGUI References: <01JLZ0W0AJMM91DJFO@risoe.dk> Message-ID: <38AAA1A3.88FAE9AE@ill.fr> Here is the debug output for perl -wd mcgui.pl in14_tut.instr cheers. EF. mica~farhi 55% mcgui.pl in14_tut.instr Loading DB routines from perl5db.pl version 1.01 Emacs support available. Enter h or `h h' for help. Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_pe rl/Tk/Text.pm line 1038. require Tk/Text.pm called at (eval 5) line 2 eval 'require Tk::Text ;' called at /usr/ill/perl/lib/base.pm line 36 base::import('base', 'Tk::Text') called at /usr/ill/lib/perl5/site_perl/ Tk/TextUndo.pm line 13 Tk::TextUndo::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 require Tk/TextUndo.pm called at mcgui.pl line 12 main::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 103 8 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_pe rl/Tk/Text.pm line 1075. require Tk/Text.pm called at (eval 5) line 2 eval 'require Tk::Text ;' called at /usr/ill/perl/lib/base.pm line 36 base::import('base', 'Tk::Text') called at /usr/ill/lib/perl5/site_perl/ Tk/TextUndo.pm line 13 Tk::TextUndo::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 require Tk/TextUndo.pm called at mcgui.pl line 12 main::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 107 5 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 main::(mcgui.pl:3): if($ENV{"MCSTAS"}) { DB<1> r ******** Here is the program start *********************** Signal SEGV at mcgui.pl line 375 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::Widget::waitVariable('Tk::Toplevel=HASH(0x10c171a0)', 'SCALAR(0x106a de78)') called at mcgui.pl line 380 main::dialog_get_out_file('MainWindow=HASH(0x10abdacc)', 'in14_tut.instr ', 1) called at mcgui.pl line 416 main::compile_instrument('MainWindow=HASH(0x10abdacc)', 1) called at mcg ui.pl line 436 main::menu_compile('MainWindow=HASH(0x10abdacc)') called at mcgui.pl lin e 562 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1134 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1134 Tk::__ANON__('Tk::Menu=HASH(0x10b52674)', 'active') called at /usr/ill/l ib/perl5/site_perl/Tk/Menu.pm line 530 Tk::Menu::Invoke('Tk::Menu=HASH(0x10b52674)', 1) called at /usr/ill/perl /lib/perl5db.pl line 1136 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::MainLoop() called at mcgui.pl line 745 Abort (core dumped) -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From ron at ill.fr Wed Feb 16 18:30:23 2000 From: ron at ill.fr (Ron Ghosh) Date: Wed, 16 Feb 2000 18:30:23 +0100 Subject: Bugs in McStas/McGUI-2 References: <01JLZ0W0AJMM91DJFO@risoe.dk> Message-ID: <38AADEAF.333BE852@ill.fr> I thought I was making some progress when I found that Emmanuel had two components that weren't in the library, i.e. a manual compilation using mcstas stopped at this first stage. I quickly excised the two modules, but then it still crashed, though the mcstas stage window stayed up longer(!). I then did a hand compile of the c from mcstas, and it brought up a number of odd errors. Perhaps the SGI error returns are not treated well enough, and mcgui ploughs on relentlessly and crashes. It is too late for attachments - I'll simply copy in results: Manual compilation of slightly hacked code (removing SOURCE and MON1D, and replacing source by cold_guide at absolute 0,0,0) ---------------------------------------------------------------------- is1 95% /usr/ill/perl/bin/perl -d /usr/ill/bin/mcgui in14r.instr Loading DB routines from perl5db.pl version 1.01 Emacs support available. Enter h or `h h' for help. Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038. require Tk/Text.pm called at (eval 5) line 2 eval 'require Tk::Text ;' called at /usr/ill/perl/lib/base.pm line 36 base::import('base', 'Tk::Text') called at /usr/ill/lib/perl5/site_perl/Tk/TextUndo.pm line 13 Tk::TextUndo::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 require Tk/TextUndo.pm called at /usr/ill/bin/mcgui line 12 main::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075. require Tk/Text.pm called at (eval 5) line 2 eval 'require Tk::Text ;' called at /usr/ill/perl/lib/base.pm line 36 base::import('base', 'Tk::Text') called at /usr/ill/lib/perl5/site_perl/Tk/TextUndo.pm line 13 Tk::TextUndo::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 require Tk/TextUndo.pm called at /usr/ill/bin/mcgui line 12 main::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 main::(/usr/ill/bin/mcgui:3): if($ENV{"MCSTAS"}) { DB<1> r Signal SEGV at /usr/ill/bin/mcgui line 375 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::Widget::waitVariable('Tk::Toplevel=HASH(0x10c04110)', 'SCALAR(0x106a8f2c)') called at /usr/ill/bin/mcgui line 380 main::dialog_get_out_file('MainWindow=HASH(0x10ab9b68)', 'in14r.instr', 1) called at /usr/ill/bin/mcgui line 416 main::compile_instrument('MainWindow=HASH(0x10ab9b68)', 1) called at /usr/ill/bin/mcgui line 436 main::menu_compile('MainWindow=HASH(0x10ab9b68)') called at /usr/ill/bin/mcgui line 562 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1134 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1134 Tk::__ANON__('Tk::Menu=HASH(0x10b3df28)', 'active') called at /usr/ill/lib/perl5/site_perl/Tk/Menu.pm line 530 Tk::Menu::Invoke('Tk::Menu=HASH(0x10b3df28)', 1) called at /usr/ill/perl/lib/perl5db.pl line 1136 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::MainLoop() called at /usr/ill/bin/mcgui line 745 Abort (core dumped) not really much help I'm afraid! It just seems to be in the event loop. ----------------------------------------------------------------------------- Is it because the compilation failed on the SGI? is1 103% mcstas -o fff.c in14r.instr is1 109% cc -c fff.c cc-1174 cc: WARNING File = mcstas-r.c, Line = 153 The variable "k" was declared but never referenced. int i,j, k; ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 460 The variable "x" was declared but never referenced. double x,y,z; ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 460 The variable "y" was declared but never referenced. double x,y,z; ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 460 The variable "z" was declared but never referenced. double x,y,z; ^ cc-1552 cc: WARNING File = mcstas-r.c, Line = 962 The variable "v" is set but never used. double v, D, t_in, t_out, y_in, y_out; ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 1073 The variable "mcrt_v1x" was declared but never referenced. rotate(xt, yt, zt, xi, yi, zi, theta, nx, ny, nz); ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 1073 The variable "mcrt_v1y" was declared but never referenced. rotate(xt, yt, zt, xi, yi, zi, theta, nx, ny, nz); ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 1073 The variable "mcrt_v1z" was declared but never referenced. rotate(xt, yt, zt, xi, yi, zi, theta, nx, ny, nz); ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 1074 The variable "mcrt_v1x" was declared but never referenced. rotate(*xo, *yo, *zo, xt, yt, zt, phi, xi, yi, zi); ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 1074 The variable "mcrt_v1y" was declared but never referenced. rotate(*xo, *yo, *zo, xt, yt, zt, phi, xi, yi, zi); ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 1074 The variable "mcrt_v1z" was declared but never referenced. rotate(*xo, *yo, *zo, xt, yt, zt, phi, xi, yi, zi); ^ cc-1174 cc: WARNING File = mcstas-r.c, Line = 1202 The variable "pos" was declared but never referenced. int i, j, pos; ^ cc-1008 cc: ERROR File = in14r.instr, Line = 102 A new-line character appears inside a string literal. printf("Incident Ki = %f Angs-1, Exchange Q=%f Angs-1, Final Kf = %f ^ cc-1018 cc: ERROR File = in14r.instr, Line = 103 An unmatched left parentheses "(" appears in an expression. Angs-1\n",Ki,Q,Kf); ^ cc-1007 cc: ERROR File = in14r.instr, Line = 103 The indicated token is not valid in this context. Angs-1\n",Ki,Q,Kf); ^ cc-1008 cc: ERROR File = in14r.instr, Line = 103 A new-line character appears inside a string literal. Angs-1\n",Ki,Q,Kf); ^ cc-1174 cc: WARNING File = fff, Line = 2206 The variable "mctr2" was declared but never referenced. Rotation mctr1, mctr2; ^ cc-1174 cc: WARNING File = /usr/ill/lib/mcstas/Guide.comp, Line = 45 The variable "vlen2" was declared but never referenced. double vlen2,nlen2; /* Vector lengths squared */ ^ cc-1174 cc: WARNING File = /usr/ill/lib/mcstas/Guide.comp, Line = 50 The variable "lwhalf" was declared but never referenced. double lwhalf = l*whalf, lhhalf = l*hhalf; ^ cc-1174 cc: WARNING File = /usr/ill/lib/mcstas/Guide.comp, Line = 50 The variable "lhhalf" was declared but never referenced. double lwhalf = l*whalf, lhhalf = l*hhalf; ^ cc-1174 cc: WARNING File = /usr/ill/lib/mcstas/Guide.comp, Line = 142 The variable "x" was declared but never referenced. double x; ^ cc-1174 cc: WARNING File = /usr/ill/lib/mcstas/Guide.comp, Line = 143 The variable "i" was declared but never referenced. int i; ^ 4 errors detected in the compilation of "fff.c". ------------------------------------------------------------------------ I hope this might give some hint to you! Bon soir, Ron -- Ron Ghosh, Institut Laue Langevin, B.P. 156 tel: +33-476207178 38042 Grenoble cedex 9, FRANCE fax: +33-476483906 From kristian.nielsen at risoe.dk Thu Feb 17 10:32:31 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 17 Feb 2000 10:32:31 +0100 Subject: Bugs in McStas/McGUI-2 In-Reply-To: <38AADEAF.333BE852@ill.fr> (message from Ron Ghosh on Wed, 16 Feb 2000 18:30:23 +0100) Message-ID: Hi Ron and Emmanuel, Thanks for the debug output. I took a look at them and have some ideas. I think the most likely problem is that mcgui fails to start the "mcstas" program. In that case the mcgui in v1.2 starts running two processes simultaneously in Perl/Tk (due to a bug in mcgui). This usually causes spectacular crashes. I just tried running mcgui where I artificially made mcgui fail to spawn mcstas, and got an error similar to what you reported. I fixed the bug in mcgui, and the new version does not crash. I put the new version of mcgui up on host "mica", in the directory "/home/cs/nielsen/mcgui-crash" as the file "mcgui-new.pl". Please try the new version, and see if it works any better. In any case, please let me know how it works! About the compilation problem with in14_tut.instr that Ron had: this is caused by an error in the file; in line 102 there is a spurious newline inside a string constant (as reported by the C compiler). I believe this is unrelated to the mcgui problem. A fixed instrument file is found in the same directory as the new mcgui. - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 From ron at ill.fr Thu Feb 17 16:50:19 2000 From: ron at ill.fr (Ron Ghosh) Date: Thu, 17 Feb 2000 16:50:19 +0100 Subject: Bugs in McStas/McGUI-2 References: <01JM0EOI7MKE91D5Q7@risoe.dk> Message-ID: <38AC18BB.6D9A81BB@ill.fr> Thanks very much for your comments and corrections. I shall be away for a few days now, but Emmanuel hopes to find time tomorrow to check out the changes. As usual it is the error detection that complicates programming, and we certainly can provide errors! Best wishes, Ron. -- Ron Ghosh, Institut Laue Langevin, B.P. 156 tel: +33-476207178 38042 Grenoble cedex 9, FRANCE fax: +33-476483906 From farhi at ill.fr Thu Feb 17 19:36:54 2000 From: farhi at ill.fr (Farhi) Date: Thu, 17 Feb 2000 19:36:54 +0100 Subject: mcgui-new Message-ID: <38AC3FC6.942587D@ill.fr> Hy Kristian, I'm afraid it does not work better !! I've tried to look inside mcgui.pl It seems that that error occurs during the waitVariable call of the do loop (function dialog_get_out_file) do { $dlg->waitVariable(\$state); } until $state; Here is the perldb output (which is about the same as before, I've added some 'print breakpoints'...) : mica~farhi 44% ./mcgui-new.pl in14_tut.instr Loading DB routines from perl5db.pl version 1.01 Emacs support available. Enter h or `h h' for help. Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_pe rl/Tk/Text.pm line 1038. require Tk/Text.pm called at (eval 5) line 2 eval 'require Tk::Text ;' called at /usr/ill/perl/lib/base.pm line 36 base::import('base', 'Tk::Text') called at /usr/ill/lib/perl5/site_perl/ Tk/TextUndo.pm line 13 Tk::TextUndo::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 require Tk/TextUndo.pm called at ./mcgui-new.pl line 12 main::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 103 8 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1038 Ambiguous use of expand => resolved to "expand" => at /usr/ill/lib/perl5/site_pe rl/Tk/Text.pm line 1075. require Tk/Text.pm called at (eval 5) line 2 eval 'require Tk::Text ;' called at /usr/ill/perl/lib/base.pm line 36 base::import('base', 'Tk::Text') called at /usr/ill/lib/perl5/site_perl/ Tk/TextUndo.pm line 13 Tk::TextUndo::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 require Tk/TextUndo.pm called at ./mcgui-new.pl line 12 main::BEGIN() called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 107 5 eval {...} called at /usr/ill/lib/perl5/site_perl/Tk/Text.pm line 1075 main::(./mcgui-new.pl:3): if($ENV{"MCSTAS"}) { DB<1> r after savefocus before for before get_out_file_next call before run_dialog_popup call before run_dialog_reader after run_dialog_reader after fileevent before do waitVariable Signal SEGV at ./mcgui-new.pl line 380 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::Widget::waitVariable('Tk::Toplevel=HASH(0x10c19248)', 'SCALAR(0x106a de78)') called at ./mcgui-new.pl line 388 main::dialog_get_out_file('MainWindow=HASH(0x10ac44a4)', 'in14_tut.instr ', 1) called at ./mcgui-new.pl line 429 main::compile_instrument('MainWindow=HASH(0x10ac44a4)', 1) called at ./m cgui-new.pl line 449 main::menu_compile('MainWindow=HASH(0x10ac44a4)') called at ../mcgui-new. pl line 578 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1134 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1134 Tk::__ANON__('Tk::Menu=HASH(0x10b2d450)', 'active') called at /usr/ill/l ib/perl5/site_perl/Tk/Menu.pm line 530 Tk::Menu::Invoke('Tk::Menu=HASH(0x10b2d450)', 1) called at /usr/ill/perl /lib/perl5db.pl line 1136 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::MainLoop() called at ./mcgui-new.pl line 761 Abort (core dumped) Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristian.nielsen at risoe.dk Wed Feb 23 09:08:08 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 23 Feb 2000 09:08:08 +0100 Subject: mcgui-new In-Reply-To: <38AC3FC6.942587D@ill.fr> (message from Farhi on Thu, 17 Feb 2000 19:36:54 +0100) Message-ID: > Date: Thu, 17 Feb 2000 19:36:54 +0100 > From: Farhi > I'm afraid it does not work better !! Ok, that is just the way it is then. > I've tried to look inside mcgui.pl > It seems that that error occurs during the waitVariable call of the do > loop (function dialog_get_out_file) Yes. I am pretty sure that the problem is a conflict between the main mcgui process, the spawned compiler process, and the Tk/X Windows System. I am not sure of the details though, so I would ask you to run two more tests that will help to pinpoint the problem. I have put two new version of mcgui on mica, in ~nielsen/mcgui-crash/. They are called mcgui-1.pl and mcgui-2.pl. They are both identical to the previous mcgui except for the exec() call that actually starts the mcstas compiler program. Could you try running both of them and let me know the results? The commands would be /usr/ill/perl/bin/perl -d mcgui-1.pl in14_tut.instr /usr/ill/perl/bin/perl -d mcgui-2.pl in14_tut.instr and for each command, just select "File"->"Compile instrument". I also did a web search, and for a similar problem it was suggested to install a newer version of perl. Maybe Ron will want to try that at some point. The mcgui-1.pl starts a simple "echo" command instead of the McStas and C compiler. On my machine, compilation emits two "EXEC call succeeded ok" messages, and succeeds. The mcgui-2.pl does not start any commands at all. On my machine, compilation fails with "Error: exec() of mcstas failed!" and two curious "Callback called exit." messages. - Kristian. From farhi at ill.fr Wed Feb 23 09:33:12 2000 From: farhi at ill.fr (Farhi) Date: Wed, 23 Feb 2000 09:33:12 +0100 Subject: mcgui tests and more Message-ID: <38B39B48.CFA9AF74@ill.fr> Hy Kristian, the mcgui saga goes on. I've tested the two versions 1- mcgui-1.pl : crash, here if the trace output DB<1> r Signal SEGV at mcgui-1.pl line 375 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::Widget::waitVariable('Tk::Toplevel=HASH(0x10c18260)', 'SCALAR(0x106ade78)') called at mcgui-1.pl line 380 main::dialog_get_out_file('MainWindow=HASH(0x10abeba4)', 'in14_tut.instr', 1) called at mcgui-1.pl line 419 main::compile_instrument('MainWindow=HASH(0x10abeba4)', 1) called at mcgui-1.pl line 439 main::menu_compile('MainWindow=HASH(0x10abeba4)') called at mcgui-1.pl line 568 main::__ANON__() called at /usr/ill/perl/lib/perl5db.pl line 1134 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1134 Tk::__ANON__('Tk::Menu=HASH(0x10b53f4c)', 'active') called at /usr/ill/lib/perl5/site_perl/Tk/Menu.pm line 530 Tk::Menu::Invoke('Tk::Menu=HASH(0x10b53f4c)', 1) called at /usr/ill/perl/lib/perl5db.pl line 1136 eval {...} called at /usr/ill/perl/lib/perl5db.pl line 1136 Tk::MainLoop() called at mcgui-1.pl line 751 Abort (core dumped) 2- mcgui-2.pl : cannot fork DB<1> r DB::fake::(/usr/ill/perl/lib/perl5db.pl:2083): 2083: "Debugged program terminated. Use `q' to quit or `R' to restart."; Forked, but do not know how to change a TTY. Define $DB::fork_TTY or get_fork_TTY(). I'm now finisshing a general Monitor component. It can handle any kind of output (0D, 1D and 2D, and multiple 1D output), with 'intelligent' features when they are not provided by user. This should avoid people from writing dozens of monitors on the same model. I tell you when I incorporate it to the unofficial components and automatic web page. This latter works ok, but can you also sort components by category in the list ? Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristian.nielsen at risoe.dk Wed Feb 23 10:06:24 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 23 Feb 2000 10:06:24 +0100 Subject: mcgui tests and more In-Reply-To: <38B39B48.CFA9AF74@ill.fr> (message from Farhi on Wed, 23 Feb 2000 09:33:12 +0100) Message-ID: > Date: Wed, 23 Feb 2000 09:33:12 +0100 > From: Farhi > I've tested the two versions > 1- mcgui-1.pl : crash, here if the trace output > 2- mcgui-2.pl : cannot fork Ok, thanks for the information. It seems pretty clear that the problem is that when another program is called (whether the mcstas compiler or a simple echo), it causes a conflict with the Tk/X connection. The "cannot fork" is just the Perl debugger; could you should try mcgui-2.pl without the debugger and see if it crashes? If possible, we should also try with a newer version of Perl, though that will probably mean a lot of work for Ron. I will think some more about the problem and maybe ask on the Perl/Tk mailing list. > I'm now finisshing a general Monitor component. It can handle any kind > of output (0D, 1D and 2D, and multiple 1D output), with 'intelligent' > features when they are not provided by user. This should avoid people > from writing dozens of monitors on the same model. I tell you when I Sounds very good! A solution to the "dozens of monitors" problem would be very nice indeed! > incorporate it to the unofficial components and automatic web page. This > latter works ok, but can you also sort components by category in the > list ? In fact, I already did :-) http://neutron.risoe.dk/mcstas/mcdoc/test/ My development version of McStas also uses subdirectories for components as you suggested. I also have default values for component parameters and instrument parameters that have string values. - Kristian. From farhi at ill.fr Wed Feb 23 10:24:35 2000 From: farhi at ill.fr (Farhi) Date: Wed, 23 Feb 2000 10:24:35 +0100 Subject: mcgui tests and more References: <01JM8RI8DXZ68WW9ML@risoe.dk> Message-ID: <38B3A753.BCC1C0EB@ill.fr> The mcgui-2 still crashes. But anyway, it's strange to see mcgui crash on SGI but not on Linux... On mica/SGI/IRIX : This is perl, version 5.005_02 built for -irix on tequila/Linux/i586 : This is perl, version 5.005_03 built for i586-linux on macfarhi/Linux/ppc : This is perl, version 5.005_03 built for ppc-linux Perhaps the _03 is better... Thanks pal. EF. Kristian Nielsen wrote: > > Date: Wed, 23 Feb 2000 09:33:12 +0100 > > From: Farhi > > > I've tested the two versions > > 1- mcgui-1.pl : crash, here if the trace output > > 2- mcgui-2.pl : cannot fork > > Ok, thanks for the information. It seems pretty clear that the problem > is that when another program is called (whether the mcstas compiler or a > simple echo), it causes a conflict with the Tk/X connection. The "cannot > fork" is just the Perl debugger; could you should try mcgui-2.pl without > the debugger and see if it crashes? If possible, we should also try with > a newer version of Perl, though that will probably mean a lot of work > for Ron. I will think some more about the problem and maybe ask on the > Perl/Tk mailing list. > > > I'm now finisshing a general Monitor component. It can handle any kind > > of output (0D, 1D and 2D, and multiple 1D output), with 'intelligent' > > features when they are not provided by user. This should avoid people > > from writing dozens of monitors on the same model. I tell you when I > > Sounds very good! A solution to the "dozens of monitors" problem would > be very nice indeed! > > > incorporate it to the unofficial components and automatic web page. This > > latter works ok, but can you also sort components by category in the > > list ? > > In fact, I already did :-) > > http://neutron.risoe.dk/mcstas/mcdoc/test/ > > My development version of McStas also uses subdirectories for components > as you suggested. I also have default values for component parameters > and instrument parameters that have string values. > > - Kristian. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristian.nielsen at risoe.dk Wed Feb 23 10:50:22 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 23 Feb 2000 10:50:22 +0100 Subject: mcgui tests and more In-Reply-To: <38B3A753.BCC1C0EB@ill.fr> (message from Farhi on Wed, 23 Feb 2000 10:24:35 +0100) Message-ID: > Date: Wed, 23 Feb 2000 10:24:35 +0100 > From: Farhi > The mcgui-2 still crashes. But anyway, it's strange to see mcgui crash on SGI I see, that is surprising ... I will look into it. > On mica/SGI/IRIX : This is perl, version 5.005_02 built for -irix Hm, this is quite strange. When I log into mica, I get mica 3% /usr/ill/perl/bin/perl -v This is perl, version 5.004_04 built for IP22-irix mica 2% /usr/sbin/perl -v This is perl, version 5.004_04 built for irix-n32 Where is the Perl 5.005_02 on mica? I am starting to suspect that the problem may be caused by the mixing of different perl versions on mica. Mixing different versions is a sure way to get in trouble with Perl, in my experience... - Kristian. From kristian.nielsen at risoe.dk Wed Feb 23 11:17:52 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 23 Feb 2000 11:17:52 +0100 Subject: Investigating mcgui crash on mica Message-ID: Hi Emmanuel, Ok, I will start investigating the problem in more detail. I plan to use the X server on macfarhi to display the Tk stuff on (I will write some simple test programs that will not need any input!). I will try not to disturb anything on the screen, but if strange windows start to pop up, I am probably the one causing it. If it causes any trouble for you let me know, and I will think of something else to try. - Kristian. From farhi at ill.fr Thu Feb 24 20:37:58 2000 From: farhi at ill.fr (Farhi) Date: Thu, 24 Feb 2000 20:37:58 +0100 Subject: mcdoc References: <01JLPGSZB0BU91BJNC@risoe.dk> Message-ID: <38B58896.87DB233D@ill.fr> Hy Kristian, I've just finished my general monitor. It seems that it can handle any set of 1D monitors at the same position, as well as a 2D monitor, and at the samme time a neutron variable list (such as the one produced by my old kw_monitor). All current monitors appear obsolete , except 3D if some exist !, or special ones (some exotic variables). It handles many options, default values, and automatic limits... I've started to test it, and it's ok for 0D, multiple 1D at the same place, list of neutrons (such as kw_monitor), 2D monitors, and mixtures of all this ! About mcdoc: 1- it's great (subdirectories, history, links...) 2- I've seen that there are default vaules, sub directories, optional parameters. great 3- you should add a line in index.html saying what is a bold component vs a normal font one 4- I usually define lots of OUTPUT parameters, in order not to mix them with possible other variables from other components. This produces a long list of output parameters. I think it's better to move the in/out param sections at the end of the page 5- It could be fine to set tags () and a short (1 line centered) table of contents at the begining of html description 6- in mcstas DETECTOR_OUT... functions, also print out the name of output file after Detector:.... [filename] Now how should we share the two pages ? I make a tar of my components and send it to you by mail, and you do the same ? I think a go home now (it's sure time !!) EF. Kristian Nielsen wrote: > Hi Emmanuel, > > I was much inspired by our discussion of the automatic generation of > documentation (web pages, ...) from the header comments in components. I > now have a first working version, and I hope we can work together on > developing it. > > First, to see the results go to > > http://neutron.risoe.dk/mcstas/mcdoc/test/ > > These pages were generated automatically by McDoc from the component > sources. The Perl program McDoc itself is found at > > http://neutron.risoe.dk/mcstas/mcdoc/test/mcdoc.pl > > To generate a set of web pages, you copy the component source codes into > a directory and issue the command > > perl mcdoc.pl *.comp > > Components can also be placed in subdirectories, as seen on the > demonstration pages, using a command like > > perl mcdoc.pl */*.comp > > The comment syntax uses %IDENTIFICATION, %DESCRIPTION, %PARAMETERS, and > %END keywords to mark the different sections; keywords may be > %abbreviated. > > * In the identification section, "author:" (or "written by" for backwards > compatibility) denote author; "date:", "version:", and "origin:" are > also supported. These must be on a single line. Everything else is part > of the "short description" of the component. > > * In the parameters section, descriptions have the form > "name: [unit] text" or "name: text [unit]". These may span multiple > lines; subsequent lines must be indented by at least four spaces. Note > that square brackets [] should be used for units. Normal parenthesis are > also supported for backwards compatibility, but nested parenthesis do > not work well. > > * The description section contains text in free format. > > * After %END, no more header text is parsed. > > I also have an idea for how we can cooperate on maintaining the > component library. We need to have each a master directory containing > the components that each of us maintain. For each web server mirror, > every night (or however often), an automatic job copies the contents of > both master directory into a single directory on the web server and runs > the mcdoc.pl script on the contents. This way, either of us can update > our private master directory individually and the change will be > reflected on both the Ris? and ILL pages. > > So, what do you think? I suggest you try to convert the headers of a few > of your own components and see how it works out. You will probably have > some suggestions for me about how to improve the header syntax. Once we > have a good agreement on the syntax, we can start rewriting all the > headers in the library (I suggest that I handle the 39 components that > are part of the official v1.2 release and you handle the rest of the > components on the ILL page). > > I also have other plans for how to extend mcdoc. The documentation could > be made accessible from within the graphical user interface. The > web-pages should have links to postscript files of the individual > section in the McStas manual where relevant. And it should be possible > to put in pictures and links to other web pages (sample instrument for > example) in a %LINKS section in the header. > > - Kristian. > > -- > Kristian Nielsen kristian.nielsen at risoe.dk > Ris? National Laboratory > Condensed Matter Physics and Chemistry Department > Tel. +45 4677 5515 Fax +45 4677 4790 -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue des Martyrs, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From farhi at ill.fr Tue Feb 29 17:04:34 2000 From: farhi at ill.fr (Farhi) Date: Tue, 29 Feb 2000 17:04:34 +0100 Subject: Update of Web site Message-ID: <38BBEE12.AA60C542@ill.fr> Hy Kristian, I've updated the ILL web site, to point to your official components page, and to my reduced unofficial web page. You will see there the Monitor_nD, which replaces all other existing monitors easely. For instance (I just put the option string) "energy" is equivalent to E_monitor "x y" is equivalent to PSD_monitor "theta phi" is a PSD_4PI "list all neutrons kx ky kz energy" is a dump of all passing neutrons (k,w) you can also use 4 shapes for detector, as well as many options. Automatic page is at Cheers. EF. NB : Ron will re-install all perl stuff on SGI/IRIX next week perhaps... -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hansen at ill.fr Thu Feb 24 11:22:21 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Thu, 24 Feb 2000 11:22:21 +0100 Subject: Suggestions for McStas Message-ID: <38B50658.6B5F6693@ill.fr> Dear Kristian, McStas 1.2 works fine, thanks for all your work. However, I've got some (disordered) suggestions for amelioration, as you asked for it. 1. Having DEFINITION PARAMETERS (so strings, etc.) also for the INSRument, not only for the COMPonent would be fine. 2. The 'make' functionality of mcrun and mcgui is limited to the *.instr file. It would be great, if these front ends could check as well for invoked *.comp and force recompiling if these are newer than *.out and *.c. 3. The trace (mcdisplay) option in mcgui should accept options like --multi and --inspect. 4. The circle in MCDISPLAY draws only a rough polygon. that's okay for small circles, but if I present my curved 1D PSD, having a radius of about 1.5 meters, I cannot see precisely enough the neutron's trajectory in the detection gap. That's not really a problem for me, as I can work around with some hundred short lines on a circle (permitting as well to draw only a part of a circle), but maybe for others ... 5. The Beamstop_rectangular component draws very funny lines with mcdisplay. 6. It would be a great job (a lot of work), but really useful, to have some kind of a standard adaptation procedure/macro/subroutine also for other components than the source, as well the possibility to invoke it into new/modified components in a standardized way. I am thinking for instance of targeting in monochromator crystals (e.g. for the vertical divergence a MC choice of phi is done which could result in neutrons never hitting neither sample or detector), or the implementation of a complex powder sample with several Bragg reflections, incoherent scattering, multiple scattering, etc. could become more efficient and maybe easier. Good luck, and thanks again, Thomas -- Dr. Thomas C HANSEN, Instrument Scientist D20, Diffraction Group Institut Max von Laue-Paul Langevin, BP 156, 38042 Grenoble C?dex 9, France ILL4-1st floor room 100, Phone +33(0)476207044, Fax +33(0)476207648 mailto:hansen at ill.fr, http://www.ill.fr/YellowBook/D20 Private: 13, all?e des ?tangs, 38240 Meylan, France, +33(0)476180553 From kristian.nielsen at risoe.dk Mon Mar 6 13:42:23 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: Mon, 06 Mar 2000 13:42:23 +0100 Subject: New on-line component documentation for McStas Message-ID: <01JMPQK3J2NK8X0Q6T@risoe.dk> Dear all McStas users, A new set of web pages containing documentation of the component library have been installed on the McStas web pages at http://neutron.risoe.dk/mcstas/mcdoc/components/ These pages are generated automatically by a program called McDoc from component sources at both Risoe and ILL and thus have a much better chance of being up-to-date than the previous manually built on-line documentation. I hope that they will prove useful to users of McStas. It is fairly easy to add your own components into this system. See the documentation at http://neutron.risoe.dk/mcstas/mcdoc/ for details. - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt From farhi at ill.fr Tue Mar 7 17:32:31 2000 From: farhi at ill.fr (Farhi) Date: Tue, 07 Mar 2000 17:32:31 +0100 Subject: New tested components for McStas Message-ID: <38C52F1E.E5C40370@ill.fr> Hello McStas users, I here annouce 3 new / updated components for McStas. These are available at < http://neutron.risoe.dk/mcstas/mcdoc/components/ > and < http://www.ill.fr/tas/mcstas/components/ > 1-The Source_Optimizer (v 0.07) is a component that optimizes the McStas neutron shots in order to reach a given place in the simulation. These places (you should even be able to use more that one) are indicated by the Monitor_Optimizer positions. The Source_Optimizer only requires 1 parameter (it acts on the whole neutron beam) that is a string, and can be empty. This 'options' parameter is parsed, and can contain some user choices concerning the optimization process, specified with flexible keywords. I personnally use : options = "", that is the default configuration. This component is 'intelligent' and can adapt it's features to your simulation. The optimization is made on neutron variables x y vx vy vz, considered to be independent. The energy distribution is kept, as far as possible. The flux is kept of course. The speedup on neutron counts reaching monitors is at least of 20. I just obtained 50 in my last test ! (near the source, at a distance of 1 mm in my tests) COMPONENT optim_s = Source_Optimizer( options="") 2- The Monitor_Optimizer (v 0.07) works with the Source_Optimizer. It only requires x/y dimension (4 parameters) (near the optimisation point, usually sample or detector) COMPONENT optim_m = Monitor_Optimizer( xmin = -0.05, xmax = 0.05, ymin = -0.05, ymax = 0.05) 3- The Monitor_nD (v 0.13) is a general monitor that can act as any of all previous monitors. It only requires dimension (4 params in x/y size), and an 'options' string specifying what to monitor. This 'options' parameter is parsed, and can contain some user choices concerning the monitor. A 0D monitor is default (just flux). There are 25 variables available for monitoring (wavevector, speed, position, divergences, etc...), and you can decide to output these as 1D or 2D (related variables) signals. A log (list) of neutron variables is also possible ('list all neutrons' or 'list 1000 neutrons' options). A special 'auto limits' feature compute what are the necessary limits for the monitor. The shape of the monitor can be plane square, disk, sphere and cylinder. I just recorded a kz_kx image of neutron beam at sample position with (this one is just after the Monitor_Optimizer up-there, near my sample position, at a distance of 1 mm) COMPONENT MSample = Monitor_nD( xmin = -0.05, xmax = 0.05, ymin = -0.05, ymax = 0.05, options = "kx kz, all bins = 50, auto limits, file=MSample") I hope that these components will be usefull to you, and don't hesitate to contact me in case of questions, bugs, etc... Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From poehlman at ill.fr Wed Mar 1 14:13:55 2000 From: poehlman at ill.fr (Markus Poehlmann) Date: Wed, 01 Mar 2000 14:13:55 +0100 Subject: IN6 simulation Message-ID: <38BD1793.FA771D0C@ill.fr> Dear Kristian Nielsen, we want to simultate a Time of Flight instrument (ILL IN6) with the McStas program. For our 3 monochromators (one behind another) we would need a component that allows it for each neutron either to be propagated (in the original z direction) or to be scattered independently. Obviously this is not possible with the McStas monochromator component. Do you have any idea of what we would have to change in the original component ? Thank you for your help. Sincerely Markus Poehlmann For a better understanding of the problem, plaese see the picture: http://www.ill.fr/YellowBook/IN6/ -------------- next part -------------- A non-text attachment was scrubbed... Name: poehlman.vcf Type: text/x-vcard Size: 304 bytes Desc: Card for Markus Poehlmann URL: From kristian.nielsen at risoe.dk Wed Mar 1 14:53:47 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 1 Mar 2000 14:53:47 +0100 Subject: IN6 simulation In-Reply-To: <38BD1793.FA771D0C@ill.fr> (message from Markus Poehlmann on Wed, 01 Mar 2000 14:13:55 +0100) Message-ID: > Date: Wed, 01 Mar 2000 14:13:55 +0100 > From: Markus Poehlmann > Dear Kristian Nielsen, > > we want to simultate a Time of Flight instrument (ILL IN6) with the > McStas program. For our 3 monochromators (one behind another) we would > need a component that allows it for each neutron either to be propagated > (in the original z direction) or to be scattered independently. > Obviously this is not possible with the McStas monochromator component. I would suggest that you use the Mosaic_anisotropic component. This component is available in the new version 1.2 of McStas, which I believe is already installed at the ILL. It is a direct replacement of the old Monochromator component (same parameters), but it correctly handles many more non-standard configurations, including a transmission configuration like yours. See the manual for further details, or just ask again if you have any further questions. Good luck! - Kristian. From kristian.nielsen at risoe.dk Fri Mar 3 11:27:43 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 3 Mar 2000 11:27:43 +0100 Subject: mcdoc In-Reply-To: <38B58896.87DB233D@ill.fr> (message from Farhi on Thu, 24 Feb 2000 20:37:58 +0100) Message-ID: Hi Emmanuel, Thanks for the comments. They were as always very useful, and I have implemented all of them now (if you find something missing, please let me know). Your generic monitor is very interesting, and I am sure that it will prove very useful. I am really hoping that you will write some documentation in the same style as all the official components in the McStas manual, so that I can include it in the next official release. You do not have to use LaTeX, I will convert it for you from whatever format you prefer to use. I have also implemented a method for sharing our component libraries. We need to set up a special directory on a web server at each institute participating (currently only Ris? and ILL). This directory contains ONLY the source code for the components to be shared (ie. my directory contains the official components, your directory contains the rest). I have written a small shell script, http://neutron.risoe.dk/mcstas/support/farhi/builddocs.sh This script automatically downloads the component source codes from each web server into common subdirectories. It then downloads the newest mcdoc program from the Ris? server and re-builds all the documentation. On mica, I have set up a demonstration in the /home/cs/nielsen/mcdoc/ directory. The command ./builddocs.sh will download all components and build the web pages. Because of the firewall, it is necessary to first execute setenv http_proxy proxy.ill.fr:8888 What you need to do is to set up a directory on your web server and keep it updated with the newest source codes for the components you want to share. Then we can both use the builddocs.sh script to create a single component page with all components that are automatically kept synchronized. What do you think? Finally, with regard to the mcgui crash on SGI. From yours and Ron's emails, I got the impression that this problem was solved with the new Perl installation, is this correct? - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt From poehlman at ill.fr Thu Mar 2 17:56:58 2000 From: poehlman at ill.fr (Markus Poehlmann) Date: Thu, 02 Mar 2000 17:56:58 +0100 Subject: IN6 monochromator Message-ID: <38BE9D5A.D3A4FC1A@ill.fr> Dear Kristian Nielsen, Thank you very much for your recent e-mail, but we think there is no other way than to write an entirely new component. The problem is that in our case we cannot calculate with weight factors because in a bifurcation problem a neutron is either scattered or propagated unscattered. But in the semiclassical approach like in McStas the propagation probability is expressed by a weight factor. So what we would need is a M o n t e C a r l o choice between scattering and unscattered propagation. Could you please tell us how it would be possible to introduce something like this in our new monochromator component. Is there any C code or component available that tackles that problem? What e.g. does randnorm() exactly do? Thank you for your help Markus Poehlmann P.S.: May be you could discuss that that directly with Helmut Schober on the phone (+33 4 76 20 73 96) -------------- next part -------------- A non-text attachment was scrubbed... Name: poehlman.vcf Type: text/x-vcard Size: 304 bytes Desc: Card for Markus Poehlmann URL: From kristian.nielsen at risoe.dk Fri Mar 3 12:58:05 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 3 Mar 2000 12:58:05 +0100 Subject: IN6 monochromator In-Reply-To: <38BE9D5A.D3A4FC1A@ill.fr> (message from Markus Poehlmann on Thu, 02 Mar 2000 17:56:58 +0100) Message-ID: > Date: Thu, 02 Mar 2000 17:56:58 +0100 > From: Markus Poehlmann > So what we would need is a M o n t e C a r l o choice between scattering > and unscattered propagation. Could you please tell us how it would be This is exactly what the Mosaic_anisotropic component does. It computes the scattering probability for the given incoming neutron and makes a Monte Carlo choice between scattering or transmitting with this probability. See the manual for McStas v1.2 page 59. I think an example may be appropriate. I have written a simple instrument with three monochromators in a neutron beam, each one focusing at a different angle (88, 90, and 92 degrees) onto a detector. See http://neutron.risoe.dk/mcstas/support/poehlman/mono_test.html I hope this will get you started, otherwise just ask again, or phone me on the number below. > problem? What e.g. does randnorm() exactly do? It returns a random number from a normal distribution with mean zero and std. deviation 1. See manual page 82. - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt From kristian.nielsen at risoe.dk Fri Mar 3 13:17:34 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 3 Mar 2000 13:17:34 +0100 Subject: Suggestions for McStas In-Reply-To: <38B50658.6B5F6693@ill.fr> (message from Thomas C Hansen on Thu, 24 Feb 2000 11:22:21 +0100) Message-ID: Dear Thomas, Thanks for your comments on McStas, they are most useful. I have already implemented strings and integers as instrument parameters in my current development version. I can send you a beta if you want, or you can wait for the next version if you prefer (maybe a few months?). I am not sure about the problems you mentioned with Beamstop_rectangular and mcdisplay, do you have an example that you can send me where the problem appears? I agree that it would be good to generalize the adaption algorithm for use in other components, and this is something I plan to do. I consider the adaptive source a first prototype that will enable us to learn more about how adaption can be used in practice, I have found it to be surprisingly complex to get right. The improved "make" and mcdisplay functionality in mcgui will probably be implemented at some point it the not too-distant future. Thanks again, - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt From hansen at ill.fr Fri Mar 3 14:28:30 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Fri, 03 Mar 2000 14:28:30 +0100 Subject: Suggestions for McStas References: <01JMLITBTW4M8WZOBD@risoe.dk> Message-ID: <38BFBDFE.A4288961@ill.fr> Kristian Nielsen wrote: > Thanks for your comments on McStas, they are most useful. I have already > implemented strings and integers as instrument parameters in my current > development version. I can send you a beta if you want, or you can wait > for the next version if you prefer (maybe a few months?). For the moment I shall wait, I may contact you again, if I really ready to test a new beta ersion. > I am not sure about the problems you mentioned with Beamstop_rectangular > and mcdisplay, do you have an example that you can send me where the > problem appears? I'll have a look again ... > I agree that it would be good to generalize the adaption algorithm for > use in other components, and this is something I plan to do. I consider > the adaptive source a first prototype that will enable us to learn more > about how adaption can be used in practice, I have found it to be > surprisingly complex to get right. Oh yes, it is complex ... setting N_xdiv and N_xpos to 1 and setting N_E to something around 70 brought something completely spiky to something reasonable .... The simulation is learning all the time, it could be usefull to write out a certain distribution as a file, and use this file as an optional input for a next simulation with similar (not necessary equal - as the distribution eolutes) configuration. Regards, Thomas -- Dr. Thomas C HANSEN, Instrument Scientist D20, Diffraction Group Institut Max von Laue-Paul Langevin, BP 156, 38042 Grenoble C?dex 9, France ILL4-1st floor room 100, Phone +33(0)476207044, Fax +33(0)476207648 mailto:hansen at ill.fr, http://www.ill.fr/YellowBook/D20 Private: 13, all?e des ?tangs, 38240 Meylan, France, +33(0)476180553 From poehlman at ill.fr Fri Mar 3 15:00:21 2000 From: poehlman at ill.fr (Markus Poehlmann) Date: Fri, 03 Mar 2000 15:00:21 +0100 Subject: IN6 monochromator References: <01JMLI55B8K28WZOBD@risoe.dk> Message-ID: <38BFC575.8C4A5C97@ill.fr> Thank you very much for your reply and for the example instrument. The reason why I asked you once more was that we have no one mono crystal monochromator but 3 curved monochromators each consisting of 7 mono crystals. What I wanted to do was to introduce a Monte Carlo choice in the curved monochromator component (Mon2_foc) written by Peter Link. I think for a further proceeding there are now 2 possible ways: Either to introduce the Monte Carlo Choice in Mon2_foc or to modify the Mosaic-anisotropic component in a way that there are 7 mono crystals instead of one. I will try both of them. Unfortunately we had only the McStas 1.1 manual so that I could not find these things like randnorm(). Markus Poehlmann Kristian Nielsen wrote: > > Date: Thu, 02 Mar 2000 17:56:58 +0100 > > From: Markus Poehlmann > > > So what we would need is a M o n t e C a r l o choice between scattering > > and unscattered propagation. Could you please tell us how it would be > > This is exactly what the Mosaic_anisotropic component does. It computes > the scattering probability for the given incoming neutron and makes a > Monte Carlo choice between scattering or transmitting with this > probability. See the manual for McStas v1.2 page 59. > > I think an example may be appropriate. I have written a simple > instrument with three monochromators in a neutron beam, each one > focusing at a different angle (88, 90, and 92 degrees) onto a > detector. See > > http://neutron.risoe.dk/mcstas/support/poehlman/mono_test.html > > I hope this will get you started, otherwise just ask again, or phone me > on the number below. > > > problem? What e.g. does randnorm() exactly do? > > It returns a random number from a normal distribution with mean zero and > std. deviation 1. See manual page 82. > > - Kristian. > > -- > Kristian Nielsen kristian.nielsen at risoe.dk > Ris? National Laboratory > Condensed Matter Physics and Chemistry Department > Tel. +45 4677 5515 Fax +45 4677 4790 > Encryption PGP key http://neutron.risoe.dk/kn.txt -------------- next part -------------- A non-text attachment was scrubbed... Name: poehlman.vcf Type: text/x-vcard Size: 305 bytes Desc: Card for Markus Poehlmann URL: From kristian.nielsen at risoe.dk Mon Mar 6 10:29:36 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 6 Mar 2000 10:29:36 +0100 Subject: IN6 monochromator In-Reply-To: <38BFC575.8C4A5C97@ill.fr> (message from Markus Poehlmann on Fri, 03 Mar 2000 15:00:21 +0100) Message-ID: I think you have actually three possibilities: 1. If your real monochromators are build each from 7 flat pieces, consider using 3 x 7 instances of Mosaic_anisotropic in the simulation. See the TAS1 example in the McStas manual for how to build a simulation for a composit monochromator. 2. To extend Mon2_foc to do an MC choice should be straightforward. I have not studied Peter Link's code in detail, but I think the relevant sequence is tmp3 = (theta-theta0)/(MIN2RAD*mosaich); if(tmp3 > DIV_CUTOFF) { x = old_x; y = old_y; z = old_z; t = old_t; } else { p *= r0*exp(-tmp3*tmp3*4*log(2)); /* Use mosaics */ Here the weight is adjusted with the reflectivity R=r0*exp(-tmp3*tmp3*4*log(2)). To instead do an MC choice, something like the following should be used tmp3 = (theta-theta0)/(MIN2RAD*mosaich); if(tmp3 > DIV_CUTOFF || rand01() > r0*exp(-tmp3*tmp3*4*log(2))) { /* No scattering */ x = old_x; y = old_y; z = old_z; t = old_t; } else { /* Scatter, no weight adjustment here! */ I have not tested this, but the main point is to replace the weight adjustment by the MC choice rand01() > r0*exp(-tmp3*tmp3*4*log(2)) 3. To extend Mosaic_anisotropic to use a curved surface would also be feasible, the only problem should be the need to understand the code of both components. Only the geometry calculations should change, ie. the computation of the intersection between the neutron flight path and the monochromator surface, and the calculation of the surface normal. Hope this helps, - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt From schober at ill.fr Mon Mar 6 09:56:58 2000 From: schober at ill.fr (Helmut Schober) Date: Mon, 06 Mar 2000 10:56:58 +0200 Subject: IN6 simulation In-Reply-To: <01JMPJT511HE8WZ4JF@risoe.dk> References: <38BFC575.8C4A5C97@ill.fr> (message from Markus Poehlmann on Fri, 03 Mar 2000 15:00:21 +0100) Message-ID: Dear Kristian, As the ILL contact responsible for the simulation of IN6, I would like to thank you very much for the quick answers to Markus Poehlmann's questions. We are new users of the simulation package and have to learn its philosophy and use little by little . After discussion with Marcus this morning we will probably opt for using several monochromator components. That is what we had started out with but I guess due to a wrong use of the arm component we forced the neutrons from one plate to the next, which naturally left practically none in the detector. We learn the hard way. I should spend more time on reading the manual. but unfortunatelly I am tied up with many other duties so that Marcus does nearly all of the work. As he does it very well I am optimistic that we will have a running simulation of IN6 by the end of his 3 month stay at the ILL. Thank you again for your help, Helmut Schober H. Schober Institut Laue-Langevin 6 rue Jules Horowitz BP 156 38042 Grenoble Cedex 9 Phone: + 33 4 76 20 73 96 Fax: + 33 4 76 48 39 06 From farhi at ill.fr Fri Mar 3 11:44:47 2000 From: farhi at ill.fr (Farhi) Date: Fri, 03 Mar 2000 11:44:47 +0100 Subject: mcdoc References: <01JMLEZ4T6UU8WZSGK@risoe.dk> Message-ID: <38BF979F.4CE02BA9@ill.fr> Hy Kristian, Well I'm pleased to see that the Monitor_nD appears usefull to you. As a matter of fact, I made it emulate all the available monitors in McStas 1.2 I also checked it for various combinaisons, but these are so numerous that bugs may appear latter. If you think about neutron variables that I forgot, please tell me. For the official documentation, I don't mind writing it in LaTeX style. Just give me the format. My future projects concerning components include the following : 1- I will continue to use an option string, parsed inside the component. This enables plenty of options with a high verbosity (option really describes what will be done) and versatility. It reduces the input parameters, for wich one does not require to know the C identification name. On the contrary, for future McStas versions evaluating C expressions for numerical parameters, it won't work. I 'll think about that... 2- I'm planing to also create a kind of generic source, extending the Flux_adapter, the same manner as Monitor_nD. some work 3- My Optimizer will be modified in order that one may use more that 1 optimisation point (for sequential optimization along instrument). rather easy 4- In the Monitor_nD I will add the possibility to handle a detection efficiency. easy 5- I plan to write a simple amorphous phonon sample using an external dispersion curve record. This is simple but requires some work For the common component ressources, I will try to install that this afternoon. Thanks. PS : When will be the next release of McStas (with optional/default params, string param, sub-directory libs...) EF. Kristian Nielsen wrote: > Hi Emmanuel, > > Thanks for the comments. They were as always very useful, and I have > implemented all of them now (if you find something missing, please let > me know). > > Your generic monitor is very interesting, and I am sure that it will > prove very useful. I am really hoping that you will write some > documentation in the same style as all the official components in the > McStas manual, so that I can include it in the next official > release. You do not have to use LaTeX, I will convert it for you from > whatever format you prefer to use. > > I have also implemented a method for sharing our component libraries. We > need to set up a special directory on a web server at each institute > participating (currently only Ris? and ILL). This directory contains > ONLY the source code for the components to be shared (ie. my directory > contains the official components, your directory contains the rest). I > have written a small shell script, > > http://neutron.risoe.dk/mcstas/support/farhi/builddocs.sh > > This script automatically downloads the component source codes from each > web server into common subdirectories. It then downloads the newest > mcdoc program from the Ris? server and re-builds all the documentation. > > On mica, I have set up a demonstration in the /home/cs/nielsen/mcdoc/ > directory. The command > > ./builddocs.sh > > will download all components and build the web pages. Because of the > firewall, it is necessary to first execute > > setenv http_proxy proxy.ill.fr:8888 > > What you need to do is to set up a directory on your web server and keep > it updated with the newest source codes for the components you want to > share. Then we can both use the builddocs.sh script to create a single > component page with all components that are automatically kept > synchronized. What do you think? > > Finally, with regard to the mcgui crash on SGI. From yours and Ron's > emails, I got the impression that this problem was solved with the new > Perl installation, is this correct? > > - Kristian. > > -- > Kristian Nielsen kristian.nielsen at risoe.dk > Ris? National Laboratory > Condensed Matter Physics and Chemistry Department > Tel. +45 4677 5515 Fax +45 4677 4790 > Encryption PGP key http://neutron.risoe.dk/kn.txt -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From farhi at ill.fr Fri Mar 3 14:01:21 2000 From: farhi at ill.fr (Farhi) Date: Fri, 03 Mar 2000 14:01:21 +0100 Subject: mcdoc ok Message-ID: <38BFB7A1.788C73F4@ill.fr> Hy I've installed the unofficial components in http://www.ill.fr/tas/mcstas/src/ and updated the web page component index. Here is my builddocs.sh: #! /bin/sh SRCLIST="http://www.ill.fr/tas/mcstas/src/ http://neutron.risoe.dk/mcstas/mcdoc/src/risoe/" DIRLIST="sources optics samples monitors misc" MCDOC="http://neutron.risoe.dk/mcstas/mcdoc/src/risoe/mcdoc.pl" for d in $DIRLIST do rm -Rf $d mkdir $d for src in $SRCLIST do (cd $d; wget -nd -L -A comp,cmp,com -r $src/$d/; rm index.html) done done rm -f mcdoc.pl wget -nd -L $MCDOC chmod u+x mcdoc.pl ../mcdoc.pl I first import the non official, and overload official components. These latter are then prioritary in case of multiple definitions. After the process I uploaded the component tree on the Web. All is fine. The link for the library at Risoe is now http://neutron.risoe.dk/mcstas/mcdoc/test/. Should I change it to http://neutron.risoe.dk/mcstas/components/ ? By the way, yes the perl pb was caused by mixed versions on SGI. All is ok now. Bye. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristian.nielsen at risoe.dk Mon Mar 6 12:58:35 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 6 Mar 2000 12:58:35 +0100 Subject: mcdoc ok In-Reply-To: <38BFB7A1.788C73F4@ill.fr> (message from Farhi on Fri, 03 Mar 2000 14:01:21 +0100) Message-ID: > Date: Fri, 03 Mar 2000 14:01:21 +0100 > From: Farhi The mcdoc stuff seems to be working great. I have installed a cron job that automatically updates the Risoe component web pages at 6.10 AM using both the Risoe and ILL source directories. So whenever you update your source directory the change should happen on the Risoe pages the next day. There seems to be a delay from when you make something available inside ILL to when it appears outside though. Thanks for the fixes for the builddocs.sh script, by the way. My current version is at http://neutron.risoe.dk/mcstas/mcdoc/src/builddocs.sh The official name for the Risoe component documentation page is http://neutron.risoe.dk/mcstas/mcdoc/components/ I decided not to change the old page (http://neutron.risoe.dk/mcstas/components/) since that would have introduced a lot of bad links. I am happy that the mcgui problem on the SGIs now seems to be solved. I am not sure when I should release the next version. Maybe once I finish my current two major projects: multiple scattering in the Single_crystal component, and extending mcgui to have a user interface for building instrument definitions (using mcdoc). Shouldn't be too long. I think I should not release too often since most users will not want to install new versions and print out manuals all the time. But I should also not release too seldom! Two or three times a year seems about right. In addition I am always happy to release beta versions for advanced users. About the Manual format, it is mostly plain LaTex. I have attached the file for the section on monitors for you to look at. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt -------------- next part -------------- A non-text attachment was scrubbed... Name: detector.tex Type: application/octet-stream Size: 13465 bytes Desc: not available URL: From kristian.nielsen at risoe.dk Mon Mar 6 13:38:17 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 6 Mar 2000 13:38:17 +0100 Subject: Automatic generation of component documentation Message-ID: Dear Lee, At the MC workshop at Oak Ridge in January, we briefly discussed the possibility of automatically generating documentation on components from comments in the source code itself. The advantage of this approach is that as the size of the component library grows, the manual maintenance of the documentation will turn into a nightmare. By using automatic techniques, documentation can be maintained with a realistic amount of effort. Together with Emmanuel Farhi, I have now implemented a first version of this scheme. The result may be seen on http://neutron.risoe.dk/mcstas/mcdoc/components/ Some documentation on the system itself is at http://neutron.risoe.dk/mcstas/mcdoc/ In the future, this will also be used to automatically generate documentation for a graphical user interface to the engine and for the hardcopy manual. I thought you might be interested in this. I would be happy to discuss any questions you may have. - Kristian. From kristian.nielsen at risoe.dk Tue Mar 7 10:07:32 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 7 Mar 2000 10:07:32 +0100 Subject: IN6 Monochromators In-Reply-To: <38C3DE33.E3B686C2@ill.fr> (message from Markus Poehlmann on Mon, 06 Mar 2000 17:34:59 +0100) Message-ID: > Date: Mon, 06 Mar 2000 17:34:59 +0100 > From: Markus Poehlmann > Now I rotated not the arms but the Mosaic_anisotropics themselves and it > seems that it works. But in the visualisation with mcdisplay a neutron > passes still one plate after another and is not propagated before having > passed each of the seven plates in each of the 3 monochromators. > Is that only a problem of mcdisplay or is the calculation itsself like > this ? Our results seem to be correct now. > Would you plaese find attached the file in62.instr and could you please > have a look on it in respect to the problem described above. I took a look, and the monochromator setup seems just fine. The mcdisplay plots can admittedly be confusing sometimes. However, I am not quite sure what you mean by "a neutron passes still one plate after another" in mcdisplay? Are you using McStas version 1.2, or is it an older version? I have attached three pictures that show a scattering event so that you can compare with your plots. I have also attached an updated "Guide.comp" file that allows mcdisplay to show all reflections in the guide. Also note that the "Bender" component is a little quirky in mcdisplay because of its non-standard use of geometry. - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt -------------- next part -------------- A non-text attachment was scrubbed... Name: in62-mcdisplay-1.gif Type: image/gif Size: 14622 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: in62-mcdisplay-2.gif Type: image/gif Size: 12791 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: in62-mcdisplay-3.gif Type: image/gif Size: 10564 bytes Desc: not available URL: -------------- next part -------------- /******************************************************************************* * * McStas, the neutron ray-tracing package * Maintained by Kristian Nielsen and Kim Lefmann, * Copyright 1997-2000 Risoe National Laboratory, Roskilde, Denmark * * %I * Written by: KN * Date: September 2 1998 * Version: $Revision: 1.6 $ * Origin: McStas release * Modified by: KL, October 6, 1998 * * Neutron guide. * * %D * Models a rectangular guide tube centered on the Z axis. The entrance lies * in the X-Y plane. * For details on the geometry calculation see the description in the McStas * reference manual. * * %P * INPUT PARAMETERS: * * w1: (m) Width at the guide entry * h1: (m) Height at the guide entry * w2: (m) Width at the guide exit * h2: (m) Height at the guide exit * l: (m) length of guide * R0: (1) Low-angle reflectivity * Qc: (AA-1) Critical scattering vector * alpha: (AA) Slope of reflectivity * m: (1) m-value of material. Zero means completely absorbing. * W: (AA-1) Width of supermirror cut-off * * %D * Example values: m=4 Qc=0.02 W=1/300 alpha=6.49 R0=1 * * %E *******************************************************************************/ DEFINE COMPONENT Guide DEFINITION PARAMETERS (w1, h1, w2, h2, l, R0, Qc, alpha, m, W) SETTING PARAMETERS () STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) TRACE %{ double t1,t2; /* Intersection times. */ double av,ah,bv,bh,cv1,cv2,ch1,ch2,d; /* Intermediate values */ double vdotn_v1,vdotn_v2,vdotn_h1,vdotn_h2; /* Dot products. */ int i; /* Which mirror hit? */ double q; /* Q [1/AA] of reflection */ double vlen2,nlen2; /* Vector lengths squared */ /* ToDo: These could be precalculated. */ double ww = .5*(w2 - w1), hh = .5*(h2 - h1); double whalf = .5*w1, hhalf = .5*h1; double lwhalf = l*whalf, lhhalf = l*hhalf; /* Propagate neutron to guide entrance. */ PROP_Z0; if(x <= -whalf || x >= whalf || y <= -hhalf || y >= hhalf) ABSORB; for(;;) { /* Compute the dot products of v and n for the four mirrors. */ av = l*vx; bv = ww*vz; ah = l*vy; bh = hh*vz; vdotn_v1 = bv + av; /* Left vertical */ vdotn_v2 = bv - av; /* Right vertical */ vdotn_h1 = bh + ah; /* Lower horizontal */ vdotn_h2 = bh - ah; /* Upper horizontal */ /* Compute the dot products of (O - r) and n as c1+c2 and c1-c2 */ cv1 = -whalf*l - z*ww; cv2 = x*l; ch1 = -hhalf*l - z*hh; ch2 = y*l; /* Compute intersection times. */ t1 = (l - z)/vz; i = 0; if(vdotn_v1 < 0 && (t2 = (cv1 - cv2)/vdotn_v1) < t1) { t1 = t2; i = 1; } if(vdotn_v2 < 0 && (t2 = (cv1 + cv2)/vdotn_v2) < t1) { t1 = t2; i = 2; } if(vdotn_h1 < 0 && (t2 = (ch1 - ch2)/vdotn_h1) < t1) { t1 = t2; i = 3; } if(vdotn_h2 < 0 && (t2 = (ch1 + ch2)/vdotn_h2) < t1) { t1 = t2; i = 4; } if(i == 0) break; /* Neutron left guide. */ PROP_DT(t1); switch(i) { case 1: /* Left vertical mirror */ nlen2 = l*l + ww*ww; q = V2Q*(-2)*vdotn_v1/sqrt(nlen2); d = 2*vdotn_v1/nlen2; vx = vx - d*l; vz = vz - d*ww; break; case 2: /* Right vertical mirror */ nlen2 = l*l + ww*ww; q = V2Q*(-2)*vdotn_v2/sqrt(nlen2); d = 2*vdotn_v2/nlen2; vx = vx + d*l; vz = vz - d*ww; break; case 3: /* Lower horizontal mirror */ nlen2 = l*l + hh*hh; q = V2Q*(-2)*vdotn_h1/sqrt(nlen2); d = 2*vdotn_h1/nlen2; vy = vy - d*l; vz = vz - d*hh; break; case 4: /* Upper horizontal mirror */ nlen2 = l*l + hh*hh; q = V2Q*(-2)*vdotn_h2/sqrt(nlen2); d = 2*vdotn_h2/nlen2; vy = vy + d*l; vz = vz - d*hh; break; } /* Now compute reflectivity. */ if(m == 0) ABSORB; if(q > Qc) { double arg = (q-m*Qc)/W; if(arg < 10) p *= .5*(1-tanh(arg))*(1-alpha*(q-Qc)); else ABSORB; /* Cutoff ~ 1E-10 */ } p *= R0; SCATTER; } %} MCDISPLAY %{ double x; int i; magnify("xy"); multiline(5, -w1/2.0, -h1/2.0, 0.0, w1/2.0, -h1/2.0, 0.0, w1/2.0, h1/2.0, 0.0, -w1/2.0, h1/2.0, 0.0, -w1/2.0, -h1/2.0, 0.0); multiline(5, -w2/2.0, -h2/2.0, (double)l, w2/2.0, -h2/2.0, (double)l, w2/2.0, h2/2.0, (double)l, -w2/2.0, h2/2.0, (double)l, -w2/2.0, -h2/2.0, (double)l); line(-w1/2.0, -h1/2.0, 0, -w2/2.0, -h2/2.0, (double)l); line( w1/2.0, -h1/2.0, 0, w2/2.0, -h2/2.0, (double)l); line( w1/2.0, h1/2.0, 0, w2/2.0, h2/2.0, (double)l); line(-w1/2.0, h1/2.0, 0, -w2/2.0, h2/2.0, (double)l); %} END From poehlman at ill.fr Mon Mar 6 17:34:59 2000 From: poehlman at ill.fr (Markus Poehlmann) Date: Mon, 06 Mar 2000 17:34:59 +0100 Subject: IN6 Monochromators Message-ID: <38C3DE33.E3B686C2@ill.fr> Dear Kristian, thank you very much for your detailled help. I think, I succeeded now with the simplest method of rotating 7 Mosaic_anistropic components three times. We tried the same method some weeks ago by defining a certain Arm() for each of the 7 monochromators. But that did not work, as Helmut wrote to you. The result was that McStas was trying to force the neutrons from one plate to another. Now I rotated not the arms but the Mosaic_anisotropics themselves and it seems that it works. But in the visualisation with mcdisplay a neutron passes still one plate after another and is not propagated before having passed each of the seven plates in each of the 3 monochromators. Is that only a problem of mcdisplay or is the calculation itsself like this ? Our results seem to be correct now. Would you plaese find attached the file in62.instr and could you please have a look on it in respect to the problem described above. Thanks a lot again Markus Poehlmann -------------- next part -------------- %include "mono2.comp" /*%include "monoscatt.comp" %include "monoscatt1.comp"%*/ DEFINE INSTRUMENT IN6 (lamda_i,dlamda_i) /* A template IN6 simulation for McStas. M. Poehlmann feb 00 * input parameters : * lamda_i : incident n-wavevector [Angs-1] * dlamda_i: spread of incident n-wavevector [Angs-1]*/ DECLARE %{ /* all variables defined here can be used, and modified, in the whole instrument */ /* variables used in instrument definition and for user computations */ double DM = 3.355; /* mono d-spacing (Angs) */ double DA = 3.355; /* ana d-spacing */ /* Bragg angles of the 3 monochromators */ double A1; double A1half; double A1strich; double A2; double A2half; double A2strich; double A3; double A3half; double A3,A4,A5,A6; /* geometrical angles (deg) */ double Ki; /*incident wave vector corresponding to lamda_i */ double dKi; /*spread of incident wave vector <--> dlamda_i */ double mono_q; /* Q vector for bragg scattering with monochromator */ double ana_q; /* Q vector for bragg scattering with analyzer */ double Ei = 0; /* incident n-energy */ double dEi = 0; /* energy spread of source neutrons*/ double Ef = 0; /* out-going n-energy */ double Kf = 0; /* out-going n-wavevector */ double Q = 0; double d1 = 3.0; /*distance guide 2 <--> monochromator*/ double l2 = 2.1; /*distance monochromator 2 <--> sample*/ double li = 0.03; /*distance between 2 monochromators*/ double position_m1; /*position of monochromator 1 relative end of guide 2*/ double position_m2; /* 2 */ double position_m3; /* 3 */ char flag_scattered; /* defintion of variables for calculation of positions of 7 monochromators*/ double r = 3.0; int i; double phi[7]; double z[7]; double y[7]; double x[7]; double PHI1, PHI2, PHI3, PHI4, PHI5, PHI6, PHI7; double x_1, x_2, x_3, x_4, x_5, x_6, x_7; double y_1, y_2, y_3, y_4, y_5, y_6, y_7; double z_1, z_2, z_3, z_4, z_5, z_6, z_7; %} /* end of DECLARE */ INITIALIZE %{ /* variables defined here are local (only in INIT section) */ /* can be computed / displayed (see below) */ double Vi = 0; /* incident n-velocity (m/s) */ double dVi; /* incident spread of n-velocity */ double Vf = 0; /* out-going n-velocity */ int SM,SS,SA; /* rotation sign */ double arg = 0; /* tempo var */ int ORDER = 1; /* dealing with ORDERth Bragg one-neutron diffraction on mono/ana */ /* SM : scattering at mono to the right (-1)/left(+1) */ /* SS : scattering at sample to the right (-1)/left(+1) */ /* SA : scattering at analyser to the right (-1)/left(+1) */ SM = -1; SS = -1; SA = 1; mono_q = 2*PI*ORDER/DM; /* Q mono in Angs-1 */ position_m1 = d1-li; position_m2 = d1; position_m3 = d1+li; Ki = 2*PI/lamda_i; dKi = 2*PI*dlamda_i/(lamda_i*lamda_i); Vi = K2V*fabs(Ki); Ei = VS2E*Vi*Vi; dVi = K2V*dKi; dEi = 2*VS2E*Vi*dVi; printf("Ki=%lf\tdKi=%lf\tEi=%lf\tdEi=%lf\n",Ki,dKi,Ei,dEi); if (dEi>Ei) { printf("The energy spread dEi is greater than the energy Ei.\n"); printf("Please insert a smaller dlamda_i.\n"); exit(-1); } /*calculate theta angles for 3 monochromators*/ A2 = asin(mono_q/2/Ki)*2; A2 *= SM; /* A : mono theta (crystal) */ A1 = atan(l2*sin(A2)/(li+l2*cos(A2)))*RAD2DEG; A1 *= -SM; A1half = A1/2.0; A3 = atan(l2*sin(A2)/(l2*cos(A2)-li))*RAD2DEG; A3 *= -SM; A3half = A3/2.0; A2 *=RAD2DEG; A2strich=-A2; A2half = A2/2.0; printf("A1=%lf\tA2=%lf\tA3=%lf\n",A1,A2,A3); /* Analyzer characteristics (A5,A6 from Kf, DA) */ Vf = SE2V*sqrt(Ei); /* final energy from energy transfert */ Kf = V2K*Vf; if (DA <= 0.1) { printf("TAS: Ana DA = %f Angs, too small\n", DM); exit(-1); } ana_q = 2*PI*ORDER/DA; /* Q ana in Angs-1 */ if ((Kf == 0) || (fabs(mono_q/2/Kf) > 1)) { printf("TAS: Can not reach this out-going wavevector\n"); printf(" with such an analyzer (A6)\n"); printf("Mono DA = %f Angs, requested Kf = %f Angs-1\n", DA, Kf); exit(-1); } A6 = asin(ana_q/2/Kf)*RAD2DEG*2; A6 *= SA; /* A5 : analyser theta (crystal) */ A5 = A6/2; /* A6 : analyser 2 theta (arm to detector) */ /* Sample characteristics */ arg = (Ki*Ki + Kf*Kf - Q*Q)/2/fabs(Ki*Kf); /*if (fabs(arg) > 1) { printf("TAS: Can not close wavevector triangle (A4)\n"); printf("Incident Ki = %f Angs-1, Exchange Q=%f Angs-1, Final Kf = %f Angs-1\n",Ki,Q,Kf); exit(-1); } */ A4 = acos(arg)*RAD2DEG; A4 *= SS; /* A4 : sample 2 theta (arm to analyser) */ /* computing of A3 requires sample reciprocal axes characteristics */ A3 = A4/2; /* A3 : sample theta printf("IN14 at ILL 3-axis spectrometer\n"); printf("Angles (deg) A1 = %f ; A4 = %f ; A6 = %f\n",A2,A4,A6);*/ for(i=0;i<=6;i++) { phi[i]=(-0.087+0.029*i)/r; x[i]=-r*(1-cos(phi[i])); y[i]=r*sin(phi[i]); z[i]=-r*(1-cos(phi[i])); phi[i]*=RAD2DEG; } PHI1=phi[0]; PHI2=phi[1]; PHI3=phi[2]; PHI4=phi[3]; PHI5=phi[4]; PHI6=phi[5]; PHI7=phi[6]; x_1=x[0]; x_2=x[1]; x_3=x[2]; x_4=x[3]; x_5=x[4]; x_6=x[5]; x_7=x[6]; y_1=y[0]; y_2=y[1]; y_3=y[2]; y_4=y[3]; y_5=y[4]; y_6=y[5]; y_7=y[6]; z_1=z[0]; z_2=z[1]; z_3=z[2]; z_4=z[3]; z_5=z[4]; z_6=z[5]; z_7=z[6]; %} TRACE /* Source description */ COMPONENT source = Source_flux( /* a flat constant source */ radius = 0.20, dist =2.27, xw = 0.038, yh = 0.2, E0 = Ei, dE = dEi, flux=1e13) AT (0,0,0) ABSOLUTE /*COMPONENT PSD_source = PSD_monitor( xmin = -0.1, xmax = 0.1, ymin = -0.1, ymax = 0.1, nx = 100, ny = 100, filename="source.psd") AT (0, 0, 0) RELATIVE source COMPONENT E_source= E_monitor( xmin=-.1, xmax=.1, ymin=-.1, ymax=.1, Emin=0, Emax=10, nchan=100, filename="E_source.emo") AT (0,0,0.000001) RELATIVE source COMPONENT PSD_3_12 = PSD_monitor( xmin = -0.1, xmax = 0.1, ymin = -0.1, ymax = 0.1, nx = 100, ny = 100, filename="3_12.psd") AT (0, 0, 3.12) RELATIVE source COMPONENT E_3_12 = E_monitor( xmin=-.1, xmax=.1, ymin=-.1, ymax=.1, Emin=0, Emax=10, nchan=100, filename="E_vor_guide_1.emo") AT (0,0,0.00001) RELATIVE PSD_3_12*/ COMPONENT guide_1 = Guide( w1=0.038, h1=0.2, w2=0.032, h2=0.2, l=3.68, R0=1, Qc=0.02176, alpha=2.33, m=1.2, W=2e-3) AT (0,0,3.12001) RELATIVE source COMPONENT PSD_guide_1 = PSD_monitor( xmin = -0.1, xmax = 0.1, ymin = -0.1, ymax = 0.1, nx = 100, ny = 100, filename="guide_1.psd") AT (0, 0, 6.8) RELATIVE source COMPONENT E_guide_1 = E_monitor( xmin=-.1, xmax=.1, ymin=-.1, ymax=.1, Emin=0, Emax=10, nchan=100, filename="E_guide_1.emo") AT (0,0,0) RELATIVE PSD_guide_1 COMPONENT bender1 = Bender( w=0.03, h=0.2, r=2700.0, d=0, Win=0.0101851, k=1, R0a=1, Qca=0.02176, alphaa=2.33, ma=1.2, Wa=2e-3, R0i=1, Qci=0.02176, alphai=2.33, mi=1.2, Wi=2e-3, R0s=1, Qcs=0.02176, alphas=2.33, ms=1.2, Ws=2e-3) AT (0,0,3.68) RELATIVE guide_1 COMPONENT PSD_bender1 = PSD_monitor( xmin = -0.1, xmax = 0.1, ymin = -0.1, ymax = 0.1, nx = 100, ny = 100, filename="bender1.psd") AT (0, 0, 27.5) RELATIVE bender1 COMPONENT E_bender1 = E_monitor( xmin=-.1, xmax=.1, ymin=-.1, ymax=.1, Emin=0, Emax=10, nchan=100, filename="E_bender1.emo") AT (0,0,0) RELATIVE PSD_bender1 COMPONENT guide_2 = Guide( w1=0.032, h1=0.2, w2=0.032, h2=0.2, l=27, R0=1, Qc=0.02176, alpha=2.33, m=1.2, W=2e-3) AT (0,0,27.5) RELATIVE bender1 COMPONENT PSD_guide_2 = PSD_monitor( xmin = -0.1, xmax = 0.1, ymin = -0.1, ymax = 0.1, nx = 100, ny = 100, filename="guide_2.psd") AT (0, 0, 27) RELATIVE guide_2 COMPONENT E_guide_2 = E_monitor( xmin=-.1, xmax=.1, ymin=-.1, ymax=.1, Emin=0, Emax=10, nchan=100, filename="E_guide_2.emo") AT (0,0,0) RELATIVE PSD_guide_2 COMPONENT a1 = Arm() AT (0,0,27) RELATIVE guide_2 COMPONENT arm_M1 = Arm() AT (0,0,position_m1) RELATIVE a1 ROTATED (0,A1half,0) RELATIVE a1 COMPONENT m11 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_1,y_1,0) RELATIVE arm_M1 ROTATED (0,0,PHI1) RELATIVE arm_M1 COMPONENT m12 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_2,y_2,0) RELATIVE arm_M1 ROTATED (0,0,PHI2) RELATIVE arm_M1 COMPONENT m13 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_3,y_3,0) RELATIVE arm_M1 ROTATED (0,0,PHI3) RELATIVE arm_M1 COMPONENT m14 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_4,y_4,0) RELATIVE arm_M1 ROTATED (0,0,PHI4) RELATIVE arm_M1 COMPONENT m15 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_5,y_5,0) RELATIVE arm_M1 ROTATED (0,0,PHI5) RELATIVE arm_M1 COMPONENT m16 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_6,y_6,0) RELATIVE arm_M1 ROTATED (0,0,PHI6) RELATIVE arm_M1 COMPONENT m17 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_7,y_7,0) RELATIVE arm_M1 ROTATED (0,0,PHI7) RELATIVE arm_M1 COMPONENT arm_M2 = Arm() AT (0,0,position_m2) RELATIVE a1 ROTATED (0,A2half,0) RELATIVE a1 COMPONENT m21 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_1,y_1,0) RELATIVE arm_M2 ROTATED (0,0,PHI1) RELATIVE arm_M2 COMPONENT m22 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_2,y_2,0) RELATIVE arm_M2 ROTATED (0,0,PHI2) RELATIVE arm_M2 COMPONENT m23 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_3,y_3,0) RELATIVE arm_M2 ROTATED (0,0,PHI3) RELATIVE arm_M2 COMPONENT m24 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_4,y_4,0) RELATIVE arm_M2 ROTATED (0,0,PHI4) RELATIVE arm_M2 COMPONENT m25 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_5,y_5,0) RELATIVE arm_M2 ROTATED (0,0,PHI5) RELATIVE arm_M2 COMPONENT m26 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_6,y_6,0) RELATIVE arm_M2 ROTATED (0,0,PHI6) RELATIVE arm_M2 COMPONENT m27 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_7,y_7,0) RELATIVE arm_M2 ROTATED (0,0,PHI7) RELATIVE arm_M2 COMPONENT arm_M3 = Arm() AT (0,0,position_m3) RELATIVE a1 ROTATED (0,A3half,0) RELATIVE a1 COMPONENT m31 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_1,y_1,0) RELATIVE arm_M3 ROTATED (0,0,PHI1) RELATIVE arm_M3 COMPONENT m32 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_2,y_2,0) RELATIVE arm_M3 ROTATED (0,0,PHI2) RELATIVE arm_M3 COMPONENT m33 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_3,y_3,0) RELATIVE arm_M3 ROTATED (0,0,PHI3) RELATIVE arm_M3 COMPONENT m34 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_4,y_4,0) RELATIVE arm_M3 ROTATED (0,0,PHI4) RELATIVE arm_M3 COMPONENT m35 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_5,y_5,0) RELATIVE arm_M3 ROTATED (0,0,PHI5) RELATIVE arm_M3 COMPONENT m36 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_6,y_6,0) RELATIVE arm_M3 ROTATED (0,0,PHI6) RELATIVE arm_M3 COMPONENT m37 = Mosaic_anisotropic( zmin=-0.015, zmax=0.015, ymin=-0.014, ymax=0.014, mosaich=50, mosaicv=50, r0=0.95, Q=mono_q) AT (x_7,y_7,0) RELATIVE arm_M3 ROTATED (0,0,PHI7) RELATIVE arm_M3 COMPONENT 4PI_mono = PSD_monitor_4PI( radius=2.1, nx=100, ny=100, filename="4PI_mono.psd") AT (0,0,d1) relative a1 COMPONENT focus_sample = Arm() AT (0,0,d1) RELATIVE a1 ROTATED (0,A2,0) RELATIVE a1 COMPONENT anti_focus_sample = Arm() AT (0,0,d1) RELATIVE a1 ROTATED (0,A2strich,0) RELATIVE a1 COMPONENT PSD_mono = PSD_monitor( xmin = -0.1, xmax = 0.1, ymin = -0.1, ymax = 0.1, nx = 100, ny = 100, filename="mono.psd") AT (0, 0, l2) RELATIVE focus_sample /*COMPONENT anti_PSD_mono = PSD_monitor( xmin = -0.1, xmax = 0.1, ymin = -0.1, ymax = 0.1, nx = 100, ny = 100, filename="anti_mono.psd") AT (0, 0, l2) RELATIVE anti_focus_sample*/ /*COMPONENT dreh_PSD_mono = PSD_monitor( xmin = -30, xmax = 30, ymin = -30, ymax = 30, nx = 100, ny = 100, filename="dreh_mono.psd") AT (0, 0, 3) RELATIVE arm_M1_2 */ COMPONENT E_mono = E_monitor( xmin=-0.1, xmax=0.1, ymin=-0.1, ymax=0.1, Emin=3, Emax=4.5, nchan=100, filename="E_mono.emo") AT (0,0,0) RELATIVE PSD_mono COMPONENT PSD_mono_test = PSD_monitor( xmin = -1, xmax = 1, ymin = -1, ymax = 1, nx = 100, ny = 100, filename="mono_test.psd") AT (0, 0, 3.3) RELATIVE a1 /*COMPONENT mono_1 = Monochromator( zmin=-*/ END -------------- next part -------------- A non-text attachment was scrubbed... Name: poehlman.vcf Type: text/x-vcard Size: 288 bytes Desc: Card for Markus Poehlmann URL: From hansen at ill.fr Mon Mar 13 11:23:43 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Mon, 13 Mar 2000 11:23:43 +0100 Subject: mcdoc - default values for input parameters Message-ID: <38CCBF41.A729DE59@ill.fr> Dear Kristian and Emmanuel, The tables in the html files coming out from mcdoc contain a column for default values of input parameters. I haven't found any component alrady using this possibility, so what's the foreseen syntax to fill in that column as well? Thanks for reply! Thomas From kristian.nielsen at risoe.dk Mon Mar 13 11:17:38 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 13 Mar 2000 11:17:38 +0100 Subject: mcdoc - default values for input parameters In-Reply-To: <38CCBF41.A729DE59@ill.fr> (message from Thomas C Hansen on Mon, 13 Mar 2000 11:23:43 +0100) Message-ID: > Date: Mon, 13 Mar 2000 11:23:43 +0100 > From: Thomas C Hansen > Dear Kristian and Emmanuel, > > The tables in the html files coming out from mcdoc contain a column for default > values of input parameters. I haven't found any component alrady using this > possibility, so what's the foreseen syntax to fill in that column as well? For example, DEFINE COMPONENT GUIDE SETTING PARAMETERS(R0 = 1, ...) This would make the R0 parameter optional, with a default value of 1. This is already implemented in my current development version. I guess a similar syntax will be implemented for instrument input parameters. - Kristian. From farhi at ill.fr Wed Mar 8 14:11:32 2000 From: farhi at ill.fr (Farhi) Date: Wed, 08 Mar 2000 14:11:32 +0100 Subject: About spin ? Message-ID: <38C65184.E3C7A706@ill.fr> Hy Kristian I'm now writing the documentation for components Source_Optimizer, Monitor_Optimizer and Monitor_nD. Hope it will be clear and usefull. I was wondering what you think about neutron spin. I mean the fact that you have s1 and s2 [ STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) ] in all components, but you do not have (sx, sy, sz) except if you really ask for it [ POLARISATION PARAMETERS (sx,sy,sz) ]. In this latter case, one usually get huge amounts of warning from other components. This is very starnge as s1 and s2 should contain the same information as sx sy sz, but in a different way. What about writing a MACRO that would compute sx, sy sz from s1 and s2, according to the component orientation, and possibly neutron direction, and an other one that would do the reverse operation ? This would make all component beeing able to handle polarisation, and would thus avoid warnings. Also, I just point out that writing a component that does or does not handle polarisation with POLARISATION PARAMETERS symbol makes two way of programming : in one hand you will use s1 s2, in the other, sx sy sz.... Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From farhi at ill.fr Thu Mar 9 18:17:58 2000 From: farhi at ill.fr (Farhi) Date: Thu, 09 Mar 2000 18:17:58 +0100 Subject: Doc for components Message-ID: <38C7DCC6.58D912AC@ill.fr> Hy Kristian, Here is a documentation in LaTeX format for the Source_optimizer and monitor_nD components. Feel free of any remarks !! (I just finished it, and I'm tired...) Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Source_Optimizer.tex Type: application/x-tex Size: 13753 bytes Desc: not available URL: From kristian.nielsen at risoe.dk Wed Mar 15 13:16:28 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 15 Mar 2000 13:16:28 +0100 Subject: About spin ? In-Reply-To: <38C65184.E3C7A706@ill.fr> (message from Farhi on Wed, 08 Mar 2000 14:11:32 +0100) Message-ID: Hi Emmanuel, Thanks a lot for the Latex manual entries. I will look closer at them and include them the next time I revise the manual. I just finished a new version of mcgui which integrates the mcdoc stuff so that components can be used in a "user-friendly" graphics dialog (also works for the users own components in the current directory). While I am not completely satisfied with it yet, I think it is promising and will be quite useful. I have put an "alpha" release up for you on the web page at http://neutron.risoe.dk/mcstas/support/farhi/mcstas-1.23A.tar.gz in case you want to try it out and have some comments. It also has the new string instrument parameters and optional component parameters, but be careful about using them since your code will then not work in McStas 1.2! To see the new mcgui stuff you need to open the integrated editor window and use the new "Insert" menu. About the neutron spin: When I visited ILL last year, I had some discussions with Trefor, and we agreed that the polarisation needed to have three components (though I can no longer remember why). However, that is not the reason for having a separate "POLARISATION PARAMETERS" statement instead of using the STATE PARAMETERS. Rather, the reason is to provide a way for components to advertise that they know how to propagate the neutron spin through the guide field properly. Just mentioning the spin in the STATE PARAMETERS without doing anything about them does not properly handle polarisation in all cases! Therefore the warning is telling the user that the component completely ignores polarisation, which was probably not intended. If it is useful, we can allow two-component polarisation, but that will also use the POLARISATION PARAMETER syntax, not STATE PARAMETER. The s1 and s2 STATE PARAMETERS will soon be removed (but still ignored if present for backward compatibility). I am now planning to release the next version of McStas at the SCANS meeting at the ILL on May 18. - Kristian. -- Kristian Nielsen kristian.nielsen at risoe.dk Ris? National Laboratory Condensed Matter Physics and Chemistry Department Tel. +45 4677 5515 Fax +45 4677 4790 Encryption PGP key http://neutron.risoe.dk/kn.txt From farhi at ill.fr Fri Mar 10 15:30:53 2000 From: farhi at ill.fr (Farhi) Date: Fri, 10 Mar 2000 15:30:53 +0100 Subject: Output parameters Message-ID: <38C9071D.D7EC7DF7@ill.fr> Hy I have adopted a solution for the numerous output parameters I had in my components : I put all of them into structures. Thus there is only one symbol than contains all the data. Then, the Monitor_Optimizer uses the same principle as your Adapt_check for getting the information : MC_GETPAR with the optimizer name from the instrument definition. This adds an input parameter to Monitor_Optimizer. I updated this fact in the doc attached. Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Source_Optimizer.tex Type: application/x-tex Size: 13979 bytes Desc: not available URL: From kristian.nielsen at risoe.dk Tue Mar 28 12:06:10 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 28 Mar 2000 12:06:10 +0200 Subject: Position and targeting In-Reply-To: <38E06590.7328958C@ill.fr> (message from Farhi on Tue, 28 Mar 2000 09:56:00 +0200) Message-ID: > Date: Tue, 28 Mar 2000 09:56:00 +0200 > From: Farhi > I'm designing a general source for McStas, with option string such as > for the Monitor_nD (enabling many cross-options and extended > customization). For this, a possible option for source (and usefull !) > is to target to a specified component. For this, I need to get the > distance from the source to the next component. This is stored into the > 'mcposa*' structures, but these are defined AFTER the initialization of > all components. In order to be able to use these informations during > init of components, would it be possible to move the /* Computation of > coordinate transformations. */ at the begining of the mcinit function ? > Then with a > #define MC_GETPOS(comp) (mcrota ## comp ) > it would be possible to access all component positions during init of > components... Yes, I have intended to implement something like this for a long time. It is clearly needed for components to be able to ask for the position of other components like you suggest. There was some complitation (can't remember what just now), but it should clearly be possible. I will try go get it done for the next release in May (or sooner, if it turns out to be very simple). I am also thinking that it would be useful to support the "option style" that you have used so successfully in a better way in the McStas core? Either through extended syntax, or with some library calls for components. Another thing: Did you notice that the McDoc documentation on the Ris? Web pages for your Flux_adapter is messed up? The reason seems to be that the automatic script downloads an old version of the file. In fact, I just tried to download the Flux_adapter.comp source from http://www.ill.fr/tas/mcstas/src/sources/Flux_adapter.comp and that is indeed an old version without McDoc tags. Any idea what might be wrong? - Kristian. From u840163 at oz.nthu.edu.tw Wed Mar 29 04:56:17 2000 From: u840163 at oz.nthu.edu.tw (=?big5?B?sWmyS6l8?=) Date: Wed, 29 Mar 2000 10:56:17 +0800 Subject: Thanks for your program , and I need a help Message-ID: <38E170D0.31B29873@oz.nthu.edu.tw> Dear Dr. Kristian and Dr. Nielsen How do you do! Nice to write to you! I am a student , and now I am trying to simulate a instrument for SANS (Small angle neutron scattering ) of nuclear reactor. I have downloaded your simulation program. I try to make up a system for your simulation program. And the sourround seemed to be accepted by your program . I have tried the examples . It compiles and calculates successfully . But now, I contact some problems , like the form after calculated ,what it means , and how should I tran the data into a graph .Or the other forms that I can get the informations more clearly . And I want to know the flowchart to use your program after it have installed on our workstation more detail . Otherwise , can you give me the informatins , insturments , and programs about SANS ( Small angle neutron scattering ) . I need your help , can you do me a favor . Thanks a lot . Tain-Shang Chang E-mail : u840163 at oz.nthu.edu.tw National Tsing Hua University , R . O . C -------------- next part -------------- An HTML attachment was scrubbed... URL: From kristian.nielsen at risoe.dk Wed Mar 29 08:57:26 2000 From: kristian.nielsen at risoe.dk (Kristian Nielsen) Date: 29 Mar 2000 08:57:26 +0200 Subject: Thanks for your program , and I need a help In-Reply-To: <38E170D0.31B29873@oz.nthu.edu.tw> (message from =?big5?B?sWmyS6l8?= on Wed, 29 Mar 2000 10:56:17 +0800) Message-ID: Dear Tain-Shang Chang, It sounds like you have successfully installed McStas on your computers, which is good. You do not say which version of McStas you are using (the command "mcstas --version" will tell you). I would recommend that you use the latest release, version 1.2. You should also make sure that you have the latest manual (I can send a hardcopy if you have trouble downloading and printing). If McStas has been fully installed, you can use the "mcplot" and "mcgui" programs to plot the results. See the manual sections 2.6.1 and 2.6.5. Otherwise you need some other program (gnuplot, matlab, origin, excel, ...). The data files are in ascii formats that most programs will read, see the manual section 2.7. For a simple introduction to the use of the porgram you should read the McStas tutorial. This may be downloaded from http://neutron.risoe.dk/mcstas/tutorial/tutorial.pdf I am not sure if anyone have attempted detailed SANS simulations using McStas, but there should be no fundamental problems. - Kristian. From farhi at ill.fr Thu Mar 16 12:42:07 2000 From: farhi at ill.fr (Farhi) Date: Thu, 16 Mar 2000 12:42:07 +0100 Subject: McStas 1.23 checked Message-ID: <38D0C88F.F471839@ill.fr> Hello Kristian, I've just tested this new version. It's nice as usual ! Seems ok as long as components have the good format (and this forces authors to write components with good format). The 'Inser/Component...' presents abstracts of components, and that is good. I guess the 'Other' can retreive local components too. A problem exists when a componnet exists in the root lib, and in sbdirectories... This will be cleared when all components will be sorted in subdirectories. A installed a local comp near instrument file, but mcgui could not see it (user components). Cheers. EF I go on testing... -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From farhi at ill.fr Thu Mar 16 13:54:46 2000 From: farhi at ill.fr (Farhi) Date: Thu, 16 Mar 2000 13:54:46 +0100 Subject: component location Message-ID: <38D0D996.C6F8E5A8@ill.fr> Hy again, in the McGui Editor/Insert menu/Component -> Select component definition dialog, it would be quite usefull to also display the location of the component (full path). This would be easier to sort what components are used, and where the components are accessed (various LIB pathes searched by McStas): MCSTAS_LIB/ MCSTAS_LIB/subdirectories local path (where the instrument is) You can also optionally add a Help menu item calling Web pages at Risoe. I've added the components made by Thomas Hansen in ILL src directory. It should appear tomorrow at Risoe. The user components are scaned by McGui at startup, thus I can now see the component that I added near the instrument. OK. Cheers. EF. -- Emmanuel FARHI, http://www.ill.fr/tas/people/Farhi.html \|/ ____ \|/ TAS-Group, Institut Laue-Langevin (ILL) Grenoble ~@-/ oO \-@~ Avenue J. Horowitz, BP 156, 38042 Grenoble Cedex 9,France /_( \__/ )_\ Work :Tel (33/0) 4 76 20 71 83. Fax (33/0) 4 76 48 39 06 \__U_/ La Grande Arche, Chateau d'Uriage, 38410 Saint Martin d'Uriage 04 76 59 73 94 -------------- next part -------------- An HTML attachment was scrubbed... URL: From hansen at ill.fr Mon Mar 6 10:54:48 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Mon, 06 Mar 2000 10:54:48 +0100 Subject: commandline arguments in mcstas Message-ID: <38C38066.4435370B@ill.fr> Dear Kristian, In a future version of McStas, could you imagine some additional funcitonality in the commandline arguments of mcstas simulations? E.g. for a huge number of parameters, in the actual version the commandline becomes too long, so the only way is to give all parameters manually, or by a commandline like './mysimulation.out -n 1e6 < input.arguments'. That workaround is fine, as long as I do not want to use gscan which won't work by no means, if there are too many parameters. I could imagine a commandline like './mysimulation.out -n 1e6 -p input.arguments Lmin=1.2 Lmax=1.4', which means, all input parameters are taken from a file input.arguments, except the parameters Lmin and Lmax, which are overwritten by the values given in the commandline. This procedure would permit the use of a slightly modified version of gscan (taking account of the option '-p' or '--param' of the mcstas generated simulation). The file input.arguments might contain as many 'param=value', separated by linefeed, blank or comma in any order. If any 'param=value' is missing in the file input.arguments, as well as in the commandline itself, the up to now used convention may be used, which is asking interactively the user for some input. (That's in fact another, new, suggestion, as in the actual version the simulation stops if some parameters are given, others not. Why not asking interactively these missing parameters instead?) These are just suggestions, in order to ripe some new ideas, don't take it as a strong demand right now! Best Regards, Thomas -- Dr. Thomas C HANSEN, Instrument Scientist D20, Diffraction Group Institut Max von Laue-Paul Langevin, BP 156, 38042 Grenoble C?dex 9, France ILL4-1st floor room 100, Phone +33(0)476207044, Fax +33(0)476207648 mailto:hansen at ill.fr, http://www.ill.fr/YellowBook/D20 Private: 13, all?e des ?tangs, 38240 Meylan, France, +33(0)476180553 From hansen at ill.fr Fri Mar 10 08:22:30 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Fri, 10 Mar 2000 08:22:30 +0100 Subject: McDoc also for instruments? Message-ID: <38C8A2B5.F8DF2664@ill.fr> Good morning, Kristian and Emmanuel! Just a short suggestion for McDoc (I suppose it is foreseen for the next McStas release to search components also recursively in the subdirectories, e.g. ../sources/, ./monitors/, etc., of a given or the default directory if not found there): A similar perl procedure could be applied in the same time as well to instrument descriptions (*.instr, etc.), to be placed in another subdirectory 'instruments' or so. Probably you've already thought of this ... Have a nice day - and thanks for McDoc! Thomas From hansen at ill.fr Mon Mar 13 15:14:40 2000 From: hansen at ill.fr (Thomas C Hansen) Date: Mon, 13 Mar 2000 15:14:40 +0100 Subject: mcdoc - default values for input parameters References: <01JMZDJ3ELEC8X2R4E@risoe.dk> Message-ID: <38CCF7CE.94307BFA@ill.fr> Dear Kristian, I see your approach, looks good! By the way, I wrote a perl script (attached), which handles huge command lines, as I suggested a couple of days ago. To use it, you put all my files in a directory and type, e.g., ln -s mcsim.pl mcsim; chmod a+x mcsim mcsim d20 par=ge113.par Sample_file=0 This will call 'mcrun d20', take default parameters from 'd20.par', overwrite them with parameters eventually found in 'ge113.par', and overwrite in the end the parameter 'Sample_file'. If any needed parameter as found in 'd20.instr' is missing, the script will ask for it and append a corresponding entry in 'd20.par'. All these parameters are not simply given in a command line, as this won't work for command lines above a certain limited length, but only the values are written in the right order in a temporary file 'd20.stdin'. Then a shell script containing 'mcrun d20 < d20.stdin > d20.stdout' is executed. In order to suppress all messages asking for all these parameters, the output is deviated to 'd20.stdout' and the script is printing in the end only lines not containing these questions to the screen. Unfortunately I haven't found yet a possibility to filter that standard output in real time - that would be preferable. With this perl script also gscan will work, using e.g. following command line: gscan 10 1e5 mcsim d20.scan instr=d20 par=ge113.par Source_N_E=1,10 That's just a suggestion, it works fine for me, but maybe some future testing and standardization has to be done to make it a secure tool for everybody handling long lists of parameters. It will be easy to adapt the script to default values as you suggested, just by an additional string analysis of the 'DEFINE INSTRUMENT' following lines. In that case a default parameter file ('d20.par' in the example) may become redundant. Best Regards, Thomas Kristian Nielsen wrote: > > Date: Mon, 13 Mar 2000 11:23:43 +0100 > > From: Thomas C Hansen > > > Dear Kristian and Emmanuel, > > > > The tables in the html files coming out from mcdoc contain a column for default > > values of input parameters. I haven't found any component alrady using this > > possibility, so what's the foreseen syntax to fill in that column as well? > > For example, > > DEFINE COMPONENT GUIDE > SETTING PARAMETERS(R0 = 1, ...) > > This would make the R0 parameter optional, with a default value of > 1. This is already implemented in my current development version. I > guess a similar syntax will be implemented for instrument input > parameters. > > - Kristian. -- Dr. Thomas C HANSEN, Instrument Scientist D20, Diffraction Group Institut Max von Laue-Paul Langevin, BP 156, 38042 Grenoble C?dex 9, France ILL4-1st floor room 100, Phone +33(0)476207044, Fax +33(0)476207648 mailto:hansen at ill.fr, http://www.ill.fr/YellowBook/D20 Private: 13, all?e des ?tangs, 38240 Meylan, France, +33(0)476180553 -------------- next part -------------- A non-text attachment was scrubbed... Name: d20.instr Type: image/x-xbitmap Size: 40898 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: mcsim.pl Type: application/x-perl Size: 3366 bytes Desc: Document URL: -------------- next part -------------- Source_alpha=.1 Source_beta=.1 Source_N_E=71 Source_N_xpos=1 Source_N_xdiv=1 Source_Lmin=2.3 Source_Lmax=2.5 Filter_d=0.05 Mono_position=17.2 Mono_omega=0 Mono_foccus=0.3 Mono_mosh=10 Mono_mosv=10 Mono_a=5.65 Mono_Vc=180.362 Mono_h0=3 Mono_k0=3 Mono_l0=5 Mono_h=1 Mono_k=1 Mono_l=3 Mono_F2=536.64 Mono_B=1 Mono_xmax=0.008 Mono_ymax=0.019 Mono_dist=0.020 Mono_zmax=0.07 Mono_blades=15 Mono_harmonic=3 Mono_LIMIT=10001 Takeoff=-90 -------------- next part -------------- A non-text attachment was scrubbed... Name: d20.par Type: image/x-xbitmap Size: 861 bytes Desc: not available URL: -------------- next part -------------- #0.700000 0.003500 0.050000 0.000100 # sample: packing radius height wall #1.472205 0.153000 0.100000 0.053205 3.000000 # PSD: radius height pitch gap pressure 160.176 1.368 0.032 # Si powder: Vc sig_a sig_i 24 2.004 8 550.881 0.979320 1 1 1 1 3.272 12 1101.763 0.945799 1 2 2 0 4.008 8 0.000 0.919810 1 2 2 2 3.837 24 550.881 0.926239 1 3 1 1 5.043 24 550.880 0.876036 1 3 3 1 6.012 8 550.881 0.828554 1 3 3 3 4.628 6 1101.763 0.894535 1 4 0 0 5.668 24 1101.763 0.846050 1 4 2 2 6.545 12 1101.763 0.800193 1 4 4 0 6.942 24 0.000 0.778205 1 4 4 2 8.016 8 1101.763 0.715801 1 4 4 4 6.012 24 550.881 0.828554 1 5 1 1 6.845 48 550.881 0.783645 1 5 3 1 7.587 24 550.881 0.741170 1 5 3 3 8.262 24 550.882 0.700998 1 5 5 1 8.887 24 550.882 0.663003 1 5 5 3 7.317 24 1101.763 0.756822 1 6 2 0 7.674 24 0.000 0.736026 1 6 2 2 8.658 48 1101.763 0.677004 1 6 4 2 9.540 24 0.000 0.622715 1 6 4 4 8.262 24 550.882 0.700998 1 7 1 1 8.887 48 550.881 0.663003 1 7 3 1 9.470 24 550.883 0.627067 1 7 3 3 9.256 6 1101.763 0.640309 1 8 0 0 1889.494 133.139 19.677 YIG 210 YIG 0.719 12 0.000 0.998322 1.016 6 0.000 0.996636 1.245 24 203.580 0.984168 1.438 12 3016.019 0.986776 1.607 24 0.000 0.992151 1.761 8 0.000 0.989722 1.902 48 1506.029 0.978739 2.033 6 98281.828 0.986199 2.156 12 0.000 0.986071 2.156 24 0.000 0.981520 2.273 24 54691.691 0.986475 2.384 24 36367.449 0.977947 2.490 24 18260.684 0.979746 2.592 48 13085.104 0.977365 2.592 24 0.000 0.980939 2.784 48 9884.264 0.981401 2.875 12 11381.769 0.984795 2.963 24 0.000 0.972488 2.963 24 0.000 0.974189 3.049 24 0.000 0.970052 3.049 6 0.000 0.980046 3.133 48 4738.101 0.980699 3.133 24 26526.645 0.972831 3.214 24 17280.061 0.952795 3.294 48 1072.821 0.963691 3.371 24 0.000 0.964791 3.447 48 5640.986 0.945413 3.521 8 108324.977 0.971225 3.594 48 710.790 0.956927 3.594 12 0.000 0.972702 3.594 24 0.000 0.964389 3.665 24 190097.016 0.960594 3.735 24 8854.975 0.967531 3.735 24 2605.230 0.928074 3.735 48 136.468 0.844741 3.803 48 127188.094 0.952464 3.871 24 0.000 0.959452 4.002 48 48.465 1.173685 4.002 48 14212.914 0.934375 4.066 6 244666.688 0.951433 4.129 24 0.000 0.941082 4.129 48 7215.575 0.943539 4.129 24 0.000 0.937901 4.191 24 0.000 0.946819 4.191 24 17019.494 0.941878 4.252 48 8083.322 0.921666 4.313 12 734.671 1.049026 4.313 24 10628.211 0.910545 4.372 48 7646.340 0.936915 4.372 24 0.000 0.915093 4.372 48 776.047 0.936915 4.431 24 0.000 0.930654 4.489 48 8357.111 0.913423 4.546 24 99628.523 0.932912 4.602 24 0.000 0.925655 4.602 24 0.000 0.927404 4.658 48 41391.684 0.946833 4.713 24 6454.844 0.952557 4.713 48 20689.980 0.912980 4.713 48 1554.205 0.876190 4.768 24 82241.906 0.926566 4.822 48 21384.988 0.923807 4.822 48 15318.223 0.923807 4.822 24 0.000 0.925684 4.928 48 504.394 0.824814 4.928 48 19.874 1.482843 4.980 24 16359.466 0.889442 5.031 12 0.000 0.922682 5.031 48 39592.711 0.917322 5.031 48 25325.520 0.917322 5.082 24 129.762 0.915708 5.082 6 0.000 0.924715 5.133 24 1579.174 0.975029 5.133 24 20095.832 0.897369 5.183 48 673.349 1.077036 5.183 24 43752.160 0.932161 5.233 48 10300.698 0.910883 5.233 24 0.000 0.893915 5.282 8 0.000 0.903652 5.282 24 0.000 0.903433 5.330 48 11530.723 0.931612 5.330 48 131.671 0.698822 5.330 48 1564.328 0.844278 5.426 24 0.000 0.903811 5.426 24 0.000 0.911782 5.426 48 5560.977 0.904489 5.474 48 43032.797 0.926892 5.474 24 121046.172 0.917166 5.521 48 869.710 0.995956 5.521 24 1071.323 0.986376 5.567 48 100115.828 0.901113 5.614 48 1334.206 0.898139 5.614 48 1100.267 0.898139 5.614 24 0.000 0.894209 5.705 48 44.953 0.516079 5.705 48 11047.518 0.922668 5.705 48 4519.932 0.938451 5.750 12 231623.359 0.905655 5.795 24 0.000 0.898561 5.795 24 0.000 0.895735 5.839 24 0.000 0.902606 5.839 24 0.000 0.884242 5.883 24 24914.727 0.869469 5.883 48 7679.861 0.854214 5.883 48 125.314 1.182243 5.883 48 1178.122 0.802006 5.927 24 7067.095 0.950199 5.927 24 11585.631 0.936204 5.970 48 462.440 0.885574 5.970 48 5778.562 0.885574 6.014 48 22267.492 0.884016 6.056 48 486.486 1.034189 6.099 24 72231.336 0.882867 6.099 6 19129.297 0.884716 6.141 48 72.866 0.879357 6.141 48 27934.947 0.879357 6.141 48 5137.507 0.879357 6.141 24 0.000 0.883748 6.141 24 0.000 0.887918 6.183 24 66256.578 0.901881 6.225 24 1145.936 0.779438 6.225 48 2368.012 0.946966 6.225 48 2.107 0.093289 6.266 48 84037.055 0.876638 6.266 24 134249.734 0.876239 6.307 48 1321.134 0.873184 6.307 48 23028.475 0.873184 6.388 48 378.576 0.698084 6.388 48 1202.565 0.771261 6.429 24 4163.282 0.777967 6.469 24 0.000 0.847652 6.469 12 0.000 0.913683 6.469 48 1046.849 0.867055 6.469 24 0.000 0.732765 6.509 24 0.000 0.861072 6.509 24 10020.346 0.865529 6.509 48 100.722 0.865529 6.548 48 5719.824 0.913443 6.548 24 10481.625 0.900393 6.548 48 34038.199 0.884106 6.587 48 2212.532 0.734415 6.627 48 8340.317 0.860968 6.627 24 0.000 0.864604 6.627 48 1144.634 0.860968 6.627 24 0.000 0.866319 6.665 24 0.000 0.861820 6.704 48 4163.081 0.799453 6.704 48 2879.308 0.931003 6.704 48 18606.156 0.830018 6.743 24 31417.455 0.935357 6.781 24 0.000 0.851566 6.781 48 19656.873 0.854924 6.781 24 0.000 0.899097 6.819 48 154874.438 0.872072 6.819 24 45146.090 0.888126 6.856 48 1.584 6.976236 6.856 48 51.244 1.500796 6.856 48 1127.712 0.974933 6.894 48 50511.836 0.853395 6.931 48 34190.152 0.848923 6.931 48 2164.648 0.848923 6.931 48 524.398 0.848923 7.006 48 10537.984 0.806079 7.042 8 279514.156 0.860435 7.079 48 4450.304 0.842964 7.079 48 91.726 0.842964 7.079 24 0.000 0.833867 7.079 48 236.346 0.842964 7.079 48 13131.040 0.842964 7.079 24 0.000 0.818209 7.115 48 2832.459 0.841480 7.115 6 0.000 0.853769 7.152 24 55446.820 0.821886 7.152 24 10563.778 0.798793 7.152 48 29967.029 0.815409 7.152 24 871.975 0.991503 7.188 48 2430.303 0.697682 7.188 12 61323.203 0.809452 7.188 24 15699.059 0.781564 7.223 24 0.000 0.866574 7.223 48 26204.113 0.837046 7.259 24 0.000 0.837881 7.259 24 0.000 0.829693 7.295 48 11099.855 0.792550 7.295 48 1751.051 0.731513 7.295 48 1620.526 0.947878 7.295 48 5809.077 0.776945 7.295 48 3604.480 0.909587 7.330 24 73445.188 0.835414 7.365 48 15921.470 0.831170 7.365 48 5873.266 0.831170 7.400 48 76166.891 0.860376 7.400 24 54682.270 0.865962 7.435 48 19258.697 0.795594 7.435 24 2714.380 0.742726 7.470 24 165646.812 0.828709 7.470 24 74290.812 0.829656 7.470 48 151288.562 0.828798 7.504 48 10344.729 0.825335 7.504 48 5411.900 0.825336 7.504 24 0.000 0.822316 7.573 48 1254.346 0.694604 7.573 48 148.693 0.481002 7.573 48 30448.402 0.795615 7.607 48 1966.262 1.010599 7.640 24 0.000 0.827541 7.640 48 6363.631 0.819542 7.640 24 0.000 0.837935 7.674 24 0.000 0.824846 7.674 24 0.000 0.818697 160.176 1.368 0.032 Si 24 2.004 8 550.837 0.940795 3.272 12 1101.675 0.849807 4.008 8 0.000 0.783395 3.837 24 550.837 0.799495 5.043 24 550.836 0.679416 6.012 8 550.837 0.577373 4.628 6 1101.675 0.722172 5.668 24 1101.675 0.613707 6.545 12 1101.675 0.521533 6.942 24 0.000 0.480775 8.016 8 1101.675 0.376637 6.012 24 550.837 0.577373 6.845 48 550.837 0.490656 7.587 24 550.837 0.416963 8.262 24 550.838 0.354338 8.887 24 550.838 0.301119 7.317 24 1101.675 0.443202 7.674 24 0.000 0.408566 8.658 48 1101.675 0.320069 9.540 24 0.000 0.250740 8.262 24 550.837 0.354338 8.887 48 550.836 0.301119 9.470 24 550.839 0.255893 9.256 6 1101.675 0.271997 24.265 5.120 0.800 Fe 10 Fe 3.100 12 357.210 0.940960 1 4.384 6 357.210 0.885405 1 5.369 24 357.210 0.833130 1 6.200 12 357.210 0.783942 1 6.932 24 357.210 0.737658 1 7.593 8 357.210 0.694106 1 8.202 48 357.210 0.653126 1 8.768 6 357.210 0.614565 1 9.300 24 357.210 0.578281 1 9.300 12 357.210 0.578281 1 -------------- next part -------------- # 0.600000 0.003500 0.050000 0.000100 # sample: packing radius height wall # 1.472205 0.153000 0.100000 0.053205 3.000000 # PSD: radius height pitch gap pressure 1889.494 133.139 19.677 # YIG powder: Vc sig_a sig_i 400 YIG 0.719 12 0.000 0.998322 1 1 0 1.016 6 0.000 0.996636 2 0 0 1.245 24 203.580 0.984168 2 1 1 1.438 12 3016.019 0.986776 2 2 0 1.607 24 0.000 0.992151 3 1 0 1.761 8 0.000 0.989722 2 2 2 1.902 48 1506.029 0.978739 3 2 1 2.033 6 98281.828 0.986199 4 0 0 2.156 12 0.000 0.986071 3 3 0 2.156 24 0.000 0.981520 4 1 1 2.273 24 54691.691 0.986475 4 2 0 2.384 24 36367.449 0.977947 3 3 2 2.490 24 18260.684 0.979746 4 2 2 2.592 48 13085.104 0.977365 4 3 1 2.592 24 0.000 0.980939 5 1 0 2.784 48 9884.264 0.981401 5 2 1 2.875 12 11381.769 0.984795 4 4 0 2.963 24 0.000 0.972488 4 3 3 2.963 24 0.000 0.974189 5 3 0 3.049 24 0.000 0.970052 4 4 2 3.049 6 0.000 0.980046 6 0 0 3.133 48 4738.101 0.980699 5 3 2 3.133 24 26526.645 0.972831 6 1 1 3.214 24 17280.061 0.952795 6 2 0 3.294 48 1072.821 0.963691 5 4 1 3.371 24 0.000 0.964791 6 2 2 3.447 48 5640.986 0.945413 6 3 1 3.521 8 108324.977 0.971225 4 4 4 3.594 48 710.790 0.956927 5 4 3 3.594 12 0.000 0.972702 5 5 0 3.594 24 0.000 0.964389 7 1 0 3.665 24 190097.016 0.960594 6 4 0 3.735 24 8854.975 0.967531 5 5 2 3.735 24 2605.230 0.928074 6 3 3 3.735 48 136.468 0.844741 7 2 1 3.803 48 127188.094 0.952464 6 4 2 3.871 24 0.000 0.959452 7 3 0 4.002 48 48.465 1.173685 6 5 1 4.002 48 14212.914 0.934375 7 3 2 4.066 6 244666.688 0.951433 8 0 0 4.129 24 0.000 0.941082 5 5 4 4.129 48 7215.575 0.943539 7 4 1 4.129 24 0.000 0.937901 8 1 1 4.191 24 0.000 0.946819 6 4 4 4.191 24 17019.494 0.941878 8 2 0 4.252 48 8083.322 0.921666 6 5 3 4.313 12 734.671 1.049026 6 6 0 4.313 24 10628.211 0.910545 8 2 2 4.372 48 7646.340 0.936915 7 4 3 4.372 24 0.000 0.915093 7 5 0 4.372 48 776.047 0.936915 8 3 1 4.431 24 0.000 0.930654 6 6 2 4.489 48 8357.111 0.913423 7 5 2 4.546 24 99628.523 0.932912 8 4 0 4.602 24 0.000 0.925655 8 3 3 4.602 24 0.000 0.927404 9 1 0 4.658 48 41391.684 0.946833 8 4 2 4.713 24 6454.844 0.952557 6 5 5 4.713 48 20689.980 0.912980 7 6 1 4.713 48 1554.205 0.876190 9 2 1 4.768 24 82241.906 0.926566 6 6 4 4.822 48 21384.988 0.923807 7 5 4 4.822 48 15318.223 0.923807 8 5 1 4.822 24 0.000 0.925684 9 3 0 4.928 48 504.394 0.824814 7 6 3 4.928 48 19.874 1.482843 9 3 2 4.980 24 16359.466 0.889442 8 4 4 5.031 12 0.000 0.922682 7 7 0 5.031 48 39592.711 0.917322 8 5 3 5.031 48 25325.520 0.917322 9 4 1 5.082 24 129.762 0.915708 8 6 0 5.082 6 0.000 0.924715 10 0 0 5.133 24 1579.174 0.975029 7 7 2 5.133 24 20095.832 0.897369 10 1 1 5.183 48 673.349 1.077036 8 6 2 5.183 24 43752.160 0.932161 10 2 0 5.233 48 10300.698 0.910883 9 4 3 5.233 24 0.000 0.893915 9 5 0 5.282 8 0.000 0.903652 6 6 6 5.282 24 0.000 0.903433 10 2 2 5.330 48 11530.723 0.931612 7 6 5 5.330 48 131.671 0.698822 9 5 2 5.330 48 1564.328 0.844278 10 3 1 5.426 24 0.000 0.903811 7 7 4 5.426 24 0.000 0.911782 8 5 5 5.426 48 5560.977 0.904489 8 7 1 5.474 48 43032.797 0.926892 8 6 4 5.474 24 121046.172 0.917166 10 4 0 5.521 48 869.710 0.995956 9 6 1 5.521 24 1071.323 0.986376 10 3 3 5.567 48 100115.828 0.901113 10 4 2 5.614 48 1334.206 0.898139 8 7 3 5.614 48 1100.267 0.898139 9 5 4 5.614 24 0.000 0.894209 11 1 0 5.705 48 44.953 0.516079 9 6 3 5.705 48 11047.518 0.922668 10 5 1 5.705 48 4519.932 0.938451 11 2 1 5.750 12 231623.359 0.905655 8 8 0 5.795 24 0.000 0.898561 9 7 0 5.795 24 0.000 0.895735 11 3 0 5.839 24 0.000 0.902606 8 8 2 5.839 24 0.000 0.884242 10 4 4 5.883 24 24914.727 0.869469 7 7 6 5.883 48 7679.861 0.854214 9 7 2 5.883 48 125.314 1.182243 10 5 3 5.883 48 1178.122 0.802006 11 3 2 5.927 24 7067.095 0.950199 8 6 6 5.927 24 11585.631 0.936204 10 6 0 5.970 48 462.440 0.885574 8 7 5 5.970 48 5778.562 0.885574 11 4 1 6.014 48 22267.492 0.884016 10 6 2 6.056 48 486.486 1.034189 9 6 5 6.099 24 72231.336 0.882867 8 8 4 6.099 6 19129.297 0.884716 12 0 0 6.141 48 72.866 0.879357 9 7 4 6.141 48 27934.947 0.879357 9 8 1 6.141 48 5137.507 0.879357 11 4 3 6.141 24 0.000 0.883748 11 5 0 6.141 24 0.000 0.887918 12 1 1 6.183 24 66256.578 0.901881 12 2 0 6.225 24 1145.936 0.779438 10 5 5 6.225 48 2368.012 0.946966 10 7 1 6.225 48 2.107 0.093289 11 5 2 6.266 48 84037.055 0.876638 10 6 4 6.266 24 134249.734 0.876239 12 2 2 6.307 48 1321.134 0.873184 9 8 3 6.307 48 23028.475 0.873184 12 3 1 6.388 48 378.576 0.698084 10 7 3 6.388 48 1202.565 0.771261 11 6 1 6.429 24 4163.282 0.777967 12 4 0 6.469 24 0.000 0.847652 8 7 7 6.469 12 0.000 0.913683 9 9 0 6.469 48 1046.849 0.867055 11 5 4 6.469 24 0.000 0.732765 12 3 3 6.509 24 0.000 0.861072 8 8 6 6.509 24 10020.346 0.865529 10 8 0 6.509 48 100.722 0.865529 12 4 2 6.548 48 5719.824 0.913443 9 7 6 6.548 24 10481.625 0.900393 9 9 2 6.548 48 34038.199 0.884106 11 6 3 6.587 48 2212.532 0.734415 10 8 2 6.627 48 8340.317 0.860968 9 8 5 6.627 24 0.000 0.864604 11 7 0 6.627 48 1144.634 0.860968 12 5 1 6.627 24 0.000 0.866319 13 1 0 6.665 24 0.000 0.861820 10 6 6 6.704 48 4163.081 0.799453 10 7 5 6.704 48 2879.308 0.931003 11 7 2 6.704 48 18606.156 0.830018 13 2 1 6.743 24 31417.455 0.935357 12 4 4 6.781 24 0.000 0.851566 9 9 4 6.781 48 19656.873 0.854924 12 5 3 6.781 24 0.000 0.899097 13 3 0 6.819 48 154874.438 0.872072 10 8 4 6.819 24 45146.090 0.888126 12 6 0 6.856 48 1.584 6.976236 10 9 1 6.856 48 51.244 1.500796 11 6 5 6.856 48 1127.712 0.974933 13 3 2 6.894 48 50511.836 0.853395 12 6 2 6.931 48 34190.152 0.848923 11 7 4 6.931 48 2164.648 0.848923 11 8 1 6.931 48 524.398 0.848923 13 4 1 7.006 48 10537.984 0.806079 10 9 3 7.042 8 279514.156 0.860435 8 8 8 7.079 48 4450.304 0.842964 9 8 7 7.079 48 91.726 0.842964 11 8 3 7.079 24 0.000 0.833867 12 5 5 7.079 48 236.346 0.842964 12 7 1 7.079 48 13131.040 0.842964 13 4 3 7.079 24 0.000 0.818209 13 5 0 7.115 48 2832.459 0.841480 12 6 4 7.115 6 0.000 0.853769 14 0 0 7.152 24 55446.820 0.821886 9 9 6 7.152 24 10563.778 0.798793 10 7 7 7.152 48 29967.029 0.815409 13 5 2 7.152 24 871.975 0.991503 14 1 1 7.188 48 2430.303 0.697682 10 8 6 7.188 12 61323.203 0.809452 10 10 0 7.188 24 15699.059 0.781564 14 2 0 7.223 24 0.000 0.866574 11 9 0 7.223 48 26204.113 0.837046 12 7 3 7.259 24 0.000 0.837881 10 10 2 7.259 24 0.000 0.829693 14 2 2 7.295 48 11099.855 0.792550 10 9 5 7.295 48 1751.051 0.731513 11 7 6 7.295 48 1620.526 0.947878 11 9 2 7.295 48 5809.077 0.776945 13 6 1 7.295 48 3604.480 0.909587 14 3 1 7.330 24 73445.188 0.835414 12 8 0 7.365 48 15921.470 0.831170 11 8 5 7.365 48 5873.266 0.831170 13 5 4 7.400 48 76166.891 0.860376 12 8 2 7.400 24 54682.270 0.865962 14 4 0 7.435 48 19258.697 0.795594 13 6 3 7.435 24 2714.380 0.742726 14 3 3 7.470 24 165646.812 0.828709 10 10 4 7.470 24 74290.812 0.829656 12 6 6 7.470 48 151288.562 0.828798 14 4 2 7.504 48 10344.729 0.825335 11 9 4 7.504 48 5411.900 0.825336 12 7 5 7.504 24 0.000 0.822316 13 7 0 7.573 48 1254.346 0.694604 11 10 1 7.573 48 148.693 0.481002 13 7 2 7.573 48 30448.402 0.795615 14 5 1 7.607 48 1966.262 1.010599 12 8 4 7.640 24 0.000 0.827541 9 9 8 7.640 48 6363.631 0.819542 12 9 1 7.640 24 0.000 0.837935 15 1 0 7.674 24 0.000 0.824846 10 8 8 7.674 24 0.000 0.818697 14 4 4 7.708 48 3849.914 0.896828 10 9 7 7.708 48 1094.647 0.676433 11 10 3 7.708 48 79.345 0.362349 13 6 5 7.708 48 79.048 1.454426 14 5 3 7.708 48 5521.893 0.883341 15 2 1 7.741 24 74.444 0.141779 14 6 0 7.775 48 15044.647 0.813789 11 8 7 7.775 48 11309.317 0.813789 12 9 3 7.775 48 14739.329 0.813789 13 7 4 7.775 48 3247.167 0.813789 13 8 1 7.775 24 0.000 0.828548 15 3 0 7.808 24 0.000 0.844919 10 10 6 7.808 48 11997.312 0.812357 14 6 2 7.841 48 19856.273 0.775865 11 9 6 7.841 48 13406.674 0.854643 15 3 2 7.906 12 0.000 0.816166 11 11 0 7.906 24 0.000 0.830149 12 7 7 7.906 48 7061.392 0.808076 13 8 3 7.906 48 2060.587 0.808076 15 4 1 7.939 48 93269.773 0.837780 12 8 6 7.939 24 47890.504 0.850255 12 10 0 7.971 48 7796.717 0.748176 11 10 5 7.971 24 7086.558 0.745438 11 11 2 7.971 24 2328.366 0.702413 14 5 5 7.971 48 19.962 0.066294 14 7 1 8.004 48 112340.125 0.806478 12 10 2 8.004 48 53296.637 0.807681 14 6 4 8.036 48 14131.926 0.802403 12 9 5 8.036 24 0.000 0.829866 13 9 0 8.036 48 956.852 0.802403 15 4 3 8.036 24 0.000 0.785195 15 5 0 8.100 48 125.046 1.339667 13 7 6 8.100 48 2835.213 0.703768 13 9 2 8.100 48 10.602 0.000098 14 7 3 8.100 48 1178.623 0.653589 15 5 2 8.132 6 151833.891 0.825886 16 0 0 8.163 24 0.000 0.795598 11 11 4 8.163 48 1550.868 0.796771 13 8 5 8.163 24 0.000 0.872871 16 1 1 8.195 48 242.107 0.795369 12 10 4 8.195 24 33236.344 0.795369 14 8 0 8.195 24 34660.660 0.795369 16 2 0 8.227 24 12606.899 0.842757 10 9 9 8.227 48 2381.923 0.687250 15 6 1 8.258 24 864.789 0.513735 10 10 8 8.258 48 6570.184 0.908619 14 8 2 8.258 24 6778.777 0.906760 16 2 2 8.289 48 966.176 0.791177 11 9 8 8.289 48 43581.391 0.791178 12 11 1 8.289 48 7196.764 0.791178 13 9 4 8.289 48 10670.142 0.791177 15 5 4 8.289 48 3204.440 0.791177 16 3 1 8.320 24 0.000 0.808097 14 6 6 8.351 48 200.804 1.226601 11 10 7 8.351 48 2200.392 0.910606 13 10 1 8.351 48 1091.037 0.629967 14 7 5 8.351 48 3256.225 0.888213 15 6 3 8.382 24 93462.555 0.790193 12 8 8 8.382 24 75682.148 0.790548 16 4 0 8.413 48 11445.481 0.785624 12 9 7 8.413 48 142.793 0.785624 12 11 3 8.413 24 0.000 0.807413 15 7 0 8.413 24 0.000 0.793343 16 3 3 8.443 48 66963.406 0.824903 14 8 4 8.443 48 152509.391 0.811070 16 4 2 8.474 24 991.613 0.613598 11 11 6 8.474 48 1375.104 0.637806 13 10 3 8.474 48 3873.620 0.694648 14 9 1 8.474 48 6604.764 0.853982 15 7 2 8.504 48 105229.992 0.784568 12 10 6 8.535 48 20650.426 0.780109 13 8 7 8.535 48 11068.548 0.780109 16 5 1 8.595 48 1777.985 0.920500 13 9 6 8.595 48 9026.879 0.839398 14 9 3 8.595 48 1867.975 0.649371 15 6 5 8.625 12 440.601 0.382222 12 12 0 8.625 24 4123.180 0.934647 16 4 4 8.655 48 2586.402 0.774632 12 11 5 8.655 24 0.000 0.773600 13 11 0 8.655 48 3.233 0.774635 15 7 4 8.655 48 53071.383 0.774632 15 8 1 8.655 48 3789.377 0.774632 16 5 3 8.655 24 0.000 0.795470 17 1 0 8.685 24 0.000 0.771895 12 12 2 8.685 24 3643.341 0.773269 16 6 0 8.714 48 941.143 0.591423 13 10 5 8.714 48 3285.156 0.878372 13 11 2 8.714 24 39280.148 0.801991 14 7 7 8.714 48 8748.503 0.710066 17 2 1 8.744 48 1214.614 0.512271 14 8 6 8.744 24 2282.333 0.576950 14 10 0 8.744 48 57.059 2.642583 16 6 2 8.773 48 308.901 0.769195 15 8 3 8.773 24 0.000 0.819555 17 3 0 8.803 8 0.000 0.755858 10 10 10 8.803 48 454.897 0.767840 14 10 2 8.832 48 12771.266 0.820756 11 10 9 8.832 48 6171.375 0.845140 14 9 5 8.832 48 590.266 1.034670 17 3 2 8.861 24 104101.289 0.832626 12 12 4 8.890 24 0.000 0.770600 11 11 8 8.890 24 0.000 0.675269 12 9 9 8.890 48 9594.028 0.763795 13 11 4 8.890 24 0.000 0.801700 15 9 0 8.890 24 0.000 0.763028 16 5 5 8.890 48 11653.093 0.763795 16 7 1 8.890 48 960.200 0.763795 17 4 1 8.919 48 41982.527 0.818643 12 10 8 8.919 48 84537.617 0.801842 16 6 4 8.948 48 1440.681 0.931723 15 7 6 8.948 48 6684.949 0.687764 15 9 2 8.977 48 31867.904 0.765981 14 10 4 9.006 48 3182.443 0.758433 12 11 7 9.006 48 58.134 0.758433 13 9 8 9.006 48 11570.396 0.758433 13 12 1 9.006 48 5064.502 0.758433 15 8 5 9.006 48 6890.246 0.758433 16 7 3 9.006 48 12437.841 0.758433 17 4 3 9.006 24 0.000 0.781995 17 5 0 9.063 48 2402.020 0.633288 13 10 7 9.063 48 935.103 0.974633 14 11 1 9.063 48 2552.169 0.636789 17 5 2 9.092 24 489417.750 0.772806 16 8 0 9.120 48 16024.504 0.753109 13 12 3 9.120 48 2811.926 0.753109 15 9 4 9.148 24 0.000 0.772726 12 12 6 9.148 24 0.000 0.725124 14 8 8 9.148 48 1665.530 0.751784 16 8 2 9.148 6 0.000 0.769562 18 0 0 9.176 48 13771.264 0.697036 13 11 6 9.176 48 29490.500 0.713739 14 9 7 9.176 48 15184.293 0.699537 14 11 3 9.176 48 1268.854 0.940422 15 10 1 9.176 48 229.789 0.388343 17 6 1 9.176 24 5101.780 0.663727 18 1 1 9.205 24 26858.607 0.685284 16 6 6 9.205 24 1676.267 1.033228 18 2 0 9.233 48 4989.955 0.747822 16 7 5 9.233 48 25568.219 0.747822 17 5 4 9.260 48 15964.095 0.746507 14 10 6 9.260 24 0.000 0.738002 18 2 2 9.288 48 4842.825 0.841539 15 10 3 9.288 48 59.952 1.821303 17 6 3 9.288 48 842.021 0.986068 18 3 1 9.316 48 73451.273 0.748262 16 8 4 9.344 48 1779.935 0.742573 13 12 5 9.344 12 0.000 0.750385 13 13 0 9.344 48 7446.031 0.742573 15 8 7 9.344 48 64.178 0.742571 16 9 1 9.344 24 0.000 0.721414 17 7 0 9.371 24 116010.547 0.777449 14 12 0 9.371 24 84.167 2.662763 18 4 0 9.399 24 16458.018 0.792424 11 11 10 9.399 24 25.086 2.650020 13 13 2 9.399 48 4530.413 0.841504 14 11 5 9.399 48 16069.531 0.793065 15 9 6 9.399 48 967.204 0.542545 17 7 2 9.399 24 13988.126 0.796950 18 3 3 9.426 24 37421.613 0.744935 12 10 10 9.426 48 39291.531 0.744784 14 12 2 9.426 48 52253.723 0.743969 18 4 2 9.454 48 8956.533 0.737360 12 11 9 9.454 24 0.000 0.769230 15 11 0 9.454 48 6119.978 0.737360 16 9 3 9.508 48 367.693 0.425812 13 10 9 9.508 48 205.257 1.279353 15 10 5 9.508 48 18085.365 0.685595 15 11 2 9.508 48 47413.023 0.704197 17 6 5 9.508 48 11488.113 0.673343 18 5 1 9.535 24 2087.741 0.507875 12 12 8 9.562 48 8.731 0.732185 13 11 8 9.562 24 0.000 0.730241 13 13 4 9.562 24 0.000 0.779491 16 7 7 9.562 48 7435.995 0.732184 17 7 4 9.562 48 4377.982 0.732184 17 8 1 9.589 48 21.935 0.730896 14 12 4 9.589 48 592.034 0.730895 16 8 6 9.589 24 12893.613 0.730895 16 10 0 9.589 24 0.000 0.733011 18 4 4 9.616 24 394.922 0.426086 14 9 9 9.616 48 1802.463 0.577434 18 5 3 9.643 48 986.512 1.137751 14 10 8 9.643 48 4248.782 0.563507 16 10 2 9.643 24 10720.993 0.622106 18 6 0 9.670 48 30420.504 0.727044 13 12 7 9.670 48 6393.077 0.727044 15 11 4 9.670 48 3875.861 0.727044 16 9 5 9.670 48 9838.925 0.727044 17 8 3 9.670 24 0.000 0.748096 19 1 0 9.697 48 8127.695 0.725765 18 6 2 9.723 48 770.210 0.495789 14 11 7 9.723 48 2651.060 0.595845 14 13 1 9.723 48 16128.882 0.670819 19 2 1 9.776 48 3330.684 0.721940 15 9 8 9.776 48 723.887 0.721940 15 12 1 9.776 24 0.000 0.759183 17 9 0 9.776 24 0.000 0.781093 19 3 0 9.802 48 6867.757 0.886021 16 10 4 9.829 24 35440.613 0.757362 13 13 6 9.829 48 10398.315 0.790245 14 13 3 9.829 48 6696.791 0.635780 15 10 7 9.829 48 9738.723 0.792662 17 7 6 9.829 48 285.456 1.197523 17 9 2 9.829 24 14787.541 0.662560 18 5 5 9.829 48 926.501 0.969829 18 7 1 9.829 48 3458.568 0.844357 19 3 2 9.855 48 101912.961 0.722259 14 12 6 9.855 48 70842.172 0.723083 18 6 4 9.881 48 4636.409 0.716873 15 12 3 9.881 48 871.953 0.716872 16 11 1 9.881 48 2569.428 0.716873 17 8 5 9.881 48 64.828 0.716872 19 4 1 9.933 48 2296.289 0.871588 15 11 6 9.933 48 3882.000 0.833895 18 7 3 9.959 24 429715.625 0.735588 16 8 8 9.985 24 0.000 0.728021 12 11 11 9.985 48 3829.123 0.711840 16 9 7 9.985 48 2300.313 0.711840 16 11 3 9.985 48 2157.346 0.711840 17 9 4 9.985 48 5.185 0.711839 19 4 3 9.985 24 0.000 0.731896 19 5 0 10.011 24 0.000 0.729847 12 12 10 10.011 24 8407.514 0.710588 18 8 0 10.037 48 4403.742 0.604092 13 11 10 10.037 48 0.061 333.109955 14 13 5 10.037 48 5228.630 0.612431 17 10 1 10.037 48 10274.168 0.639479 19 5 2 10.063 12 11096.196 0.827805 14 14 0 10.063 48 491.430 0.266939 16 10 6 10.063 48 354.569 0.210751 18 8 2 10.088 48 23376.588 0.706843 13 12 9 10.088 48 33480.711 0.706843 15 12 5 10.088 24 0.000 0.738399 15 13 0 10.114 24 0.000 0.727591 14 10 10 10.114 24 0.000 0.748768 14 14 2 10.114 24 0.000 0.757605 18 6 6 10.139 48 7466.300 0.621679 14 11 9 10.139 48 990.249 0.957920 15 13 2 10.139 48 1190.770 0.934025 17 10 3 10.139 48 9.645 0.329466 18 7 5 10.139 48 8873.878 0.784734 19 6 1 10.165 24 135888.438 0.706895 16 12 0 10.165 6 200452.516 0.706227 20 0 0 10.190 24 0.000 0.702737 13 13 8 10.190 48 12294.665 0.701881 16 11 5 10.190 48 5908.372 0.701881 17 8 7 10.190 48 3440.059 0.701881 19 5 4 10.190 24 0.000 0.664889 20 1 1 10.215 48 103570.594 0.744078 14 12 8 10.215 48 78204.258 0.750741 16 12 2 10.215 48 108975.664 0.742971 18 8 4 10.215 24 200123.938 0.731759 20 2 0 10.241 48 16443.350 0.642387 15 10 9 10.241 48 821.729 0.463152 17 9 6 10.241 48 183.235 0.256509 18 9 1 10.241 48 11.070 4.744914 19 6 3 10.266 24 85986.914 0.703017 14 14 4 10.266 24 176294.906 0.701557 20 2 2 10.291 48 1421.877 0.696954 15 11 8 10.291 48 10078.014 0.696954 15 13 4 10.291 24 0.000 0.705679 17 11 0 10.291 24 0.000 0.727756 19 7 0 10.291 48 7.288 0.696954 20 3 1 10.341 48 211.520 1.312292 14 13 7 10.341 48 1385.313 0.912704 17 10 5 10.341 48 16359.064 0.636597 17 11 2 10.341 48 490.017 0.394712 18 9 3 10.341 48 6772.580 0.789503 19 7 2 10.366 48 1908.914 0.434801 16 12 4 10.366 24 23541.840 0.613565 20 4 0 10.391 48 5924.918 0.692061 15 12 7 10.391 24 0.000 0.799210 16 9 9 10.391 24 0.000 0.729334 20 3 3 10.416 48 6394.384 0.690844 16 10 8 10.416 48 3046.540 0.690844 20 4 2 10.440 48 2461.563 0.543780 15 14 1 10.440 24 135.264 1.506200 18 7 7 10.440 48 19656.266 0.636037 19 6 5 10.465 48 22722.738 0.606361 18 8 6 10.465 24 17729.400 0.595911 18 10 0 10.490 48 5276.253 0.687204 16 11 7 10.490 48 448.920 0.687203 16 13 1 10.490 48 8295.166 0.687203 17 11 4 10.490 48 139.147 0.687203 19 7 4 10.490 48 0.328 0.687215 19 8 1 10.490 48 3527.839 0.687203 20 5 1 10.514 24 0.000 0.727619 14 14 6 10.514 48 48499.012 0.685994 18 10 2 10.539 48 647.314 0.413689 15 13 6 10.539 48 26527.465 0.637960 15 14 3 10.539 48 487.215 0.378284 18 9 5 10.563 8 52768.902 0.807684 12 12 12 10.563 24 92219.422 0.776506 20 4 4 10.588 48 5757.705 0.682379 13 12 11 10.588 48 9340.360 0.682379 16 13 3 10.588 48 710.295 0.682379 17 9 8 10.588 48 10436.022 0.682379 17 12 1 10.588 48 27884.703 0.682379 19 8 3 10.588 48 5.528 0.682372 20 5 3 10.612 48 62078.328 0.740588 16 12 6 10.612 24 2835.733 0.980520 20 6 0 10.637 24 336.916 1.175382 13 13 10 10.637 24 33559.977 0.637768 14 11 11 10.637 48 930.464 0.961942 17 10 7 10.661 48 98878.328 0.683607 14 12 10 10.661 48 42282.145 0.686166 18 10 4 10.661 48 68886.531 0.684564 20 6 2 10.685 48 1498.741 0.677589 17 12 3 10.685 24 0.000 0.698189 19 9 0 10.685 24 0.000 0.703940 21 1 0 10.733 48 2054.250 0.511190 14 13 9 10.733 48 13512.246 0.608545 15 11 10 10.733 48 874.002 0.433063 15 14 5 10.733 48 8341.328 0.765061 17 11 6 10.733 48 3496.692 0.547453 18 11 1 10.733 48 5957.996 0.576137 19 7 6 10.733 48 1422.699 0.480880 19 9 2 10.733 48 29.973 2.908144 21 2 1 10.781 48 1753.692 0.672832 15 12 9 10.781 12 0.000 0.664564 15 15 0 10.781 48 1753.916 0.672832 16 13 5 10.781 48 40.492 0.672836 19 8 5 10.781 24 0.000 0.690230 20 5 5 10.781 48 3651.796 0.672833 20 7 1 10.781 24 0.000 0.707799 21 3 0 10.805 24 53989.008 0.671649 16 14 0 10.805 24 0.000 0.643831 18 8 8 10.805 48 9669.600 0.671649 20 6 4 10.829 24 13108.416 0.602064 15 15 2 10.829 48 7.145 1.037184 18 9 7 10.829 48 5454.835 0.565999 18 11 3 10.829 48 11229.632 0.748505 21 3 2 10.853 24 15315.414 0.565674 14 14 8 10.853 24 22509.879 0.761307 16 10 10 10.853 48 3599.667 0.465110 16 14 2 10.877 48 18971.936 0.668109 15 13 8 10.877 48 6143.480 0.668110 16 11 9 10.877 48 6768.690 0.668109 17 12 5 10.877 24 0.000 0.688241 17 13 0 10.877 48 21970.449 0.668109 19 9 4 10.877 48 6369.703 0.668110 20 7 3 10.877 48 1052.865 0.668110 21 4 1 10.900 48 3017.939 0.666934 18 10 6 10.924 48 19252.697 0.725662 17 13 2 10.924 48 25930.057 0.616213 19 10 1 10.948 48 84530.609 0.670057 16 12 8 10.948 24 97406.680 0.669681 20 8 0 10.971 24 0.000 0.685600 15 15 4 10.971 48 10599.709 0.663419 21 4 3 10.971 24 0.000 0.643299 21 5 0 10.995 48 100173.562 0.711064 16 14 4 10.995 24 166767.672 0.699932 18 12 0 10.995 48 159852.547 0.700750 20 8 2 11.018 48 1658.682 0.878372 15 14 7 11.018 48 17370.697 0.600177 17 10 9 11.018 48 597.529 0.367525 18 11 5 11.018 48 997.503 0.426396 19 10 3 11.018 48 3084.364 0.521335 21 5 2 11.042 48 106769.031 0.664861 18 12 2 11.042 24 137048.594 0.664281 20 6 6 11.065 48 2199.089 0.658762 16 13 7 11.065 48 22348.607 0.658762 17 11 8 11.065 48 5517.560 0.658762 17 13 4 11.065 48 2181.360 0.658762 19 8 7 11.065 48 792.531 0.658762 20 7 5 11.112 48 94.408 1.790153 19 9 6 11.112 48 8604.981 0.749077 21 6 1 11.135 48 12669.628 0.783483 20 8 4 11.158 24 0.000 0.646298 13 13 12 11.158 48 9421.717 0.654138 16 15 1 11.158 48 210.036 0.654139 17 12 7 11.158 24 0.000 0.710653 19 11 0 11.158 48 92.088 0.654137 20 9 1 11.158 48 2810.931 0.654138 21 5 4 11.181 24 0.000 0.727377 14 12 12 11.181 48 5305.505 0.652987 18 12 4 11.181 6 0.000 0.654133 22 0 0 11.204 48 15691.037 0.720583 14 13 11 11.204 24 33526.344 0.606793 15 15 6 11.204 48 3536.515 0.800657 17 14 1 11.204 24 287.097 0.250511 18 9 9 11.204 48 7806.454 0.750322 19 10 5 11.204 48 812.864 0.390627 19 11 2 11.204 48 8561.631 0.745729 21 6 3 11.204 24 20528.598 0.594559 22 1 1 11.227 48 14.069 2.231752 16 14 6 11.227 48 3712.752 0.899219 18 10 8 11.227 24 759.892 1.253699 22 2 0 11.250 48 487.995 0.649546 15 12 11 11.250 48 2527.021 0.649546 16 15 3 11.250 48 4456.323 0.649545 20 9 3 11.250 24 0.000 0.652303 21 7 0 11.273 24 0.000 0.789600 14 14 10 11.273 24 0.000 0.653409 22 2 2 11.296 48 706.681 0.367562 15 13 10 11.296 48 297.195 0.248811 17 13 6 11.296 48 7711.250 0.554293 17 14 3 11.296 48 2570.974 0.490818 18 11 7 11.296 48 8067.584 0.745120 18 13 1 11.296 48 22961.691 0.704436 21 7 2 11.296 48 87.333 0.057870 22 3 1 11.342 24 0.000 0.685507 16 11 11 11.342 48 332.649 0.644986 19 11 4 11.342 24 0.000 0.746241 20 7 7 11.364 48 159977.438 0.683996 16 12 10 11.364 48 130867.500 0.688308 20 8 6 11.364 24 72803.609 0.703794 20 10 0 11.364 24 23748.637 0.750559 22 4 0 11.387 48 1212.476 0.912182 15 14 9 11.387 48 14.392 4.882132 18 13 3 11.387 48 1769.587 0.455264 21 6 5 11.387 24 51470.301 0.681020 22 3 3 11.410 48 99131.141 0.647012 18 12 6 11.410 48 29163.473 0.651607 20 10 2 11.410 48 92906.383 0.647192 22 4 2 11.432 48 10999.578 0.640458 16 13 9 11.432 48 4368.299 0.640459 16 15 5 11.432 48 31403.549 0.640459 19 9 8 11.432 48 119.824 0.640458 19 12 1 11.432 48 2748.602 0.640458 20 9 5 11.432 48 346.130 0.640457 21 7 4 11.432 48 8339.304 0.640458 21 8 1 11.478 48 5003.653 0.521834 17 11 10 11.478 48 3454.537 0.793780 17 14 5 11.478 48 4331.639 0.776329 19 10 7 11.478 48 503.373 0.311025 22 5 1 11.500 12 218894.016 0.675633 16 16 0 11.522 24 0.000 0.639138 15 15 8 11.522 48 13001.710 0.635962 17 12 9 11.522 24 0.000 0.631716 17 15 0 11.522 48 1780.457 0.635963 19 12 3 11.522 48 6706.062 0.635963 21 8 3 11.545 48 8059.045 0.634844 16 14 8 11.545 24 0.000 0.604006 16 16 2 11.545 48 8097.510 0.634843 20 10 4 11.545 24 0.000 0.657954 22 4 4 11.567 48 3729.106 0.498882 17 15 2 11.567 48 8971.104 0.729207 18 13 5 11.567 48 7212.025 0.535136 19 11 6 11.567 48 5994.438 0.526029 22 5 3 11.590 24 1666.043 1.035919 18 14 0 11.590 24 518.950 0.157468 22 6 0 11.612 48 17038.049 0.631498 17 13 8 11.612 48 2803.506 0.631498 20 11 1 11.612 24 0.000 0.667525 21 9 0 11.634 24 0.000 0.638608 18 10 10 11.634 48 22130.412 0.630387 18 14 2 11.634 48 1981.995 0.630388 22 6 2 11.656 48 116.182 0.077477 18 11 9 11.656 48 11704.309 0.550516 21 7 6 11.656 48 4335.886 0.502654 21 9 2 11.678 24 116167.578 0.633385 16 16 4 11.678 24 107535.102 0.633591 20 8 8 11.700 48 4930.005 0.627065 16 15 7 11.700 48 4708.191 0.627065 17 15 4 11.700 48 28224.625 0.627065 19 12 5 11.700 24 0.000 0.596998 19 13 0 11.700 48 2646.947 0.627066 20 9 7 11.700 48 918.285 0.627066 20 11 3 11.700 48 9310.486 0.627065 21 8 5 11.700 24 0.000 0.611802 23 1 0 11.723 48 74428.492 0.687569 18 12 8 11.745 24 36005.445 0.578920 14 13 13 11.745 48 21234.656 0.565384 17 14 7 11.745 48 5825.659 0.746672 19 13 2 11.745 24 23817.857 0.568623 22 5 5 11.745 48 2404.847 0.819144 22 7 1 11.745 48 14864.012 0.554119 23 2 1 11.766 24 117187.000 0.629019 14 14 12 11.766 48 163276.672 0.628214 18 14 4 11.766 48 51583.629 0.631695 20 10 6 11.766 48 66068.156 0.630769 22 6 4 11.788 48 2424.192 0.622663 15 13 12 11.788 48 12175.204 0.622663 21 9 4 11.788 24 0.000 0.684423 23 3 0 11.832 48 5088.439 0.752444 15 14 11 11.832 48 461.719 0.273537 18 13 7 11.832 48 9.878 6.746250 19 10 9 11.832 48 13722.126 0.546340 21 10 1 11.832 48 9360.422 0.716544 22 7 3 11.832 48 285.144 0.203293 23 3 2 11.854 24 245.206 1.926058 16 12 12 11.854 24 5207.864 0.841583 20 12 0 11.876 48 2550.054 0.618292 16 13 11 11.876 48 1977.929 0.618292 17 16 1 11.876 48 31793.830 0.618292 19 11 8 11.876 48 2590.990 0.618292 19 13 4 11.876 48 4312.363 0.618292 20 11 5 11.876 48 68.349 0.618293 23 4 1 11.897 24 0.000 0.601473 16 16 6 11.897 48 325.180 0.617205 20 12 2 11.897 24 7184.949 0.617204 22 8 0 11.919 24 2757.569 0.800199 15 15 10 11.919 48 6327.436 0.507762 17 15 6 11.919 48 4055.922 0.482407 18 15 1 11.919 48 242.952 0.172778 21 10 3 11.941 48 7888.565 0.458459 16 14 10 11.941 48 109.173 2.873094 22 8 2 11.962 48 10852.533 0.613952 17 12 11 11.962 48 16083.902 0.613952 17 16 3 11.962 48 21445.627 0.613952 19 12 7 11.962 48 1.472 0.613933 21 8 7 11.962 48 37939.918 0.613952 23 4 3 11.962 24 0.000 0.616921 23 5 0 11.984 48 1296.799 0.612872 18 14 6 11.984 24 0.000 0.712688 22 6 6 12.006 48 82.405 2.026851 17 13 10 12.006 48 18215.365 0.546157 18 15 3 12.006 48 9411.382 0.709300 19 14 1 12.006 48 2181.693 0.822372 21 9 6 12.006 48 335.092 1.210647 22 7 5 12.006 48 8659.716 0.517815 23 5 2 12.027 48 95207.109 0.718642 20 12 4 12.048 48 62.905 0.609640 16 15 9 12.048 24 0.000 0.614455 20 9 9 12.048 24 0.000 0.621012 21 11 0 12.070 48 20326.646 0.733442 20 10 8 12.070 48 105682.531 0.661900 22 8 4 12.091 48 21634.326 0.671532 17 14 9 12.091 24 972.384 0.937657 18 11 11 12.091 48 1994.939 0.830481 19 13 6 12.091 48 0.028 1184.492188 19 14 3 12.091 48 3860.352 0.764279 21 10 5 12.091 48 3519.251 0.462570 21 11 2 12.091 48 775.554 0.981970 22 9 1 12.091 48 10175.889 0.519880 23 6 1 12.113 48 76630.094 0.613261 18 12 10 12.134 48 3683.249 0.605362 17 16 5 12.134 48 3521.664 0.605362 20 11 7 12.134 48 124.058 0.605363 20 13 1 12.134 48 3462.126 0.605362 23 5 4 12.176 48 55.890 0.000408 18 13 9 12.176 48 97.423 1.905106 18 15 5 12.176 48 14498.582 0.528827 22 9 3 12.176 48 4836.832 0.477510 23 6 3 12.198 24 146829.391 0.652999 16 16 8 12.198 6 48972.145 0.691485 24 0 0 12.219 48 2249.633 0.601113 17 15 8 12.219 12 0.000 0.648104 17 17 0 12.219 48 731.749 0.601113 20 13 3 12.219 48 2019.349 0.601113 21 11 4 12.219 24 0.000 0.620825 23 7 0 12.219 24 0.000 0.585538 24 1 1 12.240 24 2309.716 0.600055 18 16 0 12.240 48 12503.156 0.600055 20 12 6 12.240 24 392.155 0.600055 24 2 0 12.261 24 8259.682 0.705990 17 17 2 12.261 48 1170.735 0.357480 19 11 10 12.261 48 3571.711 0.453139 19 14 5 12.261 24 23870.430 0.540168 22 7 7 12.261 48 11697.327 0.515888 23 7 2 12.282 48 1961.352 0.301177 18 14 8 12.282 48 2399.438 0.325265 18 16 2 12.282 48 8974.643 0.446666 22 8 6 12.282 24 20183.016 0.494621 22 10 0 12.282 24 4232.669 0.857612 24 2 2 12.303 48 8762.402 0.596893 19 12 9 12.303 24 0.000 0.652194 19 15 0 12.303 48 16475.064 0.596893 21 9 8 12.303 48 21749.035 0.596893 21 12 1 12.303 48 0.566 0.596886 24 3 1 12.324 8 0.000 0.643371 14 14 14 12.324 48 12293.235 0.595843 22 10 2 12.345 48 147.154 1.621171 15 14 13 12.345 48 1708.446 0.389242 19 15 2 12.345 48 516.791 1.079764 21 10 7 12.345 48 11336.400 0.509842 22 9 5 12.345 48 18111.604 0.527044 23 6 5 12.366 24 58389.941 0.601851 24 4 0 12.387 24 0.000 0.671713 15 15 12 12.387 24 0.000 0.735260 16 13 13 12.387 48 12095.004 0.592703 17 16 7 12.387 24 0.000 0.624602 17 17 4 12.387 48 6109.655 0.592703 19 13 8 12.387 48 1167.612 0.592703 20 13 5 12.387 48 486.571 0.592703 21 12 3 12.387 48 968.762 0.592702 23 7 4 12.387 48 2560.149 0.592703 23 8 1 12.387 24 0.000 0.590848 24 3 3 12.408 48 33698.273 0.690808 16 14 12 12.408 48 106267.023 0.646548 18 16 4 12.408 24 27260.693 0.702372 20 14 0 12.408 48 100993.477 0.647996 24 4 2 12.428 48 8679.107 0.493428 18 15 7 12.428 48 9943.497 0.499549 21 11 6 12.449 24 29955.414 0.601035 20 10 10 12.449 48 71944.438 0.596959 20 14 2 12.449 48 57275.621 0.597853 22 10 4 12.470 48 789.999 0.588542 16 15 11 12.470 48 10761.667 0.588542 17 13 12 12.470 48 26082.959 0.588543 19 15 4 12.470 48 4142.475 0.588543 20 11 9 12.470 48 3639.900 0.588543 23 8 3 12.470 48 17676.646 0.588542 24 5 1 12.511 48 236.687 0.130661 17 14 11 12.511 48 4685.903 0.455545 19 14 7 12.511 48 15084.020 0.511461 22 11 1 12.532 48 4970.170 0.384055 20 12 8 12.532 24 2797.412 0.326392 24 4 4 12.552 48 42385.359 0.584411 21 12 5 12.552 24 0.000 0.603295 21 13 0 12.552 24 0.000 0.614612 23 9 0 12.552 48 1401.835 0.584411 24 5 3 12.573 24 0.000 0.628182 16 16 10 12.573 24 0.000 0.574667 18 12 12 12.573 48 27.689 0.583384 20 14 4 12.573 24 0.000 0.593523 22 8 8 12.573 24 974.674 0.583382 24 6 0 12.594 48 7713.880 0.696704 17 15 10 12.594 24 625.189 0.261879 17 17 6 12.594 48 342.001 0.179135 18 13 11 12.594 48 2097.192 0.810675 18 17 1 12.594 48 486.338 1.098598 21 13 2 12.594 48 19185.775 0.653674 22 9 7 12.594 48 257.410 0.137906 22 11 3 12.594 48 21796.854 0.649147 23 7 6 12.594 48 2041.253 0.814043 23 9 2 12.614 48 42259.598 0.660673 18 16 6 12.614 48 1627.606 1.038560 24 6 2 12.635 48 9.570 0.580310 19 16 1 12.635 48 4582.844 0.580308 20 13 7 12.635 48 424.410 0.580309 23 8 5 12.655 48 31903.266 0.579287 18 14 10 12.655 48 5253.120 0.579288 22 10 6 12.675 48 2611.902 0.404740 18 17 3 12.675 48 13236.974 0.497375 19 15 6 12.675 48 1066.550 0.911786 21 10 9 12.716 48 6204.871 0.576235 17 16 9 12.716 48 6512.263 0.576235 19 12 11 12.716 48 7935.641 0.576235 19 16 3 12.716 48 1384.119 0.576235 20 15 1 12.716 48 6295.197 0.576235 21 11 8 12.716 48 24718.215 0.576235 21 13 4 12.716 48 5930.177 0.576235 23 9 4 12.716 24 0.000 0.586224 24 5 5 12.716 48 14408.281 0.576235 24 7 1 12.716 24 0.000 0.599632 25 1 0 12.736 24 120591.719 0.628172 22 12 0 12.736 48 34299.668 0.676419 24 6 4 12.757 48 156.663 0.060188 18 15 9 12.757 48 3943.698 0.739427 19 13 10 12.757 48 10074.289 0.481447 22 11 5 12.757 48 1050.248 0.913322 23 10 1 12.757 48 14211.491 0.658643 25 2 1 12.777 48 118851.406 0.579183 20 14 6 12.777 48 81153.352 0.580444 22 12 2 12.797 48 1636.235 0.572190 20 15 3 12.797 48 5481.227 0.572190 21 12 7 12.797 48 18053.295 0.572190 24 7 3 12.797 24 0.000 0.589848 25 3 0 12.837 48 7405.788 0.689516 18 17 5 12.837 48 2624.350 0.395211 19 14 9 12.837 48 2138.960 0.801308 21 14 1 12.837 48 10.241 1.610380 23 10 3 12.837 48 475.319 1.107143 25 3 2 12.857 24 400540.719 0.601597 24 8 0 12.878 24 0.000 0.594411 17 17 8 12.878 48 0.125 0.568303 19 16 5 12.878 24 0.000 0.668721 20 11 11 12.878 48 9156.891 0.568173 23 8 7 12.878 48 626.749 0.568173 25 4 1 12.898 48 752.168 0.567174 18 16 8 12.898 48 5026.329 0.567173 20 12 10 12.898 48 1582.216 0.567173 22 12 4 12.898 48 10010.276 0.567173 24 8 2 12.918 24 201.271 1.472532 15 15 14 12.918 48 222.695 0.098690 21 13 6 12.918 48 6281.894 0.448796 21 14 3 12.918 24 124.054 0.027292 22 9 9 12.918 48 7534.736 0.458458 23 9 6 12.938 24 6316.977 0.786949 16 14 14 12.938 12 29334.926 0.663537 18 18 0 12.938 48 1147.344 1.143397 22 10 8 12.938 24 3723.319 0.331233 24 6 6 12.958 48 19312.793 0.564184 16 15 13 12.958 48 1304.676 0.564185 19 15 8 12.958 24 0.000 0.629484 19 17 0 12.958 48 7762.704 0.564184 20 13 9 12.958 48 0.036 0.564203 20 15 5 12.958 24 0.000 0.552595 23 11 0 12.958 48 1174.496 0.564185 24 7 5 12.958 48 1864.236 0.564185 25 4 3 12.958 24 0.000 0.610466 25 5 0 12.977 24 0.000 1.007893 18 18 2 12.997 48 1257.012 0.317586 17 14 13 12.997 48 803.021 0.965953 19 17 2 12.997 48 3526.509 0.407812 22 11 7 12.997 48 33105.316 0.617943 22 13 1 12.997 48 3190.903 0.400563 23 10 5 12.997 48 2609.250 0.385052 23 11 2 12.997 48 628.391 0.236561 25 5 2 13.017 24 57828.707 0.570060 16 16 12 13.017 24 20781.746 0.576011 20 16 0 13.017 48 89788.805 0.568307 24 8 4 13.037 48 46834.953 0.560224 17 15 12 13.037 48 4458.039 0.560224 24 9 1 13.057 48 64854.797 0.633972 20 14 8 13.057 48 1893.262 1.063184 20 16 2 13.077 24 11205.765 0.468121 18 13 13 13.077 48 2285.663 0.369342 18 17 7 13.077 48 339.441 0.148501 21 11 10 13.077 48 8367.582 0.454671 21 14 5 13.077 48 7108.424 0.446360 22 13 3 13.077 48 21281.016 0.492060 25 6 1 13.096 48 68508.367 0.565478 18 14 12 13.096 24 155737.828 0.562708 18 18 4 13.096 48 103275.125 0.563951 22 12 6 13.116 48 11.861 0.556303 17 16 11 13.116 48 9.261 0.556294 19 16 7 13.116 48 858.044 0.556291 19 17 4 13.116 48 3173.471 0.556291 21 12 9 13.116 24 0.000 0.612472 21 15 0 13.116 48 3159.007 0.556291 23 11 4 13.116 48 11758.186 0.556291 24 9 3 13.116 48 817.126 0.556292 25 5 4 13.155 48 2785.415 0.760410 18 15 11 13.155 48 12620.544 0.468744 21 15 2 13.155 48 9819.387 0.660046 25 6 3 13.175 48 16619.480 0.433205 20 16 4 13.195 48 1551.486 0.552387 19 13 12 13.195 48 2451.736 0.552386 20 15 7 13.195 48 8249.820 0.552386 21 13 8 13.195 48 4248.809 0.552386 23 9 8 13.195 48 21355.518 0.552386 23 12 1 13.195 24 0.000 0.511862 24 7 7 13.195 24 0.000 0.532794 25 7 0 13.214 48 45.962 0.551413 24 8 6 13.214 24 1375.366 0.551414 24 10 0 13.214 6 0.000 0.581809 26 0 0 13.234 24 125.795 1.815142 17 17 10 13.234 48 3624.754 0.730497 19 14 11 13.234 48 20871.211 0.622388 22 13 5 13.234 48 16.691 0.846322 23 10 7 13.234 48 1982.095 0.799991 25 7 2 13.234 24 4838.143 0.704812 26 1 1 13.253 48 6534.444 0.364097 18 16 10 13.253 24 2222.547 0.955805 22 14 0 13.253 48 24731.307 0.449439 24 10 2 13.253 24 3270.319 0.298545 26 2 0 13.273 48 7338.060 0.548509 21 15 4 13.273 48 4058.442 0.548509 23 12 3 13.273 48 14392.250 0.548509 24 9 5 13.292 24 0.000 0.517475 18 18 6 13.292 24 0.000 0.554471 22 10 10 13.292 48 5628.166 0.547544 22 14 2 13.292 24 0.000 0.523200 26 2 2 13.311 48 727.746 0.986569 19 15 10 13.311 48 5154.896 0.696772 19 17 6 13.311 48 1101.667 0.894374 19 18 1 13.311 48 81.138 2.249579 21 14 7 13.311 48 2995.469 0.747331 22 11 9 13.311 48 1254.767 0.869951 23 11 6 13.311 48 2509.770 0.767480 25 6 5 13.311 48 2730.918 0.757605 26 3 1 13.331 24 43466.543 0.728675 20 12 12 13.350 48 216.962 0.544659 20 13 11 13.350 48 1647.968 0.544658 20 17 1 13.350 48 4276.428 0.544658 25 7 4 13.350 48 15238.885 0.544658 25 8 1 13.370 48 84474.062 0.610509 20 16 6 13.370 48 74722.828 0.614865 22 12 8 13.370 48 40800.441 0.641053 24 10 4 13.370 24 179990.234 0.589052 26 4 0 13.389 48 404.751 0.154578 18 17 9 13.389 48 4652.005 0.403703 19 18 3 13.389 24 391.049 1.179888 26 3 3 13.408 48 232808.609 0.546398 20 14 10 13.408 48 99927.586 0.548833 22 14 4 13.408 48 188579.734 0.546911 26 4 2 13.427 48 641.491 0.540835 19 16 9 13.427 48 3573.906 0.540835 20 17 3 13.427 48 1412.832 0.540835 21 16 1 13.427 48 2392.580 0.540836 23 12 5 13.427 24 0.000 0.583230 23 13 0 13.427 48 13539.380 0.540835 24 11 1 13.427 48 4325.955 0.540835 25 8 3 13.466 48 24231.410 0.475178 21 15 6 13.466 48 2542.877 0.355048 22 13 7 13.466 48 9143.574 0.651304 23 13 2 13.466 48 44289.496 0.491389 26 5 1 13.485 24 386159.906 0.572714 24 8 8 13.504 24 0.000 0.537275 16 15 15 13.504 48 79.871 0.537040 20 15 9 13.504 48 17695.494 0.537038 21 12 11 13.504 48 895.248 0.537037 21 16 3 13.504 48 12284.010 0.537038 24 9 7 13.504 48 2309.103 0.537038 24 11 3 13.504 24 0.000 0.591044 25 9 0 13.523 24 0.000 0.402816 16 16 14 13.523 24 0.000 0.504490 26 4 4 13.542 48 9775.623 0.436148 17 15 14 13.542 48 7637.786 0.659352 19 18 5 13.542 48 804.636 0.959318 21 13 10 13.542 48 3708.660 0.379537 22 15 1 13.542 48 7600.334 0.423640 23 10 9 13.542 48 924.706 0.926972 25 7 6 13.542 48 1905.093 0.325385 25 9 2 13.542 48 2232.918 0.339564 26 5 3 13.561 24 21222.117 0.656080 18 18 8 13.561 48 7232.998 0.354522 24 10 6 13.561 24 9536.754 0.720598 26 6 0 13.580 48 7.376 0.533264 17 16 13 13.580 48 8833.213 0.533268 19 17 8 13.580 48 507.977 0.533268 20 17 5 13.580 48 4764.306 0.533268 23 11 8 13.580 48 16286.252 0.533268 23 13 4 13.580 48 13357.467 0.533268 25 8 5 13.599 24 0.000 0.552398 18 14 14 13.599 48 240.404 0.532327 22 14 6 13.599 48 142.940 0.532329 26 6 2 13.618 48 1512.714 0.298800 18 15 13 13.618 48 13081.259 0.444836 21 14 9 13.618 48 5860.847 0.404917 22 15 3 13.637 48 68102.938 0.539222 20 16 8 13.637 24 161144.547 0.536148 24 12 0 13.656 24 0.000 0.567319 17 17 12 13.656 12 0.000 0.641853 19 19 0 13.656 48 1567.160 0.529524 21 16 5 13.656 48 1346.462 0.529525 23 12 7 13.656 48 21105.100 0.529525 24 11 5 13.656 48 24573.625 0.529525 25 9 4 13.675 48 55987.738 0.613047 18 16 12 13.675 24 294443.688 0.564651 20 18 0 13.675 48 83364.617 0.597342 24 12 2 13.694 48 21622.609 0.459374 19 14 13 13.694 24 833.602 0.229171 19 19 2 13.694 24 41057.730 0.580182 22 11 11 13.694 48 258.246 0.079186 23 14 1 13.694 48 12107.555 0.626306 25 10 1 13.694 24 5123.758 0.392501 26 5 5 13.694 48 1369.571 0.284268 26 7 1 13.713 48 123013.125 0.533304 20 18 2 13.713 48 71978.680 0.535331 22 12 10 13.713 48 60597.105 0.536107 26 6 4 13.732 48 36370.348 0.525808 19 15 12 13.732 48 6984.553 0.525808 21 15 8 13.732 24 0.000 0.556326 21 17 0 13.732 24 0.000 0.520802 27 1 0 13.769 48 805.905 0.956158 18 17 11 13.769 48 3654.744 0.365521 19 18 7 13.769 48 11134.515 0.429707 21 17 2 13.769 48 514.928 1.084913 22 13 9 13.769 48 1388.901 0.841474 22 15 5 13.769 48 5090.758 0.680468 23 13 6 13.769 48 118.760 1.919536 23 14 3 13.769 48 2065.000 0.778836 25 10 3 13.769 48 1673.389 0.810194 26 7 3 13.769 48 1752.430 0.304277 27 2 1 13.788 48 115.481 0.140374 24 12 4 13.807 48 13001.454 0.522117 19 16 11 13.807 24 0.000 0.550671 19 19 4 13.807 24 0.000 0.644168 20 13 13 13.807 48 3757.070 0.522116 20 17 7 13.807 24 0.000 0.619965 24 9 9 13.807 48 166.534 0.522118 25 8 7 13.807 24 0.000 0.642318 27 3 0 13.825 48 432.177 0.521196 20 14 12 13.825 48 12337.985 0.521198 20 18 4 13.825 24 6312.746 0.521198 22 16 0 13.825 48 1634.139 0.521198 24 10 8 13.825 24 6345.703 0.521198 26 8 0 13.844 48 1706.373 0.805092 25 9 6 13.844 48 3221.206 0.721440 27 3 2 13.863 48 3274.244 0.263069 22 14 8 13.863 48 3664.048 0.274854 22 16 2 13.863 48 4512.130 0.805788 26 8 2 13.881 48 202.873 0.518453 20 15 11 13.881 48 53.521 0.518447 21 16 7 13.881 48 164.154 0.518448 21 17 4 13.881 48 4790.123 0.518451 24 11 7 13.881 48 143.928 0.518449 24 13 1 13.881 24 0.000 0.551518 25 11 0 13.881 48 5639.001 0.518451 27 4 1 13.900 24 0.000 0.480472 18 18 10 13.900 24 0.000 0.536103 26 6 6 13.919 48 4715.988 0.374636 19 17 10 13.919 48 1152.720 0.252972 23 11 10 13.919 48 14412.105 0.608090 23 14 5 13.919 48 8711.256 0.409941 25 10 5 13.919 48 12031.894 0.425067 25 11 2 13.919 48 997.063 0.904037 26 7 5 13.956 48 1712.422 0.514812 21 13 12 13.956 48 51.106 0.514808 23 12 9 13.956 24 0.000 0.493669 23 15 0 13.956 48 3151.326 0.514811 24 13 3 13.956 48 4966.151 0.514812 27 4 3 13.956 24 0.000 0.544797 27 5 0 13.974 48 184851.469 0.560507 20 16 10 13.974 48 70229.789 0.590530 22 16 4 13.974 48 102809.844 0.576854 24 12 6 13.974 48 77585.695 0.586684 26 8 4 13.993 24 27149.818 0.579212 19 19 6 13.993 48 2431.204 0.749978 21 14 11 13.993 48 34488.859 0.457621 22 15 7 13.993 48 364.326 0.108468 23 15 2 13.993 48 1418.150 0.270548 26 9 1 13.993 48 9578.805 0.410609 27 5 2 14.011 48 46500.246 0.523157 20 18 6 14.030 48 0.084 0.511293 20 19 1 14.030 48 3199.971 0.511198 23 13 8 14.030 48 13297.949 0.511198 25 11 4 -------------- next part -------------- # 0.600000 0.003500 0.050000 0.000100 # sample: packing radius height wall # 1.472205 0.153000 0.100000 0.053205 3.000000 # PSD: radius height pitch gap pressure 1889.494 133.139 19.677 # YIG powder: Vc sigma_abs sigma_inc 1111 YIG 0.719 12 0.000 0.998322 1 1 0 1.016 6 0.000 0.996636 2 0 0 1.245 24 203.580 0.984168 2 1 1 1.438 12 3016.019 0.986776 2 2 0 1.607 24 0.000 0.992151 3 1 0 1.761 8 0.000 0.989722 2 2 2 1.902 48 1506.029 0.978739 3 2 1 2.033 6 98281.828 0.986199 4 0 0 2.156 12 0.000 0.986071 3 3 0 2.156 24 0.000 0.981520 4 1 1 2.273 24 54691.691 0.986475 4 2 0 2.384 24 36367.449 0.977947 3 3 2 2.490 24 18260.684 0.979746 4 2 2 2.592 48 13085.104 0.977365 4 3 1 2.592 24 0.000 0.980939 5 1 0 2.784 48 9884.264 0.981401 5 2 1 2.875 12 11381.769 0.984795 4 4 0 2.963 24 0.000 0.972488 4 3 3 2.963 24 0.000 0.974189 5 3 0 3.049 24 0.000 0.970052 4 4 2 3.049 6 0.000 0.980046 6 0 0 3.133 48 4738.101 0.980699 5 3 2 3.133 24 26526.645 0.972831 6 1 1 3.214 24 17280.061 0.952795 6 2 0 3.294 48 1072.821 0.963691 5 4 1 3.371 24 0.000 0.964791 6 2 2 3.447 48 5640.986 0.945413 6 3 1 3.521 8 108324.977 0.971225 4 4 4 3.594 48 710.790 0.956927 5 4 3 3.594 12 0.000 0.972702 5 5 0 3.594 24 0.000 0.964389 7 1 0 3.665 24 190097.016 0.960594 6 4 0 3.735 24 8854.975 0.967531 5 5 2 3.735 24 2605.230 0.928074 6 3 3 3.735 48 136.468 0.844741 7 2 1 3.803 48 127188.094 0.952464 6 4 2 3.871 24 0.000 0.959452 7 3 0 4.002 48 48.465 1.173685 6 5 1 4.002 48 14212.914 0.934375 7 3 2 4.066 6 244666.688 0.951433 8 0 0 4.129 24 0.000 0.941082 5 5 4 4.129 48 7215.575 0.943539 7 4 1 4.129 24 0.000 0.937901 8 1 1 4.191 24 0.000 0.946819 6 4 4 4.191 24 17019.494 0.941878 8 2 0 4.252 48 8083.322 0.921666 6 5 3 4.313 12 734.671 1.049026 6 6 0 4.313 24 10628.211 0.910545 8 2 2 4.372 48 7646.340 0.936915 7 4 3 4.372 24 0.000 0.915093 7 5 0 4.372 48 776.047 0.936915 8 3 1 4.431 24 0.000 0.930654 6 6 2 4.489 48 8357.111 0.913423 7 5 2 4.546 24 99628.523 0.932912 8 4 0 4.602 24 0.000 0.925655 8 3 3 4.602 24 0.000 0.927404 9 1 0 4.658 48 41391.684 0.946833 8 4 2 4.713 24 6454.844 0.952557 6 5 5 4.713 48 20689.980 0.912980 7 6 1 4.713 48 1554.205 0.876190 9 2 1 4.768 24 82241.906 0.926566 6 6 4 4.822 48 21384.988 0.923807 7 5 4 4.822 48 15318.223 0.923807 8 5 1 4.822 24 0.000 0.925684 9 3 0 4.928 48 504.394 0.824814 7 6 3 4.928 48 19.874 1.482843 9 3 2 4.980 24 16359.466 0.889442 8 4 4 5.031 12 0.000 0.922682 7 7 0 5.031 48 39592.711 0.917322 8 5 3 5.031 48 25325.520 0.917322 9 4 1 5.082 24 129.762 0.915708 8 6 0 5.082 6 0.000 0.924715 10 0 0 5.133 24 1579.174 0.975029 7 7 2 5.133 24 20095.832 0.897369 10 1 1 5.183 48 673.349 1.077036 8 6 2 5.183 24 43752.160 0.932161 10 2 0 5.233 48 10300.698 0.910883 9 4 3 5.233 24 0.000 0.893915 9 5 0 5.282 8 0.000 0.903652 6 6 6 5.282 24 0.000 0.903433 10 2 2 5.330 48 11530.723 0.931612 7 6 5 5.330 48 131.671 0.698822 9 5 2 5.330 48 1564.328 0.844278 10 3 1 5.426 24 0.000 0.903811 7 7 4 5.426 24 0.000 0.911782 8 5 5 5.426 48 5560.977 0.904489 8 7 1 5.474 48 43032.797 0.926892 8 6 4 5.474 24 121046.172 0.917166 10 4 0 5.521 48 869.710 0.995956 9 6 1 5.521 24 1071.323 0.986376 10 3 3 5.567 48 100115.828 0.901113 10 4 2 5.614 48 1334.206 0.898139 8 7 3 5.614 48 1100.267 0.898139 9 5 4 5.614 24 0.000 0.894209 11 1 0 5.705 48 44.953 0.516079 9 6 3 5.705 48 11047.518 0.922668 10 5 1 5.705 48 4519.932 0.938451 11 2 1 5.750 12 231623.359 0.905655 8 8 0 5.795 24 0.000 0.898561 9 7 0 5.795 24 0.000 0.895735 11 3 0 5.839 24 0.000 0.902606 8 8 2 5.839 24 0.000 0.884242 10 4 4 5.883 24 24914.727 0.869469 7 7 6 5.883 48 7679.861 0.854214 9 7 2 5.883 48 125.314 1.182243 10 5 3 5.883 48 1178.122 0.802006 11 3 2 5.927 24 7067.095 0.950199 8 6 6 5.927 24 11585.631 0.936204 10 6 0 5.970 48 462.440 0.885574 8 7 5 5.970 48 5778.562 0.885574 11 4 1 6.014 48 22267.492 0.884016 10 6 2 6.056 48 486.486 1.034189 9 6 5 6.099 24 72231.336 0.882867 8 8 4 6.099 6 19129.297 0.884716 12 0 0 6.141 48 72.866 0.879357 9 7 4 6.141 48 27934.947 0.879357 9 8 1 6.141 48 5137.507 0.879357 11 4 3 6.141 24 0.000 0.883748 11 5 0 6.141 24 0.000 0.887918 12 1 1 6.183 24 66256.578 0.901881 12 2 0 6.225 24 1145.936 0.779438 10 5 5 6.225 48 2368.012 0.946966 10 7 1 6.225 48 2.107 0.093289 11 5 2 6.266 48 84037.055 0.876638 10 6 4 6.266 24 134249.734 0.876239 12 2 2 6.307 48 1321.134 0.873184 9 8 3 6.307 48 23028.475 0.873184 12 3 1 6.388 48 378.576 0.698084 10 7 3 6.388 48 1202.565 0.771261 11 6 1 6.429 24 4163.282 0.777967 12 4 0 6.469 24 0.000 0.847652 8 7 7 6.469 12 0.000 0.913683 9 9 0 6.469 48 1046.849 0.867055 11 5 4 6.469 24 0.000 0.732765 12 3 3 6.509 24 0.000 0.861072 8 8 6 6.509 24 10020.346 0.865529 10 8 0 6.509 48 100.722 0.865529 12 4 2 6.548 48 5719.824 0.913443 9 7 6 6.548 24 10481.625 0.900393 9 9 2 6.548 48 34038.199 0.884106 11 6 3 6.587 48 2212.532 0.734415 10 8 2 6.627 48 8340.317 0.860968 9 8 5 6.627 24 0.000 0.864604 11 7 0 6.627 48 1144.634 0.860968 12 5 1 6.627 24 0.000 0.866319 13 1 0 6.665 24 0.000 0.861820 10 6 6 6.704 48 4163.081 0.799453 10 7 5 6.704 48 2879.308 0.931003 11 7 2 6.704 48 18606.156 0.830018 13 2 1 6.743 24 31417.455 0.935357 12 4 4 6.781 24 0.000 0.851566 9 9 4 6.781 48 19656.873 0.854924 12 5 3 6.781 24 0.000 0.899097 13 3 0 6.819 48 154874.438 0.872072 10 8 4 6.819 24 45146.090 0.888126 12 6 0 6.856 48 1.584 6.976236 10 9 1 6.856 48 51.244 1.500796 11 6 5 6.856 48 1127.712 0.974933 13 3 2 6.894 48 50511.836 0.853395 12 6 2 6.931 48 34190.152 0.848923 11 7 4 6.931 48 2164.648 0.848923 11 8 1 6.931 48 524.398 0.848923 13 4 1 7.006 48 10537.984 0.806079 10 9 3 7.042 8 279514.156 0.860435 8 8 8 7.079 48 4450.304 0.842964 9 8 7 7.079 48 91.726 0.842964 11 8 3 7.079 24 0.000 0.833867 12 5 5 7.079 48 236.346 0.842964 12 7 1 7.079 48 13131.040 0.842964 13 4 3 7.079 24 0.000 0.818209 13 5 0 7.115 48 2832.459 0.841480 12 6 4 7.115 6 0.000 0.853769 14 0 0 7.152 24 55446.820 0.821886 9 9 6 7.152 24 10563.778 0.798793 10 7 7 7.152 48 29967.029 0.815409 13 5 2 7.152 24 871.975 0.991503 14 1 1 7.188 48 2430.303 0.697682 10 8 6 7.188 12 61323.203 0.809452 10 10 0 7.188 24 15699.059 0.781564 14 2 0 7.223 24 0.000 0.866574 11 9 0 7.223 48 26204.113 0.837046 12 7 3 7.259 24 0.000 0.837881 10 10 2 7.259 24 0.000 0.829693 14 2 2 7.295 48 11099.855 0.792550 10 9 5 7.295 48 1751.051 0.731513 11 7 6 7.295 48 1620.526 0.947878 11 9 2 7.295 48 5809.077 0.776945 13 6 1 7.295 48 3604.480 0.909587 14 3 1 7.330 24 73445.188 0.835414 12 8 0 7.365 48 15921.470 0.831170 11 8 5 7.365 48 5873.266 0.831170 13 5 4 7.400 48 76166.891 0.860376 12 8 2 7.400 24 54682.270 0.865962 14 4 0 7.435 48 19258.697 0.795594 13 6 3 7.435 24 2714.380 0.742726 14 3 3 7.470 24 165646.812 0.828709 10 10 4 7.470 24 74290.812 0.829656 12 6 6 7.470 48 151288.562 0.828798 14 4 2 7.504 48 10344.729 0.825335 11 9 4 7.504 48 5411.900 0.825336 12 7 5 7.504 24 0.000 0.822316 13 7 0 7.573 48 1254.346 0.694604 11 10 1 7.573 48 148.693 0.481002 13 7 2 7.573 48 30448.402 0.795615 14 5 1 7.607 48 1966.262 1.010599 12 8 4 7.640 24 0.000 0.827541 9 9 8 7.640 48 6363.631 0.819542 12 9 1 7.640 24 0.000 0.837935 15 1 0 7.674 24 0.000 0.824846 10 8 8 7.674 24 0.000 0.818697 14 4 4 7.708 48 3849.914 0.896828 10 9 7 7.708 48 1094.647 0.676433 11 10 3 7.708 48 79.345 0.362349 13 6 5 7.708 48 79.048 1.454426 14 5 3 7.708 48 5521.893 0.883341 15 2 1 7.741 24 74.444 0.141779 14 6 0 7.775 48 15044.647 0.813789 11 8 7 7.775 48 11309.317 0.813789 12 9 3 7.775 48 14739.329 0.813789 13 7 4 7.775 48 3247.167 0.813789 13 8 1 7.775 24 0.000 0.828548 15 3 0 7.808 24 0.000 0.844919 10 10 6 7.808 48 11997.312 0.812357 14 6 2 7.841 48 19856.273 0.775865 11 9 6 7.841 48 13406.674 0.854643 15 3 2 7.906 12 0.000 0.816166 11 11 0 7.906 24 0.000 0.830149 12 7 7 7.906 48 7061.392 0.808076 13 8 3 7.906 48 2060.587 0.808076 15 4 1 7.939 48 93269.773 0.837780 12 8 6 7.939 24 47890.504 0.850255 12 10 0 7.971 48 7796.717 0.748176 11 10 5 7.971 24 7086.558 0.745438 11 11 2 7.971 24 2328.366 0.702413 14 5 5 7.971 48 19.962 0.066294 14 7 1 8.004 48 112340.125 0.806478 12 10 2 8.004 48 53296.637 0.807681 14 6 4 8.036 48 14131.926 0.802403 12 9 5 8.036 24 0.000 0.829866 13 9 0 8.036 48 956.852 0.802403 15 4 3 8.036 24 0.000 0.785195 15 5 0 8.100 48 125.046 1.339667 13 7 6 8.100 48 2835.213 0.703768 13 9 2 8.100 48 10.602 0.000098 14 7 3 8.100 48 1178.623 0.653589 15 5 2 8.132 6 151833.891 0.825886 16 0 0 8.163 24 0.000 0.795598 11 11 4 8.163 48 1550.868 0.796771 13 8 5 8.163 24 0.000 0.872871 16 1 1 8.195 48 242.107 0.795369 12 10 4 8.195 24 33236.344 0.795369 14 8 0 8.195 24 34660.660 0.795369 16 2 0 8.227 24 12606.899 0.842757 10 9 9 8.227 48 2381.923 0.687250 15 6 1 8.258 24 864.789 0.513735 10 10 8 8.258 48 6570.184 0.908619 14 8 2 8.258 24 6778.777 0.906760 16 2 2 8.289 48 966.176 0.791177 11 9 8 8.289 48 43581.391 0.791178 12 11 1 8.289 48 7196.764 0.791178 13 9 4 8.289 48 10670.142 0.791177 15 5 4 8.289 48 3204.440 0.791177 16 3 1 8.320 24 0.000 0.808097 14 6 6 8.351 48 200.804 1.226601 11 10 7 8.351 48 2200.392 0.910606 13 10 1 8.351 48 1091.037 0.629967 14 7 5 8.351 48 3256.225 0.888213 15 6 3 8.382 24 93462.555 0.790193 12 8 8 8.382 24 75682.148 0.790548 16 4 0 8.413 48 11445.481 0.785624 12 9 7 8.413 48 142.793 0.785624 12 11 3 8.413 24 0.000 0.807413 15 7 0 8.413 24 0.000 0.793343 16 3 3 8.443 48 66963.406 0.824903 14 8 4 8.443 48 152509.391 0.811070 16 4 2 8.474 24 991.613 0.613598 11 11 6 8.474 48 1375.104 0.637806 13 10 3 8.474 48 3873.620 0.694648 14 9 1 8.474 48 6604.764 0.853982 15 7 2 8.504 48 105229.992 0.784568 12 10 6 8.535 48 20650.426 0.780109 13 8 7 8.535 48 11068.548 0.780109 16 5 1 8.595 48 1777.985 0.920500 13 9 6 8.595 48 9026.879 0.839398 14 9 3 8.595 48 1867.975 0.649371 15 6 5 8.625 12 440.601 0.382222 12 12 0 8.625 24 4123.180 0.934647 16 4 4 8.655 48 2586.402 0.774632 12 11 5 8.655 24 0.000 0.773600 13 11 0 8.655 48 3.233 0.774635 15 7 4 8.655 48 53071.383 0.774632 15 8 1 8.655 48 3789.377 0.774632 16 5 3 8.655 24 0.000 0.795470 17 1 0 8.685 24 0.000 0.771895 12 12 2 8.685 24 3643.341 0.773269 16 6 0 8.714 48 941.143 0.591423 13 10 5 8.714 48 3285.156 0.878372 13 11 2 8.714 24 39280.148 0.801991 14 7 7 8.714 48 8748.503 0.710066 17 2 1 8.744 48 1214.614 0.512271 14 8 6 8.744 24 2282.333 0.576950 14 10 0 8.744 48 57.059 2.642583 16 6 2 8.773 48 308.901 0.769195 15 8 3 8.773 24 0.000 0.819555 17 3 0 8.803 8 0.000 0.755858 10 10 10 8.803 48 454.897 0.767840 14 10 2 8.832 48 12771.266 0.820756 11 10 9 8.832 48 6171.375 0.845140 14 9 5 8.832 48 590.266 1.034670 17 3 2 8.861 24 104101.289 0.832626 12 12 4 8.890 24 0.000 0.770600 11 11 8 8.890 24 0.000 0.675269 12 9 9 8.890 48 9594.028 0.763795 13 11 4 8.890 24 0.000 0.801700 15 9 0 8.890 24 0.000 0.763028 16 5 5 8.890 48 11653.093 0.763795 16 7 1 8.890 48 960.200 0.763795 17 4 1 8.919 48 41982.527 0.818643 12 10 8 8.919 48 84537.617 0.801842 16 6 4 8.948 48 1440.681 0.931723 15 7 6 8.948 48 6684.949 0.687764 15 9 2 8.977 48 31867.904 0.765981 14 10 4 9.006 48 3182.443 0.758433 12 11 7 9.006 48 58.134 0.758433 13 9 8 9.006 48 11570.396 0.758433 13 12 1 9.006 48 5064.502 0.758433 15 8 5 9.006 48 6890.246 0.758433 16 7 3 9.006 48 12437.841 0.758433 17 4 3 9.006 24 0.000 0.781995 17 5 0 9.063 48 2402.020 0.633288 13 10 7 9.063 48 935.103 0.974633 14 11 1 9.063 48 2552.169 0.636789 17 5 2 9.092 24 489417.750 0.772806 16 8 0 9.120 48 16024.504 0.753109 13 12 3 9.120 48 2811.926 0.753109 15 9 4 9.148 24 0.000 0.772726 12 12 6 9.148 24 0.000 0.725124 14 8 8 9.148 48 1665.530 0.751784 16 8 2 9.148 6 0.000 0.769562 18 0 0 9.176 48 13771.264 0.697036 13 11 6 9.176 48 29490.500 0.713739 14 9 7 9.176 48 15184.293 0.699537 14 11 3 9.176 48 1268.854 0.940422 15 10 1 9.176 48 229.789 0.388343 17 6 1 9.176 24 5101.780 0.663727 18 1 1 9.205 24 26858.607 0.685284 16 6 6 9.205 24 1676.267 1.033228 18 2 0 9.233 48 4989.955 0.747822 16 7 5 9.233 48 25568.219 0.747822 17 5 4 9.260 48 15964.095 0.746507 14 10 6 9.260 24 0.000 0.738002 18 2 2 9.288 48 4842.825 0.841539 15 10 3 9.288 48 59.952 1.821303 17 6 3 9.288 48 842.021 0.986068 18 3 1 9.316 48 73451.273 0.748262 16 8 4 9.344 48 1779.935 0.742573 13 12 5 9.344 12 0.000 0.750385 13 13 0 9.344 48 7446.031 0.742573 15 8 7 9.344 48 64.178 0.742571 16 9 1 9.344 24 0.000 0.721414 17 7 0 9.371 24 116010.547 0.777449 14 12 0 9.371 24 84.167 2.662763 18 4 0 9.399 24 16458.018 0.792424 11 11 10 9.399 24 25.086 2.650020 13 13 2 9.399 48 4530.413 0.841504 14 11 5 9.399 48 16069.531 0.793065 15 9 6 9.399 48 967.204 0.542545 17 7 2 9.399 24 13988.126 0.796950 18 3 3 9.426 24 37421.613 0.744935 12 10 10 9.426 48 39291.531 0.744784 14 12 2 9.426 48 52253.723 0.743969 18 4 2 9.454 48 8956.533 0.737360 12 11 9 9.454 24 0.000 0.769230 15 11 0 9.454 48 6119.978 0.737360 16 9 3 9.508 48 367.693 0.425812 13 10 9 9.508 48 205.257 1.279353 15 10 5 9.508 48 18085.365 0.685595 15 11 2 9.508 48 47413.023 0.704197 17 6 5 9.508 48 11488.113 0.673343 18 5 1 9.535 24 2087.741 0.507875 12 12 8 9.562 48 8.731 0.732185 13 11 8 9.562 24 0.000 0.730241 13 13 4 9.562 24 0.000 0.779491 16 7 7 9.562 48 7435.995 0.732184 17 7 4 9.562 48 4377.982 0.732184 17 8 1 9.589 48 21.935 0.730896 14 12 4 9.589 48 592.034 0.730895 16 8 6 9.589 24 12893.613 0.730895 16 10 0 9.589 24 0.000 0.733011 18 4 4 9.616 24 394.922 0.426086 14 9 9 9.616 48 1802.463 0.577434 18 5 3 9.643 48 986.512 1.137751 14 10 8 9.643 48 4248.782 0.563507 16 10 2 9.643 24 10720.993 0.622106 18 6 0 9.670 48 30420.504 0.727044 13 12 7 9.670 48 6393.077 0.727044 15 11 4 9.670 48 3875.861 0.727044 16 9 5 9.670 48 9838.925 0.727044 17 8 3 9.670 24 0.000 0.748096 19 1 0 9.697 48 8127.695 0.725765 18 6 2 9.723 48 770.210 0.495789 14 11 7 9.723 48 2651.060 0.595845 14 13 1 9.723 48 16128.882 0.670819 19 2 1 9.776 48 3330.684 0.721940 15 9 8 9.776 48 723.887 0.721940 15 12 1 9.776 24 0.000 0.759183 17 9 0 9.776 24 0.000 0.781093 19 3 0 9.802 48 6867.757 0.886021 16 10 4 9.829 24 35440.613 0.757362 13 13 6 9.829 48 10398.315 0.790245 14 13 3 9.829 48 6696.791 0.635780 15 10 7 9.829 48 9738.723 0.792662 17 7 6 9.829 48 285.456 1.197523 17 9 2 9.829 24 14787.541 0.662560 18 5 5 9.829 48 926.501 0.969829 18 7 1 9.829 48 3458.568 0.844357 19 3 2 9.855 48 101912.961 0.722259 14 12 6 9.855 48 70842.172 0.723083 18 6 4 9.881 48 4636.409 0.716873 15 12 3 9.881 48 871.953 0.716872 16 11 1 9.881 48 2569.428 0.716873 17 8 5 9.881 48 64.828 0.716872 19 4 1 9.933 48 2296.289 0.871588 15 11 6 9.933 48 3882.000 0.833895 18 7 3 9.959 24 429715.625 0.735588 16 8 8 9.985 24 0.000 0.728021 12 11 11 9.985 48 3829.123 0.711840 16 9 7 9.985 48 2300.313 0.711840 16 11 3 9.985 48 2157.346 0.711840 17 9 4 9.985 48 5.185 0.711839 19 4 3 9.985 24 0.000 0.731896 19 5 0 10.011 24 0.000 0.729847 12 12 10 10.011 24 8407.514 0.710588 18 8 0 10.037 48 4403.742 0.604092 13 11 10 10.037 48 0.061 333.109955 14 13 5 10.037 48 5228.630 0.612431 17 10 1 10.037 48 10274.168 0.639479 19 5 2 10.063 12 11096.196 0.827805 14 14 0 10.063 48 491.430 0.266939 16 10 6 10.063 48 354.569 0.210751 18 8 2 10.088 48 23376.588 0.706843 13 12 9 10.088 48 33480.711 0.706843 15 12 5 10.088 24 0.000 0.738399 15 13 0 10.114 24 0.000 0.727591 14 10 10 10.114 24 0.000 0.748768 14 14 2 10.114 24 0.000 0.757605 18 6 6 10.139 48 7466.300 0.621679 14 11 9 10.139 48 990.249 0.957920 15 13 2 10.139 48 1190.770 0.934025 17 10 3 10.139 48 9.645 0.329466 18 7 5 10.139 48 8873.878 0.784734 19 6 1 10.165 24 135888.438 0.706895 16 12 0 10.165 6 200452.516 0.706227 20 0 0 10.190 24 0.000 0.702737 13 13 8 10.190 48 12294.665 0.701881 16 11 5 10.190 48 5908.372 0.701881 17 8 7 10.190 48 3440.059 0.701881 19 5 4 10.190 24 0.000 0.664889 20 1 1 10.215 48 103570.594 0.744078 14 12 8 10.215 48 78204.258 0.750741 16 12 2 10.215 48 108975.664 0.742971 18 8 4 10.215 24 200123.938 0.731759 20 2 0 10.241 48 16443.350 0.642387 15 10 9 10.241 48 821.729 0.463152 17 9 6 10.241 48 183.235 0.256509 18 9 1 10.241 48 11.070 4.744914 19 6 3 10.266 24 85986.914 0.703017 14 14 4 10.266 24 176294.906 0.701557 20 2 2 10.291 48 1421.877 0.696954 15 11 8 10.291 48 10078.014 0.696954 15 13 4 10.291 24 0.000 0.705679 17 11 0 10.291 24 0.000 0.727756 19 7 0 10.291 48 7.288 0.696954 20 3 1 10.341 48 211.520 1.312292 14 13 7 10.341 48 1385.313 0.912704 17 10 5 10.341 48 16359.064 0.636597 17 11 2 10.341 48 490.017 0.394712 18 9 3 10.341 48 6772.580 0.789503 19 7 2 10.366 48 1908.914 0.434801 16 12 4 10.366 24 23541.840 0.613565 20 4 0 10.391 48 5924.918 0.692061 15 12 7 10.391 24 0.000 0.799210 16 9 9 10.391 24 0.000 0.729334 20 3 3 10.416 48 6394.384 0.690844 16 10 8 10.416 48 3046.540 0.690844 20 4 2 10.440 48 2461.563 0.543780 15 14 1 10.440 24 135.264 1.506200 18 7 7 10.440 48 19656.266 0.636037 19 6 5 10.465 48 22722.738 0.606361 18 8 6 10.465 24 17729.400 0.595911 18 10 0 10.490 48 5276.253 0.687204 16 11 7 10.490 48 448.920 0.687203 16 13 1 10.490 48 8295.166 0.687203 17 11 4 10.490 48 139.147 0.687203 19 7 4 10.490 48 0.328 0.687215 19 8 1 10.490 48 3527.839 0.687203 20 5 1 10.514 24 0.000 0.727619 14 14 6 10.514 48 48499.012 0.685994 18 10 2 10.539 48 647.314 0.413689 15 13 6 10.539 48 26527.465 0.637960 15 14 3 10.539 48 487.215 0.378284 18 9 5 10.563 8 52768.902 0.807684 12 12 12 10.563 24 92219.422 0.776506 20 4 4 10.588 48 5757.705 0.682379 13 12 11 10.588 48 9340.360 0.682379 16 13 3 10.588 48 710.295 0.682379 17 9 8 10.588 48 10436.022 0.682379 17 12 1 10.588 48 27884.703 0.682379 19 8 3 10.588 48 5.528 0.682372 20 5 3 10.612 48 62078.328 0.740588 16 12 6 10.612 24 2835.733 0.980520 20 6 0 10.637 24 336.916 1.175382 13 13 10 10.637 24 33559.977 0.637768 14 11 11 10.637 48 930.464 0.961942 17 10 7 10.661 48 98878.328 0.683607 14 12 10 10.661 48 42282.145 0.686166 18 10 4 10.661 48 68886.531 0.684564 20 6 2 10.685 48 1498.741 0.677589 17 12 3 10.685 24 0.000 0.698189 19 9 0 10.685 24 0.000 0.703940 21 1 0 10.733 48 2054.250 0.511190 14 13 9 10.733 48 13512.246 0.608545 15 11 10 10.733 48 874.002 0.433063 15 14 5 10.733 48 8341.328 0.765061 17 11 6 10.733 48 3496.692 0.547453 18 11 1 10.733 48 5957.996 0.576137 19 7 6 10.733 48 1422.699 0.480880 19 9 2 10.733 48 29.973 2.908144 21 2 1 10.781 48 1753.692 0.672832 15 12 9 10.781 12 0.000 0.664564 15 15 0 10.781 48 1753.916 0.672832 16 13 5 10.781 48 40.492 0.672836 19 8 5 10.781 24 0.000 0.690230 20 5 5 10.781 48 3651.796 0.672833 20 7 1 10.781 24 0.000 0.707799 21 3 0 10.805 24 53989.008 0.671649 16 14 0 10.805 24 0.000 0.643831 18 8 8 10.805 48 9669.600 0.671649 20 6 4 10.829 24 13108.416 0.602064 15 15 2 10.829 48 7.145 1.037184 18 9 7 10.829 48 5454.835 0.565999 18 11 3 10.829 48 11229.632 0.748505 21 3 2 10.853 24 15315.414 0.565674 14 14 8 10.853 24 22509.879 0.761307 16 10 10 10.853 48 3599.667 0.465110 16 14 2 10.877 48 18971.936 0.668109 15 13 8 10.877 48 6143.480 0.668110 16 11 9 10.877 48 6768.690 0.668109 17 12 5 10.877 24 0.000 0.688241 17 13 0 10.877 48 21970.449 0.668109 19 9 4 10.877 48 6369.703 0.668110 20 7 3 10.877 48 1052.865 0.668110 21 4 1 10.900 48 3017.939 0.666934 18 10 6 10.924 48 19252.697 0.725662 17 13 2 10.924 48 25930.057 0.616213 19 10 1 10.948 48 84530.609 0.670057 16 12 8 10.948 24 97406.680 0.669681 20 8 0 10.971 24 0.000 0.685600 15 15 4 10.971 48 10599.709 0.663419 21 4 3 10.971 24 0.000 0.643299 21 5 0 10.995 48 100173.562 0.711064 16 14 4 10.995 24 166767.672 0.699932 18 12 0 10.995 48 159852.547 0.700750 20 8 2 11.018 48 1658.682 0.878372 15 14 7 11.018 48 17370.697 0.600177 17 10 9 11.018 48 597.529 0.367525 18 11 5 11.018 48 997.503 0.426396 19 10 3 11.018 48 3084.364 0.521335 21 5 2 11.042 48 106769.031 0.664861 18 12 2 11.042 24 137048.594 0.664281 20 6 6 11.065 48 2199.089 0.658762 16 13 7 11.065 48 22348.607 0.658762 17 11 8 11.065 48 5517.560 0.658762 17 13 4 11.065 48 2181.360 0.658762 19 8 7 11.065 48 792.531 0.658762 20 7 5 11.112 48 94.408 1.790153 19 9 6 11.112 48 8604.981 0.749077 21 6 1 11.135 48 12669.628 0.783483 20 8 4 11.158 24 0.000 0.646298 13 13 12 11.158 48 9421.717 0.654138 16 15 1 11.158 48 210.036 0.654139 17 12 7 11.158 24 0.000 0.710653 19 11 0 11.158 48 92.088 0.654137 20 9 1 11.158 48 2810.931 0.654138 21 5 4 11.181 24 0.000 0.727377 14 12 12 11.181 48 5305.505 0.652987 18 12 4 11.181 6 0.000 0.654133 22 0 0 11.204 48 15691.037 0.720583 14 13 11 11.204 24 33526.344 0.606793 15 15 6 11.204 48 3536.515 0.800657 17 14 1 11.204 24 287.097 0.250511 18 9 9 11.204 48 7806.454 0.750322 19 10 5 11.204 48 812.864 0.390627 19 11 2 11.204 48 8561.631 0.745729 21 6 3 11.204 24 20528.598 0.594559 22 1 1 11.227 48 14.069 2.231752 16 14 6 11.227 48 3712.752 0.899219 18 10 8 11.227 24 759.892 1.253699 22 2 0 11.250 48 487.995 0.649546 15 12 11 11.250 48 2527.021 0.649546 16 15 3 11.250 48 4456.323 0.649545 20 9 3 11.250 24 0.000 0.652303 21 7 0 11.273 24 0.000 0.789600 14 14 10 11.273 24 0.000 0.653409 22 2 2 11.296 48 706.681 0.367562 15 13 10 11.296 48 297.195 0.248811 17 13 6 11.296 48 7711.250 0.554293 17 14 3 11.296 48 2570.974 0.490818 18 11 7 11.296 48 8067.584 0.745120 18 13 1 11.296 48 22961.691 0.704436 21 7 2 11.296 48 87.333 0.057870 22 3 1 11.342 24 0.000 0.685507 16 11 11 11.342 48 332.649 0.644986 19 11 4 11.342 24 0.000 0.746241 20 7 7 11.364 48 159977.438 0.683996 16 12 10 11.364 48 130867.500 0.688308 20 8 6 11.364 24 72803.609 0.703794 20 10 0 11.364 24 23748.637 0.750559 22 4 0 11.387 48 1212.476 0.912182 15 14 9 11.387 48 14.392 4.882132 18 13 3 11.387 48 1769.587 0.455264 21 6 5 11.387 24 51470.301 0.681020 22 3 3 11.410 48 99131.141 0.647012 18 12 6 11.410 48 29163.473 0.651607 20 10 2 11.410 48 92906.383 0.647192 22 4 2 11.432 48 10999.578 0.640458 16 13 9 11.432 48 4368.299 0.640459 16 15 5 11.432 48 31403.549 0.640459 19 9 8 11.432 48 119.824 0.640458 19 12 1 11.432 48 2748.602 0.640458 20 9 5 11.432 48 346.130 0.640457 21 7 4 11.432 48 8339.304 0.640458 21 8 1 11.478 48 5003.653 0.521834 17 11 10 11.478 48 3454.537 0.793780 17 14 5 11.478 48 4331.639 0.776329 19 10 7 11.478 48 503.373 0.311025 22 5 1 11.500 12 218894.016 0.675633 16 16 0 11.522 24 0.000 0.639138 15 15 8 11.522 48 13001.710 0.635962 17 12 9 11.522 24 0.000 0.631716 17 15 0 11.522 48 1780.457 0.635963 19 12 3 11.522 48 6706.062 0.635963 21 8 3 11.545 48 8059.045 0.634844 16 14 8 11.545 24 0.000 0.604006 16 16 2 11.545 48 8097.510 0.634843 20 10 4 11.545 24 0.000 0.657954 22 4 4 11.567 48 3729.106 0.498882 17 15 2 11.567 48 8971.104 0.729207 18 13 5 11.567 48 7212.025 0.535136 19 11 6 11.567 48 5994.438 0.526029 22 5 3 11.590 24 1666.043 1.035919 18 14 0 11.590 24 518.950 0.157468 22 6 0 11.612 48 17038.049 0.631498 17 13 8 11.612 48 2803.506 0.631498 20 11 1 11.612 24 0.000 0.667525 21 9 0 11.634 24 0.000 0.638608 18 10 10 11.634 48 22130.412 0.630387 18 14 2 11.634 48 1981.995 0.630388 22 6 2 11.656 48 116.182 0.077477 18 11 9 11.656 48 11704.309 0.550516 21 7 6 11.656 48 4335.886 0.502654 21 9 2 11.678 24 116167.578 0.633385 16 16 4 11.678 24 107535.102 0.633591 20 8 8 11.700 48 4930.005 0.627065 16 15 7 11.700 48 4708.191 0.627065 17 15 4 11.700 48 28224.625 0.627065 19 12 5 11.700 24 0.000 0.596998 19 13 0 11.700 48 2646.947 0.627066 20 9 7 11.700 48 918.285 0.627066 20 11 3 11.700 48 9310.486 0.627065 21 8 5 11.700 24 0.000 0.611802 23 1 0 11.723 48 74428.492 0.687569 18 12 8 11.745 24 36005.445 0.578920 14 13 13 11.745 48 21234.656 0.565384 17 14 7 11.745 48 5825.659 0.746672 19 13 2 11.745 24 23817.857 0.568623 22 5 5 11.745 48 2404.847 0.819144 22 7 1 11.745 48 14864.012 0.554119 23 2 1 11.766 24 117187.000 0.629019 14 14 12 11.766 48 163276.672 0.628214 18 14 4 11.766 48 51583.629 0.631695 20 10 6 11.766 48 66068.156 0.630769 22 6 4 11.788 48 2424.192 0.622663 15 13 12 11.788 48 12175.204 0.622663 21 9 4 11.788 24 0.000 0.684423 23 3 0 11.832 48 5088.439 0.752444 15 14 11 11.832 48 461.719 0.273537 18 13 7 11.832 48 9.878 6.746250 19 10 9 11.832 48 13722.126 0.546340 21 10 1 11.832 48 9360.422 0.716544 22 7 3 11.832 48 285.144 0.203293 23 3 2 11.854 24 245.206 1.926058 16 12 12 11.854 24 5207.864 0.841583 20 12 0 11.876 48 2550.054 0.618292 16 13 11 11.876 48 1977.929 0.618292 17 16 1 11.876 48 31793.830 0.618292 19 11 8 11.876 48 2590.990 0.618292 19 13 4 11.876 48 4312.363 0.618292 20 11 5 11.876 48 68.349 0.618293 23 4 1 11.897 24 0.000 0.601473 16 16 6 11.897 48 325.180 0.617205 20 12 2 11.897 24 7184.949 0.617204 22 8 0 11.919 24 2757.569 0.800199 15 15 10 11.919 48 6327.436 0.507762 17 15 6 11.919 48 4055.922 0.482407 18 15 1 11.919 48 242.952 0.172778 21 10 3 11.941 48 7888.565 0.458459 16 14 10 11.941 48 109.173 2.873094 22 8 2 11.962 48 10852.533 0.613952 17 12 11 11.962 48 16083.902 0.613952 17 16 3 11.962 48 21445.627 0.613952 19 12 7 11.962 48 1.472 0.613933 21 8 7 11.962 48 37939.918 0.613952 23 4 3 11.962 24 0.000 0.616921 23 5 0 11.984 48 1296.799 0.612872 18 14 6 11.984 24 0.000 0.712688 22 6 6 12.006 48 82.405 2.026851 17 13 10 12.006 48 18215.365 0.546157 18 15 3 12.006 48 9411.382 0.709300 19 14 1 12.006 48 2181.693 0.822372 21 9 6 12.006 48 335.092 1.210647 22 7 5 12.006 48 8659.716 0.517815 23 5 2 12.027 48 95207.109 0.718642 20 12 4 12.048 48 62.905 0.609640 16 15 9 12.048 24 0.000 0.614455 20 9 9 12.048 24 0.000 0.621012 21 11 0 12.070 48 20326.646 0.733442 20 10 8 12.070 48 105682.531 0.661900 22 8 4 12.091 48 21634.326 0.671532 17 14 9 12.091 24 972.384 0.937657 18 11 11 12.091 48 1994.939 0.830481 19 13 6 12.091 48 0.028 1184.492188 19 14 3 12.091 48 3860.352 0.764279 21 10 5 12.091 48 3519.251 0.462570 21 11 2 12.091 48 775.554 0.981970 22 9 1 12.091 48 10175.889 0.519880 23 6 1 12.113 48 76630.094 0.613261 18 12 10 12.134 48 3683.249 0.605362 17 16 5 12.134 48 3521.664 0.605362 20 11 7 12.134 48 124.058 0.605363 20 13 1 12.134 48 3462.126 0.605362 23 5 4 12.176 48 55.890 0.000408 18 13 9 12.176 48 97.423 1.905106 18 15 5 12.176 48 14498.582 0.528827 22 9 3 12.176 48 4836.832 0.477510 23 6 3 12.198 24 146829.391 0.652999 16 16 8 12.198 6 48972.145 0.691485 24 0 0 12.219 48 2249.633 0.601113 17 15 8 12.219 12 0.000 0.648104 17 17 0 12.219 48 731.749 0.601113 20 13 3 12.219 48 2019.349 0.601113 21 11 4 12.219 24 0.000 0.620825 23 7 0 12.219 24 0.000 0.585538 24 1 1 12.240 24 2309.716 0.600055 18 16 0 12.240 48 12503.156 0.600055 20 12 6 12.240 24 392.155 0.600055 24 2 0 12.261 24 8259.682 0.705990 17 17 2 12.261 48 1170.735 0.357480 19 11 10 12.261 48 3571.711 0.453139 19 14 5 12.261 24 23870.430 0.540168 22 7 7 12.261 48 11697.327 0.515888 23 7 2 12.282 48 1961.352 0.301177 18 14 8 12.282 48 2399.438 0.325265 18 16 2 12.282 48 8974.643 0.446666 22 8 6 12.282 24 20183.016 0.494621 22 10 0 12.282 24 4232.669 0.857612 24 2 2 12.303 48 8762.402 0.596893 19 12 9 12.303 24 0.000 0.652194 19 15 0 12.303 48 16475.064 0.596893 21 9 8 12.303 48 21749.035 0.596893 21 12 1 12.303 48 0.566 0.596886 24 3 1 12.324 8 0.000 0.643371 14 14 14 12.324 48 12293.235 0.595843 22 10 2 12.345 48 147.154 1.621171 15 14 13 12.345 48 1708.446 0.389242 19 15 2 12.345 48 516.791 1.079764 21 10 7 12.345 48 11336.400 0.509842 22 9 5 12.345 48 18111.604 0.527044 23 6 5 12.366 24 58389.941 0.601851 24 4 0 12.387 24 0.000 0.671713 15 15 12 12.387 24 0.000 0.735260 16 13 13 12.387 48 12095.004 0.592703 17 16 7 12.387 24 0.000 0.624602 17 17 4 12.387 48 6109.655 0.592703 19 13 8 12.387 48 1167.612 0.592703 20 13 5 12.387 48 486.571 0.592703 21 12 3 12.387 48 968.762 0.592702 23 7 4 12.387 48 2560.149 0.592703 23 8 1 12.387 24 0.000 0.590848 24 3 3 12.408 48 33698.273 0.690808 16 14 12 12.408 48 106267.023 0.646548 18 16 4 12.408 24 27260.693 0.702372 20 14 0 12.408 48 100993.477 0.647996 24 4 2 12.428 48 8679.107 0.493428 18 15 7 12.428 48 9943.497 0.499549 21 11 6 12.449 24 29955.414 0.601035 20 10 10 12.449 48 71944.438 0.596959 20 14 2 12.449 48 57275.621 0.597853 22 10 4 12.470 48 789.999 0.588542 16 15 11 12.470 48 10761.667 0.588542 17 13 12 12.470 48 26082.959 0.588543 19 15 4 12.470 48 4142.475 0.588543 20 11 9 12.470 48 3639.900 0.588543 23 8 3 12.470 48 17676.646 0.588542 24 5 1 12.511 48 236.687 0.130661 17 14 11 12.511 48 4685.903 0.455545 19 14 7 12.511 48 15084.020 0.511461 22 11 1 12.532 48 4970.170 0.384055 20 12 8 12.532 24 2797.412 0.326392 24 4 4 12.552 48 42385.359 0.584411 21 12 5 12.552 24 0.000 0.603295 21 13 0 12.552 24 0.000 0.614612 23 9 0 12.552 48 1401.835 0.584411 24 5 3 12.573 24 0.000 0.628182 16 16 10 12.573 24 0.000 0.574667 18 12 12 12.573 48 27.689 0.583384 20 14 4 12.573 24 0.000 0.593523 22 8 8 12.573 24 974.674 0.583382 24 6 0 12.594 48 7713.880 0.696704 17 15 10 12.594 24 625.189 0.261879 17 17 6 12.594 48 342.001 0.179135 18 13 11 12.594 48 2097.192 0.810675 18 17 1 12.594 48 486.338 1.098598 21 13 2 12.594 48 19185.775 0.653674 22 9 7 12.594 48 257.410 0.137906 22 11 3 12.594 48 21796.854 0.649147 23 7 6 12.594 48 2041.253 0.814043 23 9 2 12.614 48 42259.598 0.660673 18 16 6 12.614 48 1627.606 1.038560 24 6 2 12.635 48 9.570 0.580310 19 16 1 12.635 48 4582.844 0.580308 20 13 7 12.635 48 424.410 0.580309 23 8 5 12.655 48 31903.266 0.579287 18 14 10 12.655 48 5253.120 0.579288 22 10 6 12.675 48 2611.902 0.404740 18 17 3 12.675 48 13236.974 0.497375 19 15 6 12.675 48 1066.550 0.911786 21 10 9 12.716 48 6204.871 0.576235 17 16 9 12.716 48 6512.263 0.576235 19 12 11 12.716 48 7935.641 0.576235 19 16 3 12.716 48 1384.119 0.576235 20 15 1 12.716 48 6295.197 0.576235 21 11 8 12.716 48 24718.215 0.576235 21 13 4 12.716 48 5930.177 0.576235 23 9 4 12.716 24 0.000 0.586224 24 5 5 12.716 48 14408.281 0.576235 24 7 1 12.716 24 0.000 0.599632 25 1 0 12.736 24 120591.719 0.628172 22 12 0 12.736 48 34299.668 0.676419 24 6 4 12.757 48 156.663 0.060188 18 15 9 12.757 48 3943.698 0.739427 19 13 10 12.757 48 10074.289 0.481447 22 11 5 12.757 48 1050.248 0.913322 23 10 1 12.757 48 14211.491 0.658643 25 2 1 12.777 48 118851.406 0.579183 20 14 6 12.777 48 81153.352 0.580444 22 12 2 12.797 48 1636.235 0.572190 20 15 3 12.797 48 5481.227 0.572190 21 12 7 12.797 48 18053.295 0.572190 24 7 3 12.797 24 0.000 0.589848 25 3 0 12.837 48 7405.788 0.689516 18 17 5 12.837 48 2624.350 0.395211 19 14 9 12.837 48 2138.960 0.801308 21 14 1 12.837 48 10.241 1.610380 23 10 3 12.837 48 475.319 1.107143 25 3 2 12.857 24 400540.719 0.601597 24 8 0 12.878 24 0.000 0.594411 17 17 8 12.878 48 0.125 0.568303 19 16 5 12.878 24 0.000 0.668721 20 11 11 12.878 48 9156.891 0.568173 23 8 7 12.878 48 626.749 0.568173 25 4 1 12.898 48 752.168 0.567174 18 16 8 12.898 48 5026.329 0.567173 20 12 10 12.898 48 1582.216 0.567173 22 12 4 12.898 48 10010.276 0.567173 24 8 2 12.918 24 201.271 1.472532 15 15 14 12.918 48 222.695 0.098690 21 13 6 12.918 48 6281.894 0.448796 21 14 3 12.918 24 124.054 0.027292 22 9 9 12.918 48 7534.736 0.458458 23 9 6 12.938 24 6316.977 0.786949 16 14 14 12.938 12 29334.926 0.663537 18 18 0 12.938 48 1147.344 1.143397 22 10 8 12.938 24 3723.319 0.331233 24 6 6 12.958 48 19312.793 0.564184 16 15 13 12.958 48 1304.676 0.564185 19 15 8 12.958 24 0.000 0.629484 19 17 0 12.958 48 7762.704 0.564184 20 13 9 12.958 48 0.036 0.564203 20 15 5 12.958 24 0.000 0.552595 23 11 0 12.958 48 1174.496 0.564185 24 7 5 12.958 48 1864.236 0.564185 25 4 3 12.958 24 0.000 0.610466 25 5 0 12.977 24 0.000 1.007893 18 18 2 12.997 48 1257.012 0.317586 17 14 13 12.997 48 803.021 0.965953 19 17 2 12.997 48 3526.509 0.407812 22 11 7 12.997 48 33105.316 0.617943 22 13 1 12.997 48 3190.903 0.400563 23 10 5 12.997 48 2609.250 0.385052 23 11 2 12.997 48 628.391 0.236561 25 5 2 13.017 24 57828.707 0.570060 16 16 12 13.017 24 20781.746 0.576011 20 16 0 13.017 48 89788.805 0.568307 24 8 4 13.037 48 46834.953 0.560224 17 15 12 13.037 48 4458.039 0.560224 24 9 1 13.057 48 64854.797 0.633972 20 14 8 13.057 48 1893.262 1.063184 20 16 2 13.077 24 11205.765 0.468121 18 13 13 13.077 48 2285.663 0.369342 18 17 7 13.077 48 339.441 0.148501 21 11 10 13.077 48 8367.582 0.454671 21 14 5 13.077 48 7108.424 0.446360 22 13 3 13.077 48 21281.016 0.492060 25 6 1 13.096 48 68508.367 0.565478 18 14 12 13.096 24 155737.828 0.562708 18 18 4 13.096 48 103275.125 0.563951 22 12 6 13.116 48 11.861 0.556303 17 16 11 13.116 48 9.261 0.556294 19 16 7 13.116 48 858.044 0.556291 19 17 4 13.116 48 3173.471 0.556291 21 12 9 13.116 24 0.000 0.612472 21 15 0 13.116 48 3159.007 0.556291 23 11 4 13.116 48 11758.186 0.556291 24 9 3 13.116 48 817.126 0.556292 25 5 4 13.155 48 2785.415 0.760410 18 15 11 13.155 48 12620.544 0.468744 21 15 2 13.155 48 9819.387 0.660046 25 6 3 13.175 48 16619.480 0.433205 20 16 4 13.195 48 1551.486 0.552387 19 13 12 13.195 48 2451.736 0.552386 20 15 7 13.195 48 8249.820 0.552386 21 13 8 13.195 48 4248.809 0.552386 23 9 8 13.195 48 21355.518 0.552386 23 12 1 13.195 24 0.000 0.511862 24 7 7 13.195 24 0.000 0.532794 25 7 0 13.214 48 45.962 0.551413 24 8 6 13.214 24 1375.366 0.551414 24 10 0 13.214 6 0.000 0.581809 26 0 0 13.234 24 125.795 1.815142 17 17 10 13.234 48 3624.754 0.730497 19 14 11 13.234 48 20871.211 0.622388 22 13 5 13.234 48 16.691 0.846322 23 10 7 13.234 48 1982.095 0.799991 25 7 2 13.234 24 4838.143 0.704812 26 1 1 13.253 48 6534.444 0.364097 18 16 10 13.253 24 2222.547 0.955805 22 14 0 13.253 48 24731.307 0.449439 24 10 2 13.253 24 3270.319 0.298545 26 2 0 13.273 48 7338.060 0.548509 21 15 4 13.273 48 4058.442 0.548509 23 12 3 13.273 48 14392.250 0.548509 24 9 5 13.292 24 0.000 0.517475 18 18 6 13.292 24 0.000 0.554471 22 10 10 13.292 48 5628.166 0.547544 22 14 2 13.292 24 0.000 0.523200 26 2 2 13.311 48 727.746 0.986569 19 15 10 13.311 48 5154.896 0.696772 19 17 6 13.311 48 1101.667 0.894374 19 18 1 13.311 48 81.138 2.249579 21 14 7 13.311 48 2995.469 0.747331 22 11 9 13.311 48 1254.767 0.869951 23 11 6 13.311 48 2509.770 0.767480 25 6 5 13.311 48 2730.918 0.757605 26 3 1 13.331 24 43466.543 0.728675 20 12 12 13.350 48 216.962 0.544659 20 13 11 13.350 48 1647.968 0.544658 20 17 1 13.350 48 4276.428 0.544658 25 7 4 13.350 48 15238.885 0.544658 25 8 1 13.370 48 84474.062 0.610509 20 16 6 13.370 48 74722.828 0.614865 22 12 8 13.370 48 40800.441 0.641053 24 10 4 13.370 24 179990.234 0.589052 26 4 0 13.389 48 404.751 0.154578 18 17 9 13.389 48 4652.005 0.403703 19 18 3 13.389 24 391.049 1.179888 26 3 3 13.408 48 232808.609 0.546398 20 14 10 13.408 48 99927.586 0.548833 22 14 4 13.408 48 188579.734 0.546911 26 4 2 13.427 48 641.491 0.540835 19 16 9 13.427 48 3573.906 0.540835 20 17 3 13.427 48 1412.832 0.540835 21 16 1 13.427 48 2392.580 0.540836 23 12 5 13.427 24 0.000 0.583230 23 13 0 13.427 48 13539.380 0.540835 24 11 1 13.427 48 4325.955 0.540835 25 8 3 13.466 48 24231.410 0.475178 21 15 6 13.466 48 2542.877 0.355048 22 13 7 13.466 48 9143.574 0.651304 23 13 2 13.466 48 44289.496 0.491389 26 5 1 13.485 24 386159.906 0.572714 24 8 8 13.504 24 0.000 0.537275 16 15 15 13.504 48 79.871 0.537040 20 15 9 13.504 48 17695.494 0.537038 21 12 11 13.504 48 895.248 0.537037 21 16 3 13.504 48 12284.010 0.537038 24 9 7 13.504 48 2309.103 0.537038 24 11 3 13.504 24 0.000 0.591044 25 9 0 13.523 24 0.000 0.402816 16 16 14 13.523 24 0.000 0.504490 26 4 4 13.542 48 9775.623 0.436148 17 15 14 13.542 48 7637.786 0.659352 19 18 5 13.542 48 804.636 0.959318 21 13 10 13.542 48 3708.660 0.379537 22 15 1 13.542 48 7600.334 0.423640 23 10 9 13.542 48 924.706 0.926972 25 7 6 13.542 48 1905.093 0.325385 25 9 2 13.542 48 2232.918 0.339564 26 5 3 13.561 24 21222.117 0.656080 18 18 8 13.561 48 7232.998 0.354522 24 10 6 13.561 24 9536.754 0.720598 26 6 0 13.580 48 7.376 0.533264 17 16 13 13.580 48 8833.213 0.533268 19 17 8 13.580 48 507.977 0.533268 20 17 5 13.580 48 4764.306 0.533268 23 11 8 13.580 48 16286.252 0.533268 23 13 4 13.580 48 13357.467 0.533268 25 8 5 13.599 24 0.000 0.552398 18 14 14 13.599 48 240.404 0.532327 22 14 6 13.599 48 142.940 0.532329 26 6 2 13.618 48 1512.714 0.298800 18 15 13 13.618 48 13081.259 0.444836 21 14 9 13.618 48 5860.847 0.404917 22 15 3 13.637 48 68102.938 0.539222 20 16 8 13.637 24 161144.547 0.536148 24 12 0 13.656 24 0.000 0.567319 17 17 12 13.656 12 0.000 0.641853 19 19 0 13.656 48 1567.160 0.529524 21 16 5 13.656 48 1346.462 0.529525 23 12 7 13.656 48 21105.100 0.529525 24 11 5 13.656 48 24573.625 0.529525 25 9 4 13.675 48 55987.738 0.613047 18 16 12 13.675 24 294443.688 0.564651 20 18 0 13.675 48 83364.617 0.597342 24 12 2 13.694 48 21622.609 0.459374 19 14 13 13.694 24 833.602 0.229171 19 19 2 13.694 24 41057.730 0.580182 22 11 11 13.694 48 258.246 0.079186 23 14 1 13.694 48 12107.555 0.626306 25 10 1 13.694 24 5123.758 0.392501 26 5 5 13.694 48 1369.571 0.284268 26 7 1 13.713 48 123013.125 0.533304 20 18 2 13.713 48 71978.680 0.535331 22 12 10 13.713 48 60597.105 0.536107 26 6 4 13.732 48 36370.348 0.525808 19 15 12 13.732 48 6984.553 0.525808 21 15 8 13.732 24 0.000 0.556326 21 17 0 13.732 24 0.000 0.520802 27 1 0 13.769 48 805.905 0.956158 18 17 11 13.769 48 3654.744 0.365521 19 18 7 13.769 48 11134.515 0.429707 21 17 2 13.769 48 514.928 1.084913 22 13 9 13.769 48 1388.901 0.841474 22 15 5 13.769 48 5090.758 0.680468 23 13 6 13.769 48 118.760 1.919536 23 14 3 13.769 48 2065.000 0.778836 25 10 3 13.769 48 1673.389 0.810194 26 7 3 13.769 48 1752.430 0.304277 27 2 1 13.788 48 115.481 0.140374 24 12 4 13.807 48 13001.454 0.522117 19 16 11 13.807 24 0.000 0.550671 19 19 4 13.807 24 0.000 0.644168 20 13 13 13.807 48 3757.070 0.522116 20 17 7 13.807 24 0.000 0.619965 24 9 9 13.807 48 166.534 0.522118 25 8 7 13.807 24 0.000 0.642318 27 3 0 13.825 48 432.177 0.521196 20 14 12 13.825 48 12337.985 0.521198 20 18 4 13.825 24 6312.746 0.521198 22 16 0 13.825 48 1634.139 0.521198 24 10 8 13.825 24 6345.703 0.521198 26 8 0 13.844 48 1706.373 0.805092 25 9 6 13.844 48 3221.206 0.721440 27 3 2 13.863 48 3274.244 0.263069 22 14 8 13.863 48 3664.048 0.274854 22 16 2 13.863 48 4512.130 0.805788 26 8 2 13.881 48 202.873 0.518453 20 15 11 13.881 48 53.521 0.518447 21 16 7 13.881 48 164.154 0.518448 21 17 4 13.881 48 4790.123 0.518451 24 11 7 13.881 48 143.928 0.518449 24 13 1 13.881 24 0.000 0.551518 25 11 0 13.881 48 5639.001 0.518451 27 4 1 13.900 24 0.000 0.480472 18 18 10 13.900 24 0.000 0.536103 26 6 6 13.919 48 4715.988 0.374636 19 17 10 13.919 48 1152.720 0.252972 23 11 10 13.919 48 14412.105 0.608090 23 14 5 13.919 48 8711.256 0.409941 25 10 5 13.919 48 12031.894 0.425067 25 11 2 13.919 48 997.063 0.904037 26 7 5 13.956 48 1712.422 0.514812 21 13 12 13.956 48 51.106 0.514808 23 12 9 13.956 24 0.000 0.493669 23 15 0 13.956 48 3151.326 0.514811 24 13 3 13.956 48 4966.151 0.514812 27 4 3 13.956 24 0.000 0.544797 27 5 0 13.974 48 184851.469 0.560507 20 16 10 13.974 48 70229.789 0.590530 22 16 4 13.974 48 102809.844 0.576854 24 12 6 13.974 48 77585.695 0.586684 26 8 4 13.993 24 27149.818 0.579212 19 19 6 13.993 48 2431.204 0.749978 21 14 11 13.993 48 34488.859 0.457621 22 15 7 13.993 48 364.326 0.108468 23 15 2 13.993 48 1418.150 0.270548 26 9 1 13.993 48 9578.805 0.410609 27 5 2 14.011 48 46500.246 0.523157 20 18 6 14.030 48 0.084 0.511293 20 19 1 14.030 48 3199.971 0.511198 23 13 8 14.030 48 13297.949 0.511198 25 11 4 -------------- next part -------------- /******************************************************************************* * * McStas, version 1.2 released February 2000 * Maintained by Kristian Nielsen and Kim Lefmann, * Risoe National Laboratory, Roskilde, Denmark * * %IDENTIFICATION * * Author: Thomas C Hansen * Date: 08 March 2000 * Version: $Revision: 1.1 $ * Origin: ILL (Dif/D20) * * General powder sample in incoherent scattering cylindrical can * * %DESCRIPTION * * This is a general powder sample in incoherent scattering cylindrical vanadium can. * It creates elastic coherent scattering from a table of structure factors and incoherent * background scattering from the sample itself and its container. To be efficient, the * component is focussing on a given target, normally corresponding to a PSD or a multi- * detector bank. Absorption is considered, as well attenuation of the beam, so the * probability of scattering is higher closer to the incoming beam. Multiple scattering * (and so secondary extinction) is not considered yet, nor diffuse scattering, or elastic * coherent scattering from a sample can, nor any inelastic scattering or elastic scattering * from amorphous materials. It is planned to implement multiple scattering and elastic * coherent scattering from the sample can in the near future. Transmitted neutrons are * normally not created, but only scattered neutrons leaving towards the detector target. * * %PARAMETERS * * INPUT PARAMETERS * * radius: (m) Radius of sample in (x,z) plane (0.005) * h: (m) Height of sample y direction (0.05) * pack: (1) Packing factor (1) * Vc: (AA**3) Volume of unit cell * sigma_a: (fm**2) Absorption cross section per unit cell at 2200 m/s * j: (*1) Array of multiplicities * q: (*1/AA) Array of wavevectors * F2: (*fm**2) Array of structure factors * DW: (*1/AA**2) Array of Debye-Waller factors * write: (1) Output flag for writing in file sample.dat (0) * transmission: (1) Ratio of transmitted neutron histories (0) * nbInt: (1) Number of Bragg relections (size of the arrays) * sigma_i: (fm**2) Incoherent scattering cross section of the sample per unit cell * d_V: (m) Thickness of the Vanadium sample can (0.0001) * broadening: (1) FWHM of the lattice constant variations for strain broadening (0) * ttmin: (deg) Minimum 2theta angle of target PSD_curved.comp (0) * ttmax: (deg) Maximum 2theta angle of target PSD_curved.comp (156.36) * PSD_r: (m) Radius of curved linar PSD target PSD_curved.comp (1.471) * PSD_h: (m) Height of curved linear PSD target PSD_curved.comp (0.15) * sign: (1) Chirality of 1st diffractometer axis=sign[takeoff of d20adapt.instr] (-1) * * OUTPUT PARAMETERS * * my_s_v2: (m/s**2) Attenuation factor due to elastic coherent scattering, multiplied by neutron velocity**2 * my_a_v: (1/s) Attenuation factor due to absorption, multiplied by neutron velocity * q_v: (m/s) Corresponding velocity of wavevector Q * my_i: (1/m) Attenuation factor due to elastic incoherent scattering * * %LINKS * Source code of d20adapt.instr, where this component is used * %LINKS * A possible target detector: PSD_curved.comp * %LINKS * The original component Powder1, with explanation of focusing. * %LINKS * Test results from Powder1 (not up-to-date). * * %END * *******************************************************************************/ DEFINE COMPONENT Powder0 DEFINITION PARAMETERS (radius, h, pack, Vc, sigma_a, j, q, F2, DW,write,transmission,nbInt,sigma_i,d_V,broadening,ttmin,ttmax) SETTING PARAMETERS (PSD_r, PSD_h, sign) OUTPUT PARAMETERS (my_s_v2, my_a_v, q_v,my_i) STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ #if __dest_os == __mac_os /* void Event_loop(); */ #endif double my_i; unsigned long end_counter=0; double my_s_v2,my_s_v2_total, my_a_v, q_v; double d_phi0,d_Scherrer,total_F2; int total,sign2,i; FILE *outfile; double V_pack=1.0; /* Vanadium sample can */ double V_sigma_a = 5.08; /* Absorption cross section per atom (barns) */ double V_sigma_i = 4.935 ; /* Incoherent scattering cross section per atom (barns) */ double V_rho ; /* Density of atoms (AA-3) */ double V_my_s ; double V_my_a_v,s ; %} INITIALIZE %{ V_rho =(2.0 * V_pack/(3.024*3.024*3.024)); /* Density of atoms (AA-3) */ V_my_s =(V_rho * 100.0 * V_sigma_i); V_my_a_v =(V_rho * 100.0 * V_sigma_a * 2200.0); my_i= sigma_i * pack/Vc * 100.0 ; outfile=fopen("sample.dat","w"); my_a_v = sigma_a * pack/Vc * 2200.0; /* Is not yet divided by v (which changes) */ my_s_v2_total=0.0; for (i=1,my_s_v2=0.0, total_F2 = 0.0;(i<=nbInt);i++) { if ((i<2)||(i>(nbInt-1))) printf("i=%4d Q=%9.2f j=%4d F2=%14.2f DW=%9.2f %9.5f\n",i,q[i],j[i],F2[i],DW[i],my_a_v); } d_phi0 = RAD2DEG*atan(0.5*(h+ PSD_h)/PSD_r); total = 0; printf("Vertical divergence (sample-PSD): %lfdeg, ",d_phi0); printf("my(incoh.=)%lg/m, sigma(incoh.)=%lgbarn\n",my_i,sigma_i); %} TRACE %{ double t20, t21,t2i0,t2i1,t0, t1,ti0,ti1, v, l_full,l_powder,l_can, l, l_1,l_2,l_p,l_c, dt, d_phi, theta, my_s, my,muR,muV; double aim_x, aim_y, aim_z, axis_x, axis_y, axis_z,my_total_powder,my_total_can; double tmp_vx, tmp_vy, tmp_vz, vout_x, vout_y, vout_z, Choice,total_F2_1,X; int i,coherent,powder; if (vz<0) ABSORB; my_s_v2_total=0.0; v = sqrt(vx*vx + vy*vy + vz*vz); /* Very first, we should provide the neutron velocity ... */ for (i=1,my_s_v2=0.0, total_F2 = 0.0;i<=nbInt;i++) if (q[i]*K2V<(2.0*v)) { my_s_v2_total += PI*PI*PI*pack*j[i]*F2[i]*DW[i]/(Vc*Vc*V2K*V2K*q[i]); /* all 0 < 2theta < 180 deg */ if ((fabs(q[i]*K2V) < (sin(fabs(ttmax)/2*PI/180)*2.0*v)) && (fabs(q[i]*K2V) > (sin(fabs(ttmin)/2*PI/180)*2.0*v))) total_F2 += j[i]*F2[i]*DW[i]/q[i]; /* only ttmin < 2theta < ttmax */ } total_F2_1=total_F2; total++; if (cylinder_intersect(&t0, &t1, x, y, z, vx, vy, vz, radius+d_V, h)) { if (t0 < 0) ABSORB; /* Neutron enters at t=t0. */ l_full = v * (t1 - t0); /* Length of full path through sample AND can - if there won't be any scattering */ if (rand01() < (double)transmission) /* Transmission (IF any ...) */ { my=my_i+my_a_v/v+my_s_v2_total/v/v; /* not exactly correct yet: considering can as sample ... */ dt = l_full/v + t0; PROP_DT(dt); p*=exp(-my*l_full)/(double)transmission; } else { /* Diffraction (elastic coherent AND incoherent scattering) */ /* it is sufficient to look here for choosing kind of scattering ... */ /* First, we must choose between scattering from sample or from container */ /* Therefore, we need (mu_i+mu_c)*R and mu_i(V)*d(V) and a random choice as done for coherent/incoherent */ /* To do it properly, we need the path of an unscattered neutron in Vanadium and in sample */ /* To do it even better, we may even consider 'multiple scattering', but that's valid for the sample itself beforehand ... */ if (cylinder_intersect(&ti0, &ti1, x, y, z, vx, vy, vz, radius, h)) { if (ti0 < 0) ABSORB; if (ti0 < t0) printf("\n%lg / %lg - %lg / %lg\n",t0,ti0,ti1,t1); l_powder = v * (ti1 - ti0); /* Length of full path through sample AND can */ } else { ti0=(t0+t1)/2.0; ti1=ti0; l_powder=0.0; } if (ti0 < t0) printf("\n---> %12.6lg / %12.6lg - %12.6lg - %12.6lg / %12.6lg ---> %8.6lg %8.6lg %8.6lg - %8.6lg\n",t0,ti0,dt,ti1,t1,x,y,z,l_powder); l_can=l_full-l_powder; muR=(my_s_v2_total/v/v+my_i)*l_powder; muV=(V_my_s)*l_can; Choice = fabs((muR+muV)*randpm1()); if (muR>=Choice) /****************** Scattering in Powder Sample ******************/ { powder=1; p*= (muR+muV)/muR ; /*** Now, we must choose between coherent or incoherent scattering ***/ Choice = fabs((my_s_v2_total/v/v+my_i)*randpm1()); if ((my_s_v2_total/(v*v))>=Choice) /****************** Coherent Scattering in Powder Sample ******************/ { coherent=1; if (ti0 < t0) printf("\n>>>> %lg / %lg - %lg / %lg\n",t0,ti0,ti1,t1); /**** In case of coherent scattering, choose a Bragg reflection ****/ total_F2=total_F2_1; Choice = fabs(total_F2 * randpm1()); for (i=1,total_F2 = 0.0; i<=nbInt; i++) { if ((fabs(q[i]*K2V) < (sin(fabs(ttmax)/2*PI/180)*2.0*v)) && (fabs(q[i]*K2V) > (sin(fabs(ttmin)/2*PI/180)*2.0*v))) { total_F2 += j[i]*F2[i]*DW[i]/q[i]; if (total_F2 >= Choice) { break; } } } /*printf("i=%3d, F2=%10.1lf, Q=%4.1lf, p=%10.2lg, ",i,F2[i],q[i],p);*/ if (i==0) i=1; if (i>nbInt) i=nbInt; p*=total_F2_1/(j[i]*F2[i]*DW[i]/q[i])*(my_s_v2_total/(v*v)+my_i)/(my_s_v2_total/(v*v)); /*printf("p=%10.2lg, ",p);*/ q_v = q[i]*K2V; /* NEW: quick and dirty strain peak broadening (TH 22/10/99, mod 25/10/99) */ do { s = rand01(); s = 2*s - 1; } while(s == 0); X =sqrt(1.0/fabs(s)-1.0)/3.1415*s/fabs(s); /* Lorentzian distributuion */ q_v=1.0/(1.0/q_v*(1.0+broadening*X)); if ((2.0*v) %lg / %lg - %lg / %lg\n",t0,ti0,ti1,t1); /* in case of incoherent scattering choose random a scattering angle */ /* if ever possible choose it from the target solid angle ... but this will be difficult */ theta = (ttmin/2*+rand01()*(ttmax-ttmin)/2)*DEG2RAD; /* Bragg scattering law */ q_v = sin(theta)*2.0*v; /* Bragg scattering law */ /*printf("Incoherent in powder p=%10.2lg, ",p);*/ p*=(my_s_v2_total/(v*v)+my_i)/(my_i)*sin(2.0*theta); /*printf("p=%10.2lg, ",p);*/ p*=PI/2*(-cos(fabs(ttmax/2)/180*PI)+cos(fabs(ttmin/2)/180*PI)); if (q[0]<0) { theta = -theta; q_v = -q_v; } } dt = 1.0/my/v * -log(rand01()*(1-exp(-my*l_powder))+exp(-my*l_powder)) + ti0; /* dt is NOT a difference, but the absolute time of scattering */ PROP_DT(dt); /* Point of scattering */ SCATTER; l = v*(dt -t0 ); /* Penetration in sample AND can */ l_c = v*(ti0-t0 ); /* Penetration in can */ l_p = v*(dt -ti0); /* Penetration in sample */ } else /****************** Incoherent Scattering in Vanadium Sample Can ******************/ { powder=0; p*= (muR+muV)/muV ; coherent=0; /* assume no Bragg scattering by Vanadium can - may be changed later! */ my=my_i+my_a_v/v; /* in case of incoherent scattering choose random a scattering angle */ theta = (ttmin/2+rand01()*(ttmax-ttmin)/2)*DEG2RAD; /* Bragg scattering law */ q_v = sin(theta)*2.0*v; /* Bragg scattering law */ /* printf("Incoherent in sample can: 2theta=%lf p=%10.2lg, ",2*theta/DEG2RAD,p); */ p*=sin(2.0*theta); /* printf("p=%10.2lg, ",p); */ p*=PI/2*(-cos(fabs(ttmax/2)/180*PI)+cos(fabs(ttmin/2)/180*PI)); /* printf("p=%10.2lg, ",p); */ /* p is correct only if there is no elastic scattering */ if (q[0]<0) { theta = -theta; q_v = -q_v; } /* simple choice, but modify p depending on scattering in entering or outgoing wall */ dt = rand01()*((t1-t0)-(ti1-ti0))+t0; if (dt>ti0) dt+=(ti1-ti0); PROP_DT(dt); /* Point of scattering */ SCATTER; l = v*(dt -t0 ); /* Penetration in sample AND can */ if (dt>ti1) { l_c = v*(dt - t0 - (ti1-ti0) ); /* Penetration in can */ l_p = v*(ti1-ti0); } else { l_c = v*(ti0-t0 ); /* Penetration in can */ l_p = v*(dt -ti0); /* Penetration in sample */ } } } if (write>=1) fprintf(outfile,"%lf %lf %lf\n ", x,y,z); theta = asin(q_v/(2.0*v)); /* Bragg scattering law */ d_Scherrer=2.0*PSD_r*sin(2.0*theta); if (d_Scherrer0) { l_2 = v*t2i0; /* l_3 is the length or trace in the entering wall of the sample can, after scattering */ l_1-= v*t2i0; /* l_1 should not contain the part of the trace in the sample can if scattering happens in the entering wall */ } else l_2=0.0; /* l_3 should be zero if the powder itself scatters, or the exiting wall of the sample can */ } if(!cylinder_intersect(&t20, &t21, x, y, z,vout_x, vout_y, vout_z, radius+d_V, h)) /* a modifier ... */ { if (ti0 < t0) printf("\n---> %12.6lg / %12.6lg - %12.6lg - %12.6lg / %12.6lg ---> %8.6lg %8.6lg %8.6lg - %8.6lg\n",t0,ti0,dt,ti1,t1,x,y,z,l_powder); printf("\nCoherent: %d, powder: %d\n",coherent,powder); printf("%lg %lg %lg (%lg %lg) %lg %lg\n",t0,ti0,dt,ti1,t1,t21,t2i1); printf("%6.1lf deg scattering angle (%lg, %d)\n", asin(q_v/(2.0*v))*2.0*RAD2DEG,q[i]*K2V,i); printf("FATAL ERROR: Did not hit outer cylinder from inside.\n"); exit(1); /* This can really not happen ... at least, theoretically ... (TH 10/10/99) */ } l_2 += v*(t21-t2i1); if (powder==0) { my_s = V_my_s; l_full=l_can; } else { l_full=l_powder; if (coherent==1) my_s = my_s_v2/(v*v); /* my_s_v2 only known for coherent case */ else my_s=my_i; /* of course ... even if it does not sound logic at the first glimpse */ } /* l_full is now the full path without scattering through the finally scattering material, powder or can (TH 10/10/99) */ my_total_powder=my_i+my_a_v/v+my_s_v2_total/(v*v); my_total_can =V_my_s+V_my_a_v/v; p *= fabs(l_full*my_s*exp(-my_total_powder*(l_p+l_1)-my_total_can*(l_c+l_2)))/(1.-(double)transmission); /*printf("%10.2lg, %10.2lg, p=%10.2lg\n",my_total_powder,my_s_v2_total,p);*/ end_counter++; /* if (p>1) exit(1); causes trouble with new source and weight>1*/ /* if ((unsigned long)fmod(end_counter,50) == 0) { if (powder==0) printf("-"); if (coherent==1) printf("*"); else if (powder==1) printf("+"); fflush(stdout); #if __dest_os == __mac_os Event_loop(); #endif } */ } else ABSORB; /* ... if the neutron does not hit the sample ... */ %} FINALLY %{ fclose(outfile); /* printf("\n"); for (i=1;i<=nbInt;i++) { printf("i=%4d N=%8d

=%18.15f \n",i,Nsum[i],Psum[i]/Nsum[i]); } */ %} MCDISPLAY %{ magnify("xyz"); circle("xz", 0, h/2.0, 0, radius); circle("xz", 0, -h/2.0, 0, radius); circle("xz", 0, h/2.0, 0, radius+d_V); circle("xz", 0, -h/2.0, 0, radius+d_V); line(-radius, -h/2.0, 0, -radius, +h/2.0, 0); line(+radius, -h/2.0, 0, +radius, +h/2.0, 0); line(0, -h/2.0, -radius, 0, +h/2.0, -radius); line(0, -h/2.0, +radius, 0, +h/2.0, +radius); line(-radius-d_V, -h/2.0, 0, -radius-d_V, +h/2.0, 0); line(+radius+d_V, -h/2.0, 0, +radius+d_V, +h/2.0, 0); line(0, -h/2.0, -radius-d_V, 0, +h/2.0, -radius-d_V); line(0, -h/2.0, +radius+d_V, 0, +h/2.0, +radius+d_V); %} END -------------- next part -------------- /******************************************************************************* * * McStas, version 1.2 released February 2000 * Maintained by Kristian Nielsen and Kim Lefmann, * Risoe National Laboratory, Roskilde, Denmark * * %IDENTIFICATION * * Written by: Thomas C Hansen * Date: 07 March 2000 * Version: $Revision: 1.0 $ * Origin: ILL (Dif/D20) * * Pyrolytic graphite filter * * %DESCRIPTION * * This pyrolytic graphite filter, defined by two identical rectangular opening apertures, * is based upon empiric data and determines by * interpolation the transmission of an incomming neutron, depending on its * wavelength. This type of filter is e.g. used to supress higher harmonics, so * the 1.2 AA contribution to the 2.4 AA obtained by a highly orientated * pyrolytic graphite (HOPG) monochromator at a takeoff angle of 42 deg., as * it is the case for the powder diffractometer D20 at the ILL Grenoble * * %PARAMETERS * * INPUT PARAMETERS: * * xmin: (m) Lower x bound (-0.16) * xmax: (m) Upper x bound ( 0.16) * ymin: (m) Lower y bound (-0.16) * ymax: (m) Upper y bound ( 0.16) * len: (m) Thickness of graphite plate ( 0.05) * * %LINKS * Source code of d20adapt.instr, where this component is used * * %END * *******************************************************************************/ DEFINE COMPONENT Filter_Graphite DEFINITION PARAMETERS (xmin, xmax, ymin, ymax, len) SETTING PARAMETERS () OUTPUT PARAMETERS () STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ %} INITIALIZE %{ %} TRACE %{ double L,L1,L0,T1,T0, Filt_T; double dt; PROP_Z0; L = (2*PI/V2K)/sqrt(vx*vx + vy*vy + vz*vz); if (xxmax || yymax) ABSORB; dt = len/vz; PROP_DT(dt); if (xxmax || yymax) ABSORB; if (L>2.60) {L1= L ;L0=2.60;T1=0.06;T0=0.06;}; if (L<2.60) {L1=2.60;L0=2.40;T1=0.06;T0=0.05;}; if (L<2.40) {L1=2.40;L0=2.30;T1=0.05;T0=0.09;}; if (L<2.30) {L1=2.30;L0=2.20;T1=0.09;T0=0.22;}; if (L<2.20) {L1=2.20;L0=2.00;T1=0.22;T0=0.34;}; if (L<2.00) {L1=2.00;L0=1.90;T1=0.34;T0=0.61;}; if (L<1.90) {L1=1.90;L0=1.80;T1=0.61;T0=0.23;}; if (L<1.80) {L1=1.80;L0=1.60;T1=0.23;T0=0.25;}; if (L<1.60) {L1=1.60;L0=1.40;T1=0.25;T0=0.27;}; if (L<1.40) {L1=1.40;L0=1.30;T1=0.27;T0=0.53;}; if (L<1.30) {L1=1.30;L0=1.20;T1=0.53;T0=0.98;}; if (L<1.20) {L1=1.20;L0=1.10;T1=0.98;T0=0.89;}; if (L<1.10) {L1=1.10;L0=1.00;T1=0.89;T0=0.52;}; if (L<1.00) {L1=1.00;L0=0.87;T1=0.52;T0=0.47;}; if (L<0.87) {L1=0.87;L0= L ;T1=0.47;T0=0.47;}; Filt_T=(T0+(L-L0)/(L1-L0)*(T1-T0))*100.0; Filt_T = exp(-Filt_T*len); p*=Filt_T; %} FINALLY %{ %} MCDISPLAY %{ magnify("xy"); multiline(5, (double)xmin, (double)ymin, 0.0, (double)xmax, (double)ymin, 0.0, (double)xmax, (double)ymax, 0.0, (double)xmin, (double)ymax, 0.0, (double)xmin, (double)ymin, 0.0); multiline(5, (double)xmin, (double)ymin, (double)len, (double)xmax, (double)ymin, (double)len, (double)xmax, (double)ymax, (double)len, (double)xmin, (double)ymax, (double)len, (double)xmin, (double)ymin, (double)len); line(xmin, ymin, 0.0, xmin, ymin, len); line(xmax, ymin, 0.0, xmax, ymin, len); line(xmin, ymax, 0.0, xmin, ymax, len); line(xmax, ymax, 0.0, xmax, ymax, len); %} END -------------- next part -------------- /******************************************************************************* * * McStas, version 1.2 released February 2000 * Maintained by Kristian Nielsen and Kim Lefmann, * Risoe National Laboratory, Roskilde, Denmark * * %IDENTIFICATION * * Written by: Thomas C Hansen * Date: 08 March 2000 * Version: $Revision: 2.0 $ * Origin: ILL (Dif/D20) * * Non-flat monochromator crystal with multiple scattering * * %DESCRIPTION * * Non-flat monochromator which uses a small-mosity approximation as well as * the approximation vy^2 << vz^2 + vx^2. The crystal may be in transmission * geometry as well as in reflection. Multiple scattering is possible. The * individual reflectivity for each neutron is calculated from its velocity * vector, the structure factor of the monochromator crystal and its mosaic. * For an unrotated monochromator component, the crystal plane lies in the y-z * plane (ie. parallel to the beam). * * %PARAMETERS * * INPUT PARAMETERS: * * xmin: (m) Lower x-bound of crystal * xmax: (m) Upper x-bound of crystal * zmin: (m) Lower z-bound of crystal * zmax: (m) Upper z-bound of crystal * ymin: (m) Lower y-bound of crystal * ymax: (m) Upper y-bound of crystal * mosh: (min) Horizontal mosaic (FWHM) * mosv: (min) Vertical mosaic (FWHM) * dist: (m) Distance from target (sample), not yet used (17.2) * xw: (m) Width of target (sample), not yet used (0.01) * write: (1) Flag (1/0) to write debugging information in a file * F2: (fm**2) Structure factor of monochromator material * Vc: (AA**3) Unit cell volume of monochromator material * omega: (deg) Rocking angle difference from Bragg reflection position (0) * Q: (1/AA) Wavevector of scattering * harmonic: (1) Order of first higher, contamining harmonic (2 for Cu or HOPG, 3 for Ge) * B: (1) Debye-Waller factor of monochromator material * LIMIT: (1) Upper limit of multiple scattering events to avoid infinite loops (1001) * blade: (1) Number of blade in a focussing monochromator of several blades (0) * present: (1) Flag (1/0) of presence of the component in focussing monochromators with variable number of elements (1) * * OUTPUT PARAMETERS: * * %LINKS * Source code of d20adapt.instr, where this component is used * * %END * *******************************************************************************/ DEFINE COMPONENT Monochromator0 DEFINITION PARAMETERS (xmin, xmax, zmin, zmax, ymin, ymax, mosh, mosv, dist, xw, write, F2, Vc, omega, Q, harmonic, B, LIMIT,blade, present) SETTING PARAMETERS () OUTPUT PARAMETERS () STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ #define DIV_CUTOFF 2 /* ~ 10^-5 cutoff. */ double d0,my,tmp7,tmp8; int z_edge,x_edge; int z_edge0,x_edge0; int counter; %} INITIALIZE %{ /* double my,r0,l,Mono_d,v; */ tmp7=0; tmp8=0; z_edge=0; x_edge=0; counter=0; fprintf(monofile,"p0,r0, my0, l0, phi0,p1,r1,p2,vx2,vy2\n"); /* v = sqrt(vx*vx+vy*vy+vz*vz); Mono_d = 2*PI/Q; my = PI*PI*PI*2.0*F2*exp(-Mono_B/4.0/Mono_d/Mono_d)/(Vc*Vc*V2K*V2K*Q)/v/v*(360*360*60*60/mosh/mosv/PI); l=xmax-xmin; if (l > (zmax-zmin)) l=zmax-zmin; r0=1.0-exp(-my*l); printf ("Monochromator: my=%lf/cm => R=%lf percent for l=%lfmm and v=%lfm/s\n",my/100,r0*100,l*1000,v); */ %} TRACE %{ double dphi,tmp1,tmp2,tmp3,tmp4,tmp5,tmp6,vratio,phi,theta0,theta,v,cs,sn; double old_x = x, old_y = y, old_z = z, old_t = t, old_vx=vx,old_vz=vz, tmp_vx=vx,tmp_vz=vz; double dt, dtx,dty,dtz,l, r0,q,l_total,tmp_x,tmp_y,tmp_z; double new_x,new_y,new_z,new_t; int j; old_x=x; old_y=y;old_z=z;old_t=t; if (present) { if (vx == 0.0) dtx=0.; else if ((xmin-x)/vx > (xmax-x)/vx) dtx = (xmax-x)/vx; else dtx = (xmin-x)/vx; if (vy == 0.0) dty=0.; else if ((ymin-y)/vy > (ymax-y)/vy) dty = (ymax-y)/vy; else dty = (ymin-y)/vy; if (vz == 0.0) dtz=0.; else if ((zmin-z)/vz > (zmax-z)/vz) dtz = (zmax-z)/vz; else dtz = (zmin-z)/vz; if (dtx > dtz) dt=dtx; else dt=dtz; if (dty > dt ) dt=dty; new_x = x+vx*dt; new_y = y+vy*dt; new_z = z+vz*dt; new_t = t+dt; if (new_x>=xmin-0.000001 && new_x<=xmax+0.000001 && new_z>=zmin-0.000001 && new_z<=zmax+0.000001 && new_y>=ymin-0.000001 && new_y<=ymax+0.000001) { x=new_x;y=new_y;z=new_z;t=new_t; counter++; if ((int)write == 1) { if (fabs(x-xmin)<.000001) x_edge++; if (fabs(z-zmin)<.000001) z_edge++; } if (vx == 0.0) dtx=0; else if ((xmin-x)/vx < (xmax-x)/vx) dtx = (xmax-x)/vx; else dtx = (xmin-x)/vx; if (vy == 0.0) dty=0; else if ((ymin-y)/vy < (ymax-y)/vy) dty = (ymax-y)/vy; else dty = (ymin-y)/vy; if (vz == 0.0) dtz=0; else if ((zmin-z)/vz < (zmax-z)/vz) dtz = (zmax-z)/vz; else dtz = (zmin-z)/vz; if (dtx < dtz) dt=dtx; else dt=dtz; if (dty < dt ) dt=dty; if (dt>0) { v = sqrt(vx*vx+vy*vy+vz*vz); /* First: scattering in plane */ theta0 = atan2(vx,vz)-omega*PI/180; /* neutron angle to slab */ /* if(theta0 < 0) theta = -theta; - useless statement ... but, careful, why has it been written once? ... */ theta = asin(Q2V*Q/(2.0*v)); /* Bragg's law */ if (counter <0) printf("Theta0=%lf, Theta=%lf (%lf), Omega=%lf, ",theta0*180/PI,theta*180/PI,Q2V*Q/(2.0*v), omega); tmp3 = (theta-theta0)/(MIN2RAD*mosh); theta = (Q2V*Q*(double)harmonic/(2.0*v)); /* Bragg's law */ if (theta>1) theta=asin(1); else theta = asin(theta); /* Bragg's law */ if (counter <0) printf("for %d.harmonic: Theta=%lf (%lf)",harmonic,theta*180/PI,Q2V*Q*(double)harmonic/(2.0*v)); if (fabs(tmp3)>fabs((theta-theta0)/(MIN2RAD*mosh))) q=Q*(double)harmonic; else q=Q; theta = asin(Q2V*q/(2.0*v)); /* Bragg's law */ tmp3 = (theta-theta0)/(MIN2RAD*mosh); Mono_d = 2*PI/q; if (counter <0) if (q!=Q) printf(" *"); if (counter <0) printf("\n"); l = v * dt; l_total=l; tmp4=exp(-tmp3*tmp3*4*log(2)); /*** the relative orientation goes into the calculation of my !!!(?) ******/ phi = atan2(vy,vz); /* ... but not the out-of plane angle! (? - because this will change with multiple scattering) */ my = tmp4*PI*PI*PI*2.0*F2*exp(-B/4.0/Mono_d/Mono_d)/(Vc*Vc*V2K*V2K*q)/v/v*(360*360*60*60/mosh/mosv/PI); /* my = tmp4*PI*PI*PI*2.0*F2*exp(-Mono_B/4.0/Mono_d/Mono_d)/(Vc*Vc*V2K*V2K*q)/v/v*(360*60/mosh/PI); */ /* Reflectivity r0 */ r0=1.0-exp(-my*l/**exp(-phi*phi*4*log(2)/(MIN2RAD*mosv)/(MIN2RAD*mosv))*/); if ((counter <0)||(r0<0)) printf("F2=%lf, Vc=%lf, mosh=%lf, mosv=%lf\n",F2,Vc,mosh,mosv); if ((counter <0)||(r0<0)) printf("v=%lfm/s, Q=%lf/AA\nMu=%lf/mm, path=%10.2lgmm, ",v,q,my/1000,l*1000); if ((counter <0)||(r0<0)) printf("MuR=%lf, Reflectivity=%10.2lg, Transmission=%lg, time= %lf s\n",my*l,100*r0,100*(1-r0),dt); d0 =1-r0; d0+=rand01()*r0; if ((counter <0)||(r0<0)) printf("Transmission at point of scattering: %lg, ",d0*100); d0 =-log(d0); d0/=my; dt=d0/v; if (counter <0) printf("\nEnter at x=%lgmm, z=%lgmm",x*1000,z*1000); tmp_x=x; tmp_y=y; tmp_z=z; x += vx*dt; y += vy*dt; z += vz*dt; t += dt; l_total = sqrt((x-tmp_x)*(x-tmp_x)+(y-tmp_y)*(y-tmp_y)+(z-tmp_z)*(z-tmp_z)); fflush(monofile); if (counter <0) printf("\nScattering at %lgmm, time=%lgs, x=%lgmm, z=%lgmm\n",d0*1000,dt,x*1000,z*1000); if ((int)write == 1) if (counter < 1e4) fprintf(monofile,"%lf\n", p); /* First: scattering in plane */ if(fabs(tmp3) > DIV_CUTOFF) { x = old_x; y = old_y; z = old_z; t = old_t; } else { SCATTER; if (counter < 1e4) fprintf(monofile,"%12lg %12lg %12lg %12lg %12lg ",p,r0, my, l, phi); if (r0<0) printf("p_in=%10.2lg, ",p); incident_p+=p; p *= r0; first_p+=p; if (counter < 1e4) fprintf(monofile,"%12lg ",p); /* p *= tmp4; we consider this already in the calculation of my, don't we? */ tmp1 = 2*theta; tmp6=1; cs = cos(tmp1); sn = sin(tmp1); tmp2 = cs*vx - sn*vz; if (counter <0) printf("vx=%lgm/s, vz=%lgm/s =>",vx,vz); old_vz=vz; /***** NEW! *****/ old_vx=vx; /***** NEW! *****/ vy = vy; vz = cs*vz + sn*vx; vx = tmp2; if (counter <0) printf("vx=%lgm/s, vz=%lgmm\n",vx,vz); /* Second: scattering out of plane. **********************************/ /* Approximation is that Debye-Scherrer cone is a plane **************/ phi = atan2(vy,vz); /* out-of plane angle */ dphi = (MIN2RAD*mosv)/(2*sqrt(2*log(2)))*randnorm(); /* MC choice: **/ /* Vertical angle of the crystallite */ vy = vz*tan(phi+2*dphi*sin(theta)); vratio = v/sqrt(vx*vx+vy*vy+vz*vz); vz = vz*vratio; vy = vy*vratio; /* Renormalize v */ vx = vx*vratio; /***************** NEW: MULTIPLE SCATTERING ************************************************************************/ j=1; if (vx == 0.0) dtx=0; else if ((xmin-x)/vx < (xmax-x)/vx) dtx = (xmax-x)/vx; else dtx = (xmin-x)/vx; if (vy == 0.0) dty=0; else if ((ymin-y)/vy < (ymax-y)/vy) dty = (ymax-y)/vy; else dty = (ymin-y)/vy; if (vz == 0.0) dtz=0; else if ((zmin-z)/vz < (zmax-z)/vz) dtz = (zmax-z)/vz; else dtz = (zmin-z)/vz; if (dtx < dtz) dt=dtx; else dt=dtz; if (dty < dt ) dt=dty; l = v * dt; tmp5=rand01(); r0=1.0-exp(-my*l/**exp(-phi*phi*4*log(2)/(MIN2RAD*mosv)/(MIN2RAD*mosv))*/); while (((tmp5 l) break; dt=d0/v; if (counter <0) printf("Scattering at %lgmm, time=%lgs",d0*1000,dt); tmp_x=x; tmp_y=y; tmp_z=z; x += vx*dt; y += vy*dt; z += vz*dt; t += dt; SCATTER; l_total+= sqrt((x-tmp_x)*(x-tmp_x)+(y-tmp_y)*(y-tmp_y)+(z-tmp_z)*(z-tmp_z)); if (counter <0) printf(", x=%lgmm, z=%lgmm\n",x*1000,z*1000); tmp_vx=vx; tmp_vz=vz; vx=old_vx; vz=old_vz; old_vx=tmp_vx; old_vz=tmp_vz; phi = atan2(vy,vz); /* out-of plane angle */ dphi = (MIN2RAD*mosv)/(2*sqrt(2*log(2)))*randnorm(); /* MC choice: **/ /* Vertical angle of the crystallite */ vy = vz*tan(phi+2*dphi*sin(theta)); vratio = v/sqrt(vx*vx+vy*vy+vz*vz); vz = vz*vratio; vy = vy*vratio; /* Renormalize v */ vx = vx*vratio; if (counter <0) printf("vx=%lgm/s, vz=%lgmm\n",vx,vz); if (vx == 0.0) dtx=0; else if ((xmin-x)/vx < (xmax-x)/vx) dtx = (xmax-x)/vx; else dtx = (xmin-x)/vx; if (vy == 0.0) dty=0; else if ((ymin-y)/vy < (ymax-y)/vy) dty = (ymax-y)/vy; else dty = (ymin-y)/vy; if (vz == 0.0) dtz=0; else if ((zmin-z)/vz < (zmax-z)/vz) dtz = (zmax-z)/vz; else dtz = (zmin-z)/vz; if (dtx < dtz) dt=dtx; else dt=dtz; if (dty < dt ) dt=dty; l = v * dt; r0=1.0-exp(-my*l/**exp(-phi*phi*4*log(2)/(MIN2RAD*mosv)/(MIN2RAD*mosv))*/); tmp5=rand01(); } if (((vx*theta)>0)||(vx>0)) { if (counter < 1e4) fprintf(monofile,"%12lg %12lg %12lg %12lg\n",r0,p,vx,vz); leaving_p+=p; ABSORB; } /****************** END OF MULTIPLE SCATTERING ***********************/ if (p<0) printf("r0=%10.2lg, tmp3=%10.2lg, p_out=%10.2lg\n",r0,tmp3,p); leaving_p+=p; if (counter < 1e4) fprintf(monofile,"%12lg %12lg %12lg %12lg\n",r0,p,vx,vz); fflush(monofile); } } else { /* x = old_x; y = old_y; z = old_z; t = old_t; */ } } else { /* x = old_x; y = old_y; z = old_z; t = old_t; */ } if (counter<0) counter=0; } /* if present */ %} FINALLY %{ if ((int)write == 1) printf("x edge : %d neutrons, z edge : %d neutrons\n",x_edge ,z_edge ); %} MCDISPLAY %{ magnify("xyz"); multiline(16,(double)xmin*present, (double)ymin*present, (double)zmin*present, (double)xmin*present, (double)ymax*present, (double)zmin*present, (double)xmin*present, (double)ymax*present, (double)zmax*present, (double)xmin*present, (double)ymin*present, (double)zmax*present, (double)xmin*present, (double)ymin*present, (double)zmin*present, (double)xmax*present, (double)ymin*present, (double)zmin*present, (double)xmax*present, (double)ymax*present, (double)zmin*present, (double)xmin*present, (double)ymax*present, (double)zmin*present, (double)xmax*present, (double)ymax*present, (double)zmin*present, (double)xmax*present, (double)ymax*present, (double)zmax*present, (double)xmin*present, (double)ymax*present, (double)zmax*present, (double)xmax*present, (double)ymax*present, (double)zmax*present, (double)xmax*present, (double)ymin*present, (double)zmax*present, (double)xmin*present, (double)ymin*present, (double)zmax*present, (double)xmax*present, (double)ymin*present, (double)zmax*present, (double)xmax*present, (double)ymin*present, (double)zmin*present); %} END -------------- next part -------------- /*********************************************************************** * * McStas, version 1.2 released February 2000 * Maintained by Kristian Nielsen and Kim Lefmann, * Risoe National Laboratory, Roskilde, Denmark * * %IDENTIFICATION * * Author: Thomas C Hansen * Date: 07 March 2000 * Version: $Revision: 1.0 $ * Origin: ILL (Dif/D20) * * Curved linear 1D MSGC PSD * * %DESCRIPTION * * A curved linear 1D PSD monitor using a cylindrical projection. This detector type is commonly * used in constant wavelength neutron powder diffraction, based either on multiwire- (MWGC) or * microstrip- (MSGC) gaschamber technology. This implementation is mainly pushed by the MSGC * realisation (D20) of such a PSD, as done on D20 at ILL. So some kind of 'polygonality' effect * resulting from the polygonal arrangement of MSGC plates will be considered in the near future * by an approximation of the electron avalanche trace in the electrical field. * * %PARAMETERS * * INPUT PARAMETERS: * * radius: (m) Radius of detector at center of MSGC plate (=radius in PSD_entry + gap) (1.471) * height: (m) Height of detector (=height in PSD_entry) (0.15) * nd: (1) Number of cells (=nd in PSD_entry) (1536) * pitch: (deg) angular pitch (=pitch in PSD_entry) (0.1) * gap: (m) gaschamber detection gap (0.053) * filename: (string) Name of file in which to store the detector image (NULL) * sign: (1) Chirality of 1st diffractometer axis=sign[takeoff of d20adapt.instr] (-1) * tt0: (deg) Angular position of 1st PSD cell (=tt0 in PSD_entry) (0) * pdet: (bar) Pressure of 3He detection gas (1.2) * pT_trace: (m) Average effective length of proton/tritium trace (0.005) * period: (1) Number of detection cells per MSGC plate (=period in PSD_entry) (32) * cellwidth: (m) Width of one detection cell on a MSGC plate (0.002568) * * OUTPUT PARAMETERS: * * PSD_N: (*1) Array of neutron counts * PSD_p: (*1.0) Array of neutron weight counts * PSD_p2: (*1.0) Array of second moments * alpha: (rad) Angle covered by one MSGC plate * R1: (m) PSD radius at MSGC edge * * %LINKS * Source code of d20adapt.instr, where this component is used * %LINKS * Source code of PSD_entry.comp, a corresponding entry window * * %END * ***********************************************************************/ DEFINE COMPONENT PSD_curved DEFINITION PARAMETERS ( radius, height, nd, pitch, gap, filename, sign, tt0, pdet, pT_trace, period, cellwidth) SETTING PARAMETERS () OUTPUT PARAMETERS (PSD_N, PSD_p, PSD_p2, alpha, R1) STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ int PSD_N[3601]; double PSD_p[3601]; double PSD_p2[3601]; double alpha, R1; %} INITIALIZE %{ int i; alpha=period*pitch/360.0*PI; R1=radius/cos(alpha); for (i=0; i 0 */) { /*if(t0 < 0) t0 = t1;*/ if(t0 < t1) t0 = t1; /*PROP_DT(t0);*/ x+=vx*t0; y+=vy*t0; z+=vz*t0; t+=t0; SCATTER; /* incomming neutron */ /* if ((double)sign*twotheta/PI*180. < tt0-pitch) ABSORB; */ /* if ((double)sign*twotheta/PI*180. > tt0+(nd+1)*pitch) ABSORB; */ /* Polygonality effect in MSGC PSD - the detection gap is not really constant ... */ /* Where would the n hit, if the outer radius is where the plates are closest to the entry */ cylinder_intersect(&t2, &t3, x, y, z, vx, vy, vz, radius, height); if(t2 < 0) t2 = t3; x0=x+t3*vx; z0=z+t3*vz; twotheta0 = -atan2(x0,z0); i0 = floor(0.5+((double)sign*twotheta0/PI*180.0-tt0)/pitch); plate0=i0/period; /* printf("\nplate: %d, cell %d, twotheta %lf\n",plate0,i0,twotheta0/PI*180.0); */ /* Where would the n hit, if the outer radius is where two plates join */ cylinder_intersect(&t2, &t3, x, y, z, vx, vy, vz, R1, height); if(t2 < 0) t2 = t3; x1=x+t3*vx; z1=z+t3*vz; twotheta1 = -atan2(x1,z1); i1 = floor(0.5+((double)sign*twotheta1/PI*180.0-tt0)/pitch); plate1=i1/period; /* printf("plate: %d, cell %d, twotheta %lf\n",plate1,i1,twotheta1/PI*180.0); */ /* We try now to get the radius R2 where the n hits the plate */ twotheta=(tt0-pitch/2.0+(plate0+0.5)*period*pitch)*PI/180.0; /* printf("twotheta of plate %d: %lf\n",plate0,twotheta*180.0/PI); */ zp0=cos(twotheta-alpha)*R1; xp0=sin(twotheta-alpha)*R1; zp1=cos(twotheta+alpha)*R1; xp1=sin(twotheta+alpha)*R1; xx = (z0-(z1 -z0 )/(x1 -x0 )*x0) - (zp0-(zp1-zp0)/(xp1-xp0)*xp0); xx/= (zp1-zp0)/(xp1-xp0) - (z1 -z0 )/(x1 -x0 ); zz = (z0-(z1 -z0 )/(x1 -x0 )*x0) + (z1 -z0 )/(x1 -x0 ) * xx ; /* printf("mt=%lf;bt=%lf \n",(z1 -z0 )/(x1 -x0 ),(z0 -(z1 -z0 )/(x1 -x0 )*x0 )); printf("mp=%lf;bp=%lf \n",(zp1-zp0)/(xp1-xp0),(zp0-(zp1-zp0)/(xp1-xp0)*xp0)); printf("xx[0]=%lf;zz[0]=%lf\n",xx,zz); */ R2=sqrt(xx*xx+zz*zz); /* printf("R0=%lf;R1=%lf;R2=%lf\n",radius,R1,R2); printf("neutron hits plate %d (radius %lf < %lf < %lf) %lf %lf\n",plate0,radius,R2,R1,sqrt(x0*x0+z0*z0),sqrt(x1*x1+z1*z1)); printf("twotheta = %lf to %lf\n",twotheta0/PI*180.0,twotheta1/PI*180.0); printf("plate %d (%lf,%lf) to (%lf,%lf)\n",plate0,xp0,zp0,xp1,zp1); printf("n hits between (%lf,%lf) and (%lf,%lf)\n",x0,z0,x1,z1); printf("%lf of plate \n",b); */ if (plate1 != plate0) { twotheta=(tt0-pitch/2.0+(plate1+1)*period*pitch)*PI/180.0; zp0=cos(twotheta-alpha)*R1; xp0=sin(twotheta-alpha)*R1; zp1=cos(twotheta+alpha)*R1; xp1=sin(twotheta+alpha)*R1; xx = (z0-(z1 -z0 )/(x1 -x0 )*x0) - (zp0-(zp1-zp0)/(xp1-xp0)*xp0); xx/= (zp1-zp0)/(xp1-xp0) - (z1 -z0 )/(x1 -x0 ); zz = (z0-(z1 -z0 )/(x1 -x0 )*x0) + (z1 -z0 )/(x1 -x0 ) * xx ; tmp=sqrt(xx*xx+zz*zz); if (tmp R1) { /* printf("neutron hits plate %d or %d (radius %lf < %lf < %lf)\n",plate0,plate1,radius,R2,R1); printf("##############################################################\n"); */ R2=R1; } /* Now we got the virtual outer radius R2 which is in between 'radius' and 'R1' */ cylinder_intersect(&t2, &t3, x, y, z, vx, vy, vz, R2, height); if(t2 < 0) t2 = t3; /* The following thing is not working as exspected to trace the trajectory of a neutron through the detection gap PROP_DT(t2); SCATTER; PROP_DT(-t2); SCATTER; */ x+=vx*t2; y+=vy*t2; z+=vz*t2; SCATTER; x-=vx*t2; y-=vy*t2; z-=vz*t2; SCATTER; v = sqrt(vx*vx + vy*vy + vz*vz); l_full = v * (t3); /* Length of full path through sample */ /* printf("Trajectory in gap %lfmm (%lf microsecs), ",l_full*1000,t3*1000000); */ eff=1.0-exp(-0.07417*pdet*l_full*100.0*VL/v); dt = (t3) * -log(rand01()*(eff)+1.0-eff);/* + t0*/ /* printf("efficiency %lf percent, capture after %lfmm\n",eff*100,dt*v*1000); */ PROP_DT(dt); SCATTER; /* Point of capture */ l = v*dt; /* Penetration in detector */ p_detection=p*eff; p*=1-eff; /* a not detected (=captured) neutron may continue the flightpath!) */ /* Now, 2Theta for the place, where the neutron should have been detected ... */ twotheta = -atan2(x,z); /* target vector b from neutron to PSD (in plane: y=0) */ bx= sin(twotheta)*radius-x; by= 0.0; bz= cos(twotheta)*radius-z; /* axis a perpendicular to neutron vector v */ vec_prod(ax,ay,az, vx,vy,vz, bx,by,bz); /* MC choice of angle component psi in a circle */ psi =2*PI*rand01(); /* rotation in circle of neutron vector v around axis a (in plane) -> temporary trace vector t */ rotate (tx,ty,tz, vx,vy,vz, psi, ax,ay,az); /* MC choice of second angle component in a sphere */ theta=acos(randpm1()); /* rotation in sphere of temporary trace vector t (out of plane) -> output pT trace vector o */ rotate (ox,oy,oz, tx,ty,tz, theta, vx,vy,vz); /* vx=ox;vy=oy;vz=oz; - NOT the neutron changes it's direction but the pT trace o */ NORM(ox,oy,oz); /* neutron is virtually detected at about a quarter of the total p/T trace length from capture */ ox*=pT_trace/4.0; oy*=pT_trace/4.0; oz*=pT_trace/4.0; x+=ox;y+=oy;z+=oz; /* SHOW the part of pT trace leading to the point of virtual neutron capture detcted by the cas chamber PSD */ SCATTER; /* NOW 2Theta and phi is calculated for the gravicenter of electron avalanche */ twotheta = -atan2(x,z); phi = asin(y/radius); /* i = floor(0.5+(nx-1)*( (double)sign*twotheta/(2*PI) - tt0/360.)); */ i = floor(0.5+((double)sign*twotheta/PI*180.0-tt0)/pitch); if ((i=0)) { PSD_N [i] ++; PSD_p [i] += p_detection; PSD_p2[i] += p_detection*p_detection; } else { ABSORB; } } else { ABSORB; } /* Yes, indeed, ABSORB IS a good idea for non-detected neutrons, as they do not interest anymore, and to use Check_adapt afterwards! */ %} FINALLY %{ int i; double total=0.0,histories=0.0; char string[40]; for (i=0;iThomas C Hansen * Date: 07 March 2000 * Version: $Revision: 1.1 $ * Origin: ILL (Dif/D20) * * Entry window of a curved linear gaschamber PSD * * %DESCRIPTION * * Aluminium entry window for a curved linear position sensitive detector (PSD), * as used in constant wavelength neutron powder diffraction (ILL Grenoble: D20). * Normally, this component is always used in front of a PSD_curved component. * * * %PARAMETERS * * INPUT PARAMETERS: * * radius: (m) Outer radius of detector entry window (=radius-gap in PSD_curved) (1.418) * height: (m) Height of detector (=height in PSD_curved) (0.15) * nd: (1) Number of cells (=nd in PSD_curved) (1536) * pitch: (deg) angular pitch (=pitch in PSD_curved) (0.1) * gap: (m) Thickness of entry window (0.007) * tt0: (deg) detection angle of first cell (=tt0 in PSD_curved) (0) * pack: (1) Packing density of window material * Vc: (AA**3) Unit cell volume of window material * sigma_a: (barn) Absorption cross section * q: (1/AA) Wavevector * j: (1) Multiplicity * F2: (fm**2) Structure factor * DW: (1/AA**2) Debye-Waller factor * period: (1) Number of cells on one MSGC plate (=period in PSD_curved) (32) * sign: (1) Chirality of 1st diffractometer axis=sign[takeoff of d20adapt.instr] (-1) * * OUTPUT PARAMETERS: * * my_s_v2: (m/s**2) Attenuation factor due to elastic coherent scattering, multiplied by neutron velocity**2 * my_a_v: (1/s) Attenuation factor due to absorption, multiplied by neutron velocity * q_v: (m/s) Corresponding velocity of wavevector Q * * %LINKS * Source code of d20adapt.instr, where this component is used * %LINKS * The corresponding detector PSD_curved.comp * * %END * ***********************************************************************/ DEFINE COMPONENT PSD_entry DEFINITION PARAMETERS(radius,height,nd,pitch,gap,tt0,pack,Vc,sigma_a,q,j,F2,DW,period,sign) SETTING PARAMETERS () OUTPUT PARAMETERS (my_s_v2, my_a_v, q_v) STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ double my_s_v2, my_a_v, q_v; %} INITIALIZE %{ my_a_v = sigma_a/Vc*2200; /* Is not yet divided by v */ my_s_v2 = PI*PI*PI*pack*j*F2*DW/(Vc*Vc*V2K*V2K*q); q_v = q*K2V; %} TRACE %{ double t0, t1, t2, t3, twotheta, d_phi, phi,eff,p_transmission; double my, l_full, dt, aim_x, aim_y, aim_z, axis_x, axis_y, axis_z; double l, tmp_vx, tmp_vy, tmp_vz, vout_x, vout_y, vout_z,v; int i; if(cylinder_intersect(&t0, &t1, x, y, z, vx, vy, vz, radius-gap, height) && t1 > 0) { if(t0 < 0) t0 = t1; PROP_DT(t0); /*SCATTER;*/ twotheta = -atan2(x,z); /*printf("%lf\n",twotheta);*/ if (((double)sign*twotheta>=tt0-pitch/2.0) && ((double)sign*twotheta<=tt0+(double)nd*pitch+pitch/2.0)) { /*SCATTER;*/ cylinder_intersect(&t2, &t3, x, y, z, vx, vy, vz, radius, height); if(t2 < 0) t2 = t3; v = sqrt(vx*vx + vy*vy + vz*vz); l_full = v * (t2); /* Length of full path through PSD entry window of Al */ my=my_s_v2/v/v+my_a_v/v; p_transmission=exp(-my*l_full); if (rand01() > p_transmission) { eff=1.0-exp(-my_s_v2/v/v*l_full); dt =(t2)*-log(rand01()*(eff)+1.0-eff); PROP_DT(dt); /* Point of diffraction */ l = v*dt; /* Penetration in entry window */ p*=(eff)/(1-p_transmission); /* a not detected (=captured) neutron may continue the flightpath!) */ d_phi = 360.0*DEG2RAD/2.0*randpm1(); twotheta = 2.0*asin(q_v/(2.0*v)); /* Bragg scattering law */ aim_x = sin(twotheta)-x; /* Vector pointing at target (anal./det.) */ aim_y = -y ;/* + PSD_h/2*randpm1() ; doppelt wg. d_phi?*/ aim_z = cos(twotheta)-z; vec_prod(axis_x, axis_y, axis_z, vx, vy, vz, aim_x, aim_y, aim_z); rotate(tmp_vx, tmp_vy, tmp_vz, vx, vy, vz, twotheta, axis_x, axis_y, axis_z); rotate(vout_x, vout_y, vout_z, tmp_vx, tmp_vy, tmp_vz, d_phi, vx, vy, vz); vx = vout_x; vy = vout_y; vz = vout_z; } else { PROP_DT(t2); /*SCATTER;*/ } } else ABSORB; } else ABSORB; /* Yes, ABSORB is a good idea for non-detectedable neutrons, as they do not interest anymore, and to use Check_adapt afterwards! */ %} FINALLY %{ %} MCDISPLAY %{ double R2, twotheta,x0,z0,x1,z1; int cell; magnify("xyz"); R2=radius-gap; twotheta=(tt0-pitch/2.0)*PI/180.0; z0=cos(twotheta)*R2; x0=sin(twotheta)*R2; line(x0, -height/2.0,z0,x0, height/2.0,z0); for (cell=1;cell<=ceil((double)nd/(double)period)*period;cell++) { twotheta=(tt0-pitch/2.0+pitch*cell)*PI/180.0; z1=cos(twotheta)*R2; x1=sin(twotheta)*R2; line(x0, -height/2.0,z0,x1, -height/2.0,z1); line(x0, height/2.0,z0,x1, height/2.0,z1); x0=x1; z0=z1; } line(x0, -height/2.0,z0,x0, height/2.0,z0); /* Circles are too roughly drawn for curved detector presentations */ /* circle("xz", 0, height/2.0, 0, radius); circle("xz", 0, -height/2.0, 0, radius); line(-radius, -height/2.0, 0, -radius, +height/2.0, 0); line(+radius, -height/2.0, 0, +radius, +height/2.0, 0); line(0, -height/2.0, -radius, 0, +height/2.0, -radius); line(0, -height/2.0, +radius, 0, +height/2.0, +radius); circle("xz", 0, height/2.0, 0, (radius-gap)); circle("xz", 0, -height/2.0, 0, (radius-gap)); line(-(radius-gap), -height/2.0, 0, -(radius-gap), +height/2.0, 0); line(+(radius-gap), -height/2.0, 0, +(radius-gap), +height/2.0, 0); line(0, -height/2.0, -(radius-gap), 0, +height/2.0, -(radius-gap)); line(0, -height/2.0, +(radius-gap), 0, +height/2.0, +(radius-gap)); */ %} END -------------- next part -------------- /*********************************************************************** * * McStas, version 1.2 released February 2000 * Maintained by Kristian Nielsen and Kim Lefmann, * Risoe National Laboratory, Roskilde, Denmark * * %IDENTIFICATION * * Author: Thomas C Hansen * Date: 07 March 2000 * Version: $Revision: 1.0 $ * Origin: ILL (Dif/D20) * * Conversion from flat energy distribution to Maxwellian neutron spectra * * %DESCRIPTION * * The routine modifies/converts the incident flat (in energy) neutron spectra, * as it comes out from a source like the standard adaptive source * Source_adapt, * to obtain a Maxwellian neutron distribution, as it is approximatively the case for thermal neutrons * in a reactor's moderator (e.g. the HFR of the ILL in Grenoble). So, this * component is only a virtual one, not corresponding to a real element in a * neutron beam. * * %PARAMETERS * * INPUT PARAMETERS: * * T: (K) The temperature of the source, 293 K for thermal neutrons (beam tube H11 at ILL) * E0: (meV) Mean energy of neutrons (as for Source_adapt) * dE: (meV) Energy spread as for Source_adapt (energy range is from E0-dE to E0+dE) * * OUTPUT PARAMETERS: * * Lmin: (AA) Minimum wavelength in energy range * Lmax: (AA) Maxium wavelength in energy range * l0: (AA) Mean wavelength of neutron spectra, about 1.8 AA for thermal neutrons * L2P: (AA**4) Normalisation constant for Maxwell distribution * * %LINKS * Source code of d20adapt.instr, where this component is used * %LINKS * A source producing a flat in energy distribution: Source_adapt.comp * * %END * ***********************************************************************/ DEFINE COMPONENT Convert_FlatE_2_Maxwell DEFINITION PARAMETERS (T,E0,dE) SETTING PARAMETERS () OUTPUT PARAMETERS (Lmin,Lmax,l0,L2P) STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ double l0, L2P, Lmin,Lmax; %} INITIALIZE %{ double k; k = 1.38066e-23; l0=1.0e10*sqrt(HBAR*HBAR*4.0*PI*PI/2.0/MNEUTRON/k/T); L2P=2*l0*l0*l0*l0; Lmin = sqrt(81.81/(E0+dE)); /* AAngstroem */ Lmax = sqrt(81.81/(E0-dE)); %} TRACE %{ double l,E, Maxwell,dE_dl; l= (2*PI/V2K)/sqrt(vx*vx + vy*vy + vz*vz); E=(VS2E*4.0*(PI*PI)/(V2K*V2K))/l/l; dE_dl=E/l*2.0; p*=2.0*dE/(Lmax - Lmin)/dE_dl; Maxwell=L2P/l/l/l/l/l*exp(-l0*l0/l/l); p*= Maxwell; %} FINALLY %{ %} MCDISPLAY %{ magnify("xy"); circle("xy",0,0,0,0.1); %} END -------------- next part -------------- /******************************************************************************* * * McStas, version 1.1, released * Maintained by Kristian Nielsen and Kim Lefmann, * Risoe National Laboratory, Roskilde, Denmark * * Component: Hdiv_monitor * * Written by: KL, Nov. 11, 1998 * Written by: Thomas Hhansen, December, 1999 * * A divergence sensitive monitor. The counts are distributed in * n pixels. * * INPUT PARAMETERS: * * xmin: Lower x bound of detector opening (m) * xmax: Upper x bound of detector opening (m) * ymin: Lower y bound of detector opening (m) * ymax: Upper y bound of detector opening (m) * nh: Number of pixel rows (1) * h_maxdiv Maximal vertical divergence detected (degrees) * filename: Name of file in which to store the detector image (text) * * OUTPUT PARAMETERS: * * Div_N: Array of neutron counts * Div_p: Array of neutron weight counts * Div_p2: Array of second moments * *******************************************************************************/ DEFINE COMPONENT Hdiv_monitor DEFINITION PARAMETERS (xmin, xmax, ymin, ymax, nh, h_maxdiv, filename) SETTING PARAMETERS () OUTPUT PARAMETERS (Div_N, Div_p, Div_p2) STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ int Div_N[nh]; double Div_p[nh]; double Div_p2[nh]; %} INITIALIZE %{ int i; for (i=0; ixmin && xymin && y -(double)h_maxdiv) { i = floor((h_div + (double)h_maxdiv)*nh/(2.0*(double)h_maxdiv)); Div_N[i]++; Div_p[i] += p; Div_p2[i] += p*p; } } %} FINALLY %{ DETECTOR_OUT_1D( "horizontal divergence monitor", "horizontal divergence [deg]", "Intensity", "divergence", -h_maxdiv, h_maxdiv, nh, &Div_N[0],&Div_p[0],&Div_p2[0], filename); %} MCDISPLAY %{ magnify("xy"); multiline(5, (double)xmin, (double)ymin, 0.0, (double)xmax, (double)ymin, 0.0, (double)xmax, (double)ymax, 0.0, (double)xmin, (double)ymax, 0.0, (double)xmin, (double)ymin, 0.0); %} END -------------- next part -------------- /******************************************************************************* * * McStas, version 1.0, released October 26, 1998 * Maintained by Kristian Nielsen and Kim Lefmann, * Risoe National Laboratory, Roskilde, Denmark * * Component: PSD_bidim * * Written by: KL, Feb 3, 1998 (PSD_monitor.comp) * Rewritten by: Thomas Hansen, ILL Grenoble, France, 1999 * Output modified * * An (n times m) pixel PSD monitor. This component may also be used as a beam * detector. * * INPUT PARAMETERS: * * xmin: Lower x bound of detector opening (m) * xmax: Upper x bound of detector opening (m) * ymin: Lower y bound of detector opening (m) * ymax: Upper y bound of detector opening (m) * nx: Number of pixel columns (1) * ny: Number of pixel rows (1) * filename: Name of file in which to store the detector image (text) * * OUTPUT PARAMETERS: * * PSD_N: Array of neutron counts * PSD_p: Array of neutron weight counts * PSD_p2: Array of second moments * *******************************************************************************/ DEFINE COMPONENT PSD_bidim DEFINITION PARAMETERS (xmin, xmax, ymin, ymax, nx, ny, filename) SETTING PARAMETERS () OUTPUT PARAMETERS (PSD_N, PSD_p, PSD_p2) STATE PARAMETERS (x,y,z,vx,vy,vz,t,s1,s2,p) DECLARE %{ int PSD_N[nx][ny]; double PSD_p[nx][ny]; double PSD_p2[nx][ny]; %} INITIALIZE %{ int i,j; for (i=0; ixmin && xymin && y