 |
CosmoCoffee
|
CosmoMC: Problem with adding new parameters
|
| View previous topic :: View next topic |
| Author |
Message |
Henry Lin
Joined: 06 Mar 2012 Posts: 7 Affiliation: Caddo Magnet High School
|
Posted: May 01 2012 |
|
|
Hi all,
I've recently modified the (updated 2012) PPF module so that it uses an alternate dark energy equation of state parameterization. When I run CAMB by itself, it gives good results.
I then followed the steps on http://cosmocoffee.info/viewtopic.php?p=4698 to add the new parameters to CosmoMC. Unfortunately, I get the following when running CosmoMC:
| Code: |
Computing tensors: F
Doing CMB lensing: T
lmax = 2100
Number of C_ls = 4
Varying 6 parameters ( 0 fast)
starting Monte-Carlo
Initialising BBN Helium data...
bad xa input in splint
|
I've inserted a print command which shows that at the time of the error, the parameters have the correctly loaded values. I can run the standard version of CosmoMC just find.
Thanks for your time! |
|
| Back to top |
|
 |
Sheng Li
Joined: 26 May 2009 Posts: 44 Affiliation: Univ. of Sussex
|
Posted: May 04 2012 |
|
|
| Henry Lin wrote: | Hi all,
I've recently modified the (updated 2012) PPF module so that it uses an alternate dark energy equation of state parameterization. When I run CAMB by itself, it gives good results.
I then followed the steps on http://cosmocoffee.info/viewtopic.php?p=4698 to add the new parameters to CosmoMC. Unfortunately, I get the following when running CosmoMC:
| Code: |
Computing tensors: F
Doing CMB lensing: T
lmax = 2100
Number of C_ls = 4
Varying 6 parameters ( 0 fast)
starting Monte-Carlo
Initialising BBN Helium data...
bad xa input in splint
|
I've inserted a print command which shows that at the time of the error, the parameters have the correctly loaded values. I can run the standard version of CosmoMC just find.
Thanks for your time! |
Just One cue:
Reverse xa (virtual argument) in its according file, then reverse to actual argument insteadof xa;
No detail outputs, no further help.
If you switched on "debug" while doing compilation, you must see many outputs, which you would better to paste here, so that you or others can help you better and further.
If you dont know how to switch on debug, you can insert the following line after f90 compilation option in your Makefile under the folder "source".
-O0 -g debug -all
Change your default optimization to -O0 (no optim.. then accelerate compiling process).
So, return here with output msgs after doing that.
Good luck. |
|
| Back to top |
|
 |
Henry Lin
Joined: 06 Mar 2012 Posts: 7 Affiliation: Caddo Magnet High School
|
Posted: May 12 2012 |
|
|
Thanks so much for your reply! I've changed the makefile to
| Code: | | FFLAGS = -O0 -g -debug |
Incidentally, I'm running cosmobox with ifort.
I get the following messages:
| Code: |
-I/home/ubuntu/workspace/likelihood -c cmbtypes.f90
cmbtypes.f90(26): warning #5117: Bad # preprocessor line
#ifdef DR71RG
-^
cmbtypes.f90(33): warning #5117: Bad # preprocessor line
#else
-^
cmbtypes.f90(39): warning #5117: Bad # preprocessor line
#endif
-^
cmbtypes.f90(34): error #6418: This name has already been assigned a data type. [NUM_MATTER_POWER]
integer, parameter :: num_matter_power = 74 !number of points computed in matter power spectrum
------------------------^
cmbtypes.f90(35): error #6418: This name has already been assigned a data type. [MATTER_POWER_MINKH]
real, parameter :: matter_power_minkh = 0.999e-4 !1e-4 !minimum value of k/h to store
------------------------^
cmbtypes.f90(36): error #6418: This name has already been assigned a data type. [MATTER_POWER_DLNKH]
real, parameter :: matter_power_dlnkh = 0.143911568 !log spacing in k/h
------------------------^
cmbtypes.f90(37): error #6418: This name has already been assigned a data type. [MATTER_POWER_MAXZ]
real, parameter :: matter_power_maxz = 0. !6.0
------------------------^
cmbtypes.f90(38): error #6418: This name has already been assigned a data type. [MATTER_POWER_LNZSTEPS]
integer, parameter :: matter_power_lnzsteps = 1 !20
------------------------^
compilation aborted for cmbtypes.f90 (code 1)
make: *** [cmbtypes.o] Error 1
|
Thanks for your time! |
|
| Back to top |
|
 |
Sheng Li
Joined: 26 May 2009 Posts: 44 Affiliation: Univ. of Sussex
|
Posted: May 16 2012 |
|
|
Let me simply reply under your latest post.
I don't understand why those lines
| Quote: | #ifdef DR71RG
....
#end if
|
would not be recognised in cosmoBox.
But if you really want to use DR71RG, which is explained in README in CosmoMC page. then check how to configure it.
For the following lines, which indicated you did not define matter_power or such stuffs. so you should look for all the places where they might be used. Or you can define them in you module or somewhere (basically, in each subroutine in which those variables are used).
Or, another possibility is you did not configure well WMAP 7-year data, where most key variables are defined. Then camb and mcmc explorer can find them without question.
However, if those variables are NEW, as you proposed in you post, then you will have to define them as i said above.
btw: debug option should be fully as (the following is enough to get most debug info)
-O0 -g debug -check all
(sorry for missing '-check all' in my last post.) |
|
| Back to top |
|
 |
Henry Lin
Joined: 06 Mar 2012 Posts: 7 Affiliation: Caddo Magnet High School
|
Posted: May 20 2012 |
|
|
Thank you so much for your help!
I was able to resolve this problem by simply adding -fpp. Now my only problem is once i run cosmomc I get
| Code: |
Computing tensors: F
Doing CMB lensing: T
lmax = 2100
Number of C_ls = 4
Varying 6 parameters ( 0 fast)
forrtl: severe (408): fort: (2): Subscript #1 of the array PMAT has value 14 which is greater than the upper bound of 13
Image PC Routine Line Source
cosmomc 08AF6BB9 Unknown Unknown Unknown
cosmomc 08AF5935 Unknown Unknown Unknown
cosmomc 08AAA961 Unknown Unknown Unknown
cosmomc 08A654E6 Unknown Unknown Unknown
cosmomc 08A657F4 Unknown Unknown Unknown
cosmomc 08077CB3 Unknown Unknown Unknown
cosmomc 080E91CF Unknown Unknown Unknown
cosmomc 081078F8 Unknown Unknown Unknown
cosmomc 08054124 Unknown Unknown Unknown
libc.so.6 00129113 Unknown Unknown Unknown
|
|
|
| Back to top |
|
 |
Sheng Li
Joined: 26 May 2009 Posts: 44 Affiliation: Univ. of Sussex
|
Posted: May 21 2012 |
|
|
| Henry Lin wrote: | Thank you so much for your help!
I was able to resolve this problem by simply adding -fpp. Now my only problem is once i run cosmomc I get
| Code: |
Computing tensors: F
Doing CMB lensing: T
lmax = 2100
Number of C_ls = 4
Varying 6 parameters ( 0 fast)
forrtl: severe (408): fort: (2): Subscript #1 of the array PMAT has value 14 which is greater than the upper bound of 13
Image PC Routine Line Source
cosmomc 08AF6BB9 Unknown Unknown Unknown
cosmomc 08AF5935 Unknown Unknown Unknown
cosmomc 08AAA961 Unknown Unknown Unknown
cosmomc 08A654E6 Unknown Unknown Unknown
cosmomc 08A657F4 Unknown Unknown Unknown
cosmomc 08077CB3 Unknown Unknown Unknown
cosmomc 080E91CF Unknown Unknown Unknown
cosmomc 081078F8 Unknown Unknown Unknown
cosmomc 08054124 Unknown Unknown Unknown
libc.so.6 00129113 Unknown Unknown Unknown
|
|
Good, since you can get the error msg.
The output error msg indicated that your defined array "PMAT" is out of its allocated bound.
Search your file for of PMAT which is used/called, or defined.
so, then you need to check the size of array PMAT (if this array is actually defined BY YOU OWN SIDE), or what extra components are passed to PMAT. |
|
| Back to top |
|
 |
Henry Lin
Joined: 06 Mar 2012 Posts: 7 Affiliation: Caddo Magnet High School
|
Posted: May 28 2012 |
|
|
I found PMAT under paramdef.f90. I've bumped up the number of hard parameters in settings and I've changed the proposed covariance matrix (params_CMB.covmat), but I still get
| Code: |
ubuntu@cosmobox:~/workspace/cosmomc2$ cos
Random seeds: 5362, 21711 rand_inst: 0
Computing tensors: F
Doing CMB lensing: T
lmax = 2100
Number of C_ls = 4
Varying 7 parameters ( 0 fast)
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
starting Monte-Carlo
Initialising BBN Helium data...
(alpha, beta) = ( 0.50000, 1.00000)
bad xa input in splint
(alpha, beta) = ( 0.50000, 1.00000)
ubuntu@cosmobox:~/workspace/cosmomc2$
|
|
|
| Back to top |
|
 |
Sheng Li
Joined: 26 May 2009 Posts: 44 Affiliation: Univ. of Sussex
|
Posted: May 28 2012 |
|
|
| Henry Lin wrote: | I found PMAT under paramdef.f90. I've bumped up the number of hard parameters in settings and I've changed the proposed covariance matrix (params_CMB.covmat), but I still get
| Code: |
ubuntu@cosmobox:~/workspace/cosmomc2$ cos
Random seeds: 5362, 21711 rand_inst: 0
Computing tensors: F
Doing CMB lensing: T
lmax = 2100
Number of C_ls = 4
Varying 7 parameters ( 0 fast)
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
forrtl: warning (402): fort: (1): In call to I/O Read routine, an array temporary was created for argument #1
starting Monte-Carlo
Initialising BBN Helium data...
(alpha, beta) = ( 0.50000, 1.00000)
bad xa input in splint
(alpha, beta) = ( 0.50000, 1.00000)
ubuntu@cosmobox:~/workspace/cosmomc2$
|
|
Good, I think you are close to clean all issues.
*This msg suggests that your codes encounter just an I/O error.
Just check one subroutine which is called before proceeding to start Monte-Carlo.
To do that, you should locate this *array (which may or may not created by you)* between "Varying 7 parameters" and "starting Monte Carlo".
grep the above two key words, then I think you can find some I/O procedures in which the error occurred.
Besides, if you can run your *cos* after Monte Carlo, I think there is possibly no technical errors before getting your expected outputs. If you could not get that, you will have to debug and refine your codes in some physical principles.
Good luck. |
|
| Back to top |
|
 |
Sheng Li
Joined: 26 May 2009 Posts: 44 Affiliation: Univ. of Sussex
|
Posted: May 28 2012 |
|
|
by the way, to do that:
| Code: |
grep -in "varying\|parameters" *90
|
then
| Code: |
grep -in 'starting Monte-Carlo' *90
|
then you will find one or two subroutines to look into. |
|
| Back to top |
|
 |
Henry Lin
Joined: 06 Mar 2012 Posts: 7 Affiliation: Caddo Magnet High School
|
Posted: June 09 2012 |
|
|
Hi Sheng,
Many thanks again for all of your time. I've used grep to find that the warnings are associated w/ the loading covariance matrix. This is in fact not a problem that needs to be addressed; the standard version of CosmoMC also produces these warnings under debug mode, but it can run with no issues. I've reinstalled everything and I think the issue is with the new version of the PPF module. http://cosmocoffee.info/viewtopic.php?t=1849. Any thoughts? |
|
| Back to top |
|
 |
Sheng Li
Joined: 26 May 2009 Posts: 44 Affiliation: Univ. of Sussex
|
Posted: June 09 2012 |
|
|
| Henry Lin wrote: | Hi Sheng,
Many thanks again for all of your time. I've used grep to find that the warnings are associated w/ the loading covariance matrix. This is in fact not a problem that needs to be addressed; the standard version of CosmoMC also produces these warnings under debug mode, but it can run with no issues. I've reinstalled everything and I think the issue is with the new version of the PPF module. http://cosmocoffee.info/viewtopic.php?t=1849. Any thoughts? |
Hi,
I think this is not the case I can do. I could not say anything if I did not explore PPF module.
It seemed that the author of PPF said she would update this module. So I think you can either ask her help or probably just wait until the PPF updated.
Alternatively, you may find the functional modules elsewhere which can support your modules. |
|
| Back to top |
|
 |
Dario Scovacricchi
Joined: 18 Jul 2012 Posts: 1 Affiliation: University of Trieste
|
Posted: July 18 2012 |
|
|
Hi,
I have exactly the same problem with ppf module.
When I run it, I obtain: bad xa input in splint
Do you solve the problem? Can you help me? |
|
| Back to top |
|
 |
Hamzeh Alavi
Joined: 27 Oct 2011 Posts: 4 Affiliation: KIT
|
Posted: November 19 2012 |
|
|
| Henry Lin wrote: | Hi all,
I've recently modified the (updated 2012) PPF module so that it uses an alternate dark energy equation of state parameterization. When I run CAMB by itself, it gives good results.
I then followed the steps on http://cosmocoffee.info/viewtopic.php?p=4698 to add the new parameters to CosmoMC. Unfortunately, I get the following when running CosmoMC:
| Code: |
Computing tensors: F
Doing CMB lensing: T
lmax = 2100
Number of C_ls = 4
Varying 6 parameters ( 0 fast)
starting Monte-Carlo
Initialising BBN Helium data...
bad xa input in splint
|
I've inserted a print command which shows that at the time of the error, the parameters have the correctly loaded values. I can run the standard version of CosmoMC just find.
Thanks for your time! |
I have the same problem, I followed the suggestions above, but the problem still exists. Could you solve it? |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|