[FLASH-BUGS] [FLASH-USERS] MRT question

Chris Daley cdaley at flash.uchicago.edu
Fri Jun 27 11:53:58 CDT 2008


A. B. Sefkow wrote:
>
>
> Chris Daley wrote:
>> A. B. Sefkow wrote:
>>> Hi Flash-bugs,
>>>
>>> It is possible I found another bug.  I'm simply going through the
>>> provided test problems and, after a "./setup Cellular -2d -auto", "cd
>>> object", and "make", the code compiles pretty far until the
>>> bn_burner.F90 file fails:
>>>
>>>
>>> ------------------
>>> ...
>>> ...
>>> ...
>>> mpif90 -I../lib/ma28/include -c -O2 -fdefault-real-8
>>> -fdefault-double-8 -ffree-line-length-none  -DMAXBLOCKS=1000 -DNXB=8
>>> -DNYB=8 -DNZB=1 -DN_DIM=2 avisco.F90
>>> mpif90 -I../lib/ma28/include -c -O2 -fdefault-real-8
>>> -fdefault-double-8 -ffree-line-length-none  -DMAXBLOCKS=1000 -DNXB=8
>>> -DNYB=8 -DNZB=1 -DN_DIM=2 bn_azbar.F90
>>> mpif90 -I../lib/ma28/include -c -O2 -fdefault-real-8
>>> -fdefault-double-8 -ffree-line-length-none  -DMAXBLOCKS=1000 -DNXB=8
>>> -DNYB=8 -DNZB=1 -DN_DIM=2 bn_burner.F90
>>> bn_burner.F90:164.86:
>>>
>>>   & bn_network,bn_networkSparseJakob,bn_networkSparsePointers,bn_b
>>>
>>>    1
>>> Error: Type/rank mismatch in argument 'steper' at (1)
>>> bn_burner.F90:173.85:
>>>
>>>    & bn_network,bn_networkDenseJakob,bn_networkSparsePointers,bn_b
>>>
>>>    1
>>> Error: Type/rank mismatch in argument 'steper' at (1)
>>> bn_burner.F90:187.86:
>>>
>>>   & bn_network,bn_networkSparseJakob,bn_networkSparsePointers,bn_r
>>>
>>>    1
>>> Error: Type/rank mismatch in argument 'steper' at (1)
>>> bn_burner.F90:195.85:
>>>
>>>    & bn_network,bn_networkDenseJakob,bn_networkSparsePointers,bn_r
>>>
>>>    1
>>> Error: Type/rank mismatch in argument 'steper' at (1)
>>> make: *** [bn_burner.o] Error 1
>>>
>>> ------------------------
>>>
>>>
>>> I tried looking for an easy fix by myself, but with no luck.  I did
>>> notice that the parameters for the odestepper and algebra are missing
>>> the prefix "bn_" in the Config file (while "bn_" is used in the code),
>>> but that didn't fix the problem.
>>>
>>> Has anyone else reported that the Cellular test problem did work for
>>> them?
>>>
>>> Thanks,
>>> Adam
>>>
>>>
>>>
>>>
>>>
>>> Anshu Dubey wrote:
>>>> Dear Adam,
>>>>
>>>> First, thanks for reporting the bug in the Makefile. We have made a
>>>> note of
>>>> it. About RT setup, I believe Dongwook(dongwook at flash.uchicago.edu
>>>> <mailto:dongwook at flash.uchicago.edu>)
>>>> will be able to help you, but currently
>>>> he is on vacation, so it may be a week or two before you get a 
>>>> response
>>>> from him
>>>>
>>>> Anshu
>>>>
>>>>
>>>> On Fri, Jun 20, 2008 at 5:00 PM, A. B. Sefkow <absefko at sandia.gov
>>>> <mailto:absefko at sandia.gov>> wrote:
>>>>
>>>>     Dear Flash Users,
>>>>
>>>>     I am a new Flash user and became interested in the code in 
>>>> order to
>>>>     attempt a Magnetic Rayleigh Taylor (MRT) simulation.  I'm still
>>>>     going through the provided examples and the manual in order to 
>>>> learn
>>>>     how to use the code, but so far it isn't obvious to me how one can
>>>>     specify magnetic fields and pressure *beyond* the initialization.
>>>>      In other words, would I need a circuit model to do this in Flash,
>>>>     or is there some way to tell the code how I want I(t)
>>>>     [Bx(t),By(t),Bz(t)] to evolve (say, at a boundary, and let it
>>>>     diffuse in)?  Along those lines, can nonideal MHD parameters be 
>>>> set
>>>>     for different fluids?  I essentially want to start really simple,
>>>>     say by just exchanging gravity for magnetics in a straight forward
>>>>     RT simulation.
>>>>
>>>>     If anybody has a simple RT or MRT setup they would be willing to
>>>>     share in order to help a new user learn, I would be much indebted.
>>>>
>>>>     Thanks,
>>>>     Adam
>>>>
>>>>
>> Hi Adam,
>>
>> I was unable to reproduce this error.  However, your compilation error
>> message seems to imply that a single line character limit is exceeded:
>>
>> e.g. line 164 in bn_burner.f90
>> & bn_network,bn_networkSparseJakob,bn_networkSparsePointers,bn_b
>> should read:
>> & 
>> bn_network,bn_networkSparseJakob,bn_networkSparsePointers,bn_baderMa28)
>>
>> I suspect the problem can be cured by simply splitting each failing line
>> into two
>> separate lines.  Let me know if this helps.
>>
>> Regards,
>> Chris
>>
>>
>
> Hi Chris,
>
> Thanks for the note.  Unfortunately I still get the same error, but 
> now with the full line and closing )
>
> -------------------------
> bn_burner.F90:165.31:
>
>   &   bn_networkSparsePointers,bn_baderMa28)
>                               1
> Error: Type/rank mismatch in argument 'steper' at (1)
> bn_burner.F90:175.44:
>
>     &              bn_networkSparsePointers,bn_baderGift)
>                                            1
> Error: Type/rank mismatch in argument 'steper' at (1)
> bn_burner.F90:190.44:
>
>     &              bn_networkSparsePointers,bn_rosenMa28)
>                                            1
> Error: Type/rank mismatch in argument 'steper' at (1)
> bn_burner.F90:199.44:
>
>     &              bn_networkSparsePointers,bn_rosenGift)
>                                            1
> Error: Type/rank mismatch in argument 'steper' at (1)
> make: *** [bn_burner.o] Error 1
> -----------------------------------
>
> Any other ideas?  I don't suppose it would work if I got a fresh and 
> functional copy of that file from someone else?
>
> Also, why wouldn't it matter that bn_burner.F90 is using bn_algebra 
> and bn_odeStepper in its code, but the flash.par file specifies 
> odeStepper and algebra (without the bn_)... a tiny bug?  I guess there 
> is a default setting that gets used probably.
>
> Thanks,
> Adam
>
>
>
>
>
Hi Adam,

I get the same compile time error when using the gfortran Fortran
compiler.  It does not appear straightforward to resolve cleanly.  I
will mention this to my work colleague who knows more about the burn
unit.

If you wish to compile and run the simulation, one workaround is to
remove the type/rank checking:

In bn_burner.F90:

1.  Comment out -
  use bnIntegrate_interface, ONLY: bn_baderMa28, bn_baderGift, &
       bn_rosenMa28, bn_rosenGift

2.  Uncomment -
  external bn_baderMa28, bn_baderGift, bn_rosenMa28, bn_rosenGift

This is not an ideal solution, but the program should work the same in this
particular case, as there are no assumed shape array arguments or
optional arguments in the subroutine calls.


 > Also, why wouldn't it matter that bn_burner.F90 is using bn_algebra 
and bn_odeStepper in its code, but the flash.par file specifies 
odeStepper and algebra (without the bn_)... a tiny bug?  I guess there 
is a default setting that gets used probably.

These parameters are stored in FLASH variables in Burn_init.F90: 

call RuntimeParameters_get("odeStepper", bn_odeStepper )
call RuntimeParameters_get("algebra", bn_algebra )

Regards,
Chris


More information about the flash-bugs mailing list