Programming in *.f90 free format with PETSc

Ben Tay zonexo at gmail.com
Mon Aug 6 03:07:34 CDT 2007


Hi,

I tried to use

#define PETSC_AVOID_DECLARATIONS
#include "include/finclude/petsc.h"
<other includes>
#undef PETSC_AVOID_DECLARATIONS


module ada
...

subroutine ....

end module ada

but the compiler says that the module is placed in the wrong order. 
Anyway, I just move the top 4 lines into the subroutine instead and it 
worked. Thanks

module ada

...

subroutine ddd

#define PETSC_AVOID_DECLARATIONS
#include "include/finclude/petsc.h"
<other includes>
#undef PETSC_AVOID_DECLARATIONS

....

end subroutine ddd




Satish Balay wrote:
> you can use .F90 suffix for free-from preprocesed code. [or use
> compiler options to force it always use free-form]
>
> And when using fortran modules use the following organization:
>
>   
>
> #define PETSC_AVOID_DECLARATIONS
> #include "include/finclude/petsc.h"
> <other includes>
> #undef PETSC_AVOID_DECLARATIONS
>
> moudle foobar
> <other module stuff>
> end module
>
> subroutine xyz()
> use foobar
> implicit none
> #include "include/finclude/petsc.h"
> <other includes>
> <code>
> end subroutine
> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>
> Satish
>
> On Mon, 6 Aug 2007, Ben Tay wrote:
>
>   
>> Hi,
>>
>> I've no problem writing out codes in fortran fixed format with PETSc. However,
>> is it possible to do it in fortran free format as well?
>>
>> I'm using visual fortran and there's error.
>>
>> original :
>>
>> test.F
>>
>> module global_data
>>
>>    implicit none
>>
>>    save
>>
>> #include "include/finclude/petsc.h"
>> #include "include/finclude/petscvec.h"
>> #include "include/finclude/petscmat.h"
>> #include "include/finclude/petscksp.h"
>> #include "include/finclude/petscpc.h"
>> #include "include/finclude/petscmat.h90"
>>
>>    Vec    xx,b_rhs
>>
>> ....
>>
>> How can I change this code to fortran free format *.f90?
>>
>> Thanks
>>
>>
>>     
>
>
>   




More information about the petsc-users mailing list