Using the subroutine
Forum rules
Please read the forum usage recommendations before posting.
Please read the forum usage recommendations before posting.
Using the subroutine
Hello,
In fact, i use my Saturn Codes to validate my model of turbulence, and i have successfully completed the INVARIANT implementation of this model, and i have good results.
Now the 2nd part of my job is to calculate the constant in my INVARIANT model by the DYNAMIC method and here i have a problem with the soubroutine "CFILTR.
In fact, i programmed my constant INVARIANT model (called a ficheir CONINVARIANTDYN.F as attached above) as in the DYNAMIC Model excatly as in the file "visdyn.F", when i compile there are no errors, but my calculations are not running because of soubroutine "CFILTR" (after several tests).
Please can you tell me where is the problem ?
Attached file:
coninvariantdyn.F -------> constant calculation vissmaminvariant.F ------> calculating the eddy viscosity model INVARIANT sortie.lod ------> error
Thank you in advance.
Nazir AL SAYED.
In fact, i use my Saturn Codes to validate my model of turbulence, and i have successfully completed the INVARIANT implementation of this model, and i have good results.
Now the 2nd part of my job is to calculate the constant in my INVARIANT model by the DYNAMIC method and here i have a problem with the soubroutine "CFILTR.
In fact, i programmed my constant INVARIANT model (called a ficheir CONINVARIANTDYN.F as attached above) as in the DYNAMIC Model excatly as in the file "visdyn.F", when i compile there are no errors, but my calculations are not running because of soubroutine "CFILTR" (after several tests).
Please can you tell me where is the problem ?
Attached file:
coninvariantdyn.F -------> constant calculation vissmaminvariant.F ------> calculating the eddy viscosity model INVARIANT sortie.lod ------> error
Thank you in advance.
Nazir AL SAYED.
- Attachments
-
- coninvariantdyn.F
- (27.77 KiB) Downloaded 272 times
Re: Using the subroutine "CFILTER.F"
Hello,
It seems you only posted one of the 3 attachments, and "sortie.lod" and possibly your calculation and/or error logs (listing and error*) are certainly needed to try to understand the problem.
Regards,
It seems you only posted one of the 3 attachments, and "sortie.lod" and possibly your calculation and/or error logs (listing and error*) are certainly needed to try to understand the problem.
Regards,
Re: Using the subroutine
hello,
Sorry, the attached files vissmaminvariant.F and sortie.lod
Sorry, the attached files vissmaminvariant.F and sortie.lod
- Attachments
-
- vissmaminvariant.F
- (20.13 KiB) Downloaded 279 times
Re: Using the subroutine
Attached file: sortie.lod
- Attachments
-
- sortie.log
- (3.1 KiB) Downloaded 262 times
Re: Using the subroutine
Hello,
Please find attached file above the invariant model and the scheme of
calculations.
Regards.
Nazir Al Sayed.
Please find attached file above the invariant model and the scheme of
calculations.
Regards.
Nazir Al Sayed.
- Attachments
-
- modele_invariant.pdf
- (35.52 KiB) Downloaded 268 times
Re: Using the subroutine "CFILTER.F"
Hello,
The "listing" and "error" files may contain stack traces which should be more useful than simply "sortie.log".
In any case, rank 3 is probably the one that caused the problem (others receiving signal 9 are simply killed because another rank failed), but this does not tell us why it failed (listing and error.0004 should help).
Regards,
The "listing" and "error" files may contain stack traces which should be more useful than simply "sortie.log".
In any case, rank 3 is probably the one that caused the problem (others receiving signal 9 are simply killed because another rank failed), but this does not tell us why it failed (listing and error.0004 should help).
Regards,
Re: Using the subroutine "CFILTER.F"
Indeed, "listing" and/or "error" files would be more useful to help us debugging your code.
Nonetheless, I quickly had a look at what you wrote and something could be a problem... You define as "static" arrays the arrays W11 to W19. This can be an issue because, depending on the compiler and on the size of the arrays (namely NCELET), you can "segmentation-fault" i.e. have a memory problem. What you should do instead is either use the RDEVEL macro array (see the user documentation for more information) or add temporary arrays management at the beginning of the VISSMAMINVARIANT subroutine (see the usproj.F subroutine for an example concerning gradient calculation).
Hope this helps!
Nonetheless, I quickly had a look at what you wrote and something could be a problem... You define as "static" arrays the arrays W11 to W19. This can be an issue because, depending on the compiler and on the size of the arrays (namely NCELET), you can "segmentation-fault" i.e. have a memory problem. What you should do instead is either use the RDEVEL macro array (see the user documentation for more information) or add temporary arrays management at the beginning of the VISSMAMINVARIANT subroutine (see the usproj.F subroutine for an example concerning gradient calculation).
Hope this helps!
Re: Using the subroutine "CFILTER.F"
Hello, I tried to do as you say, but it not work, i think the problem is in the 'CFILTR' because when i delete all these functions in the 'CONINVARIANTDYN.F' it works! Even i tried to used this function (CFILTR) in another program that does not work! Thank you in advance
Nazir Al Sayed
Nazir Al Sayed
Re: Using the subroutine "CFILTER.F"
Hi Nazir,
Do your code works on single CPU? Do you try your code in debug mode in order to have a useful traceback (in error files)?
Perhaps it will be more easy to help you with additional informations: all your sources, listing and error files...
Do your code works on single CPU? Do you try your code in debug mode in order to have a useful traceback (in error files)?
Perhaps it will be more easy to help you with additional informations: all your sources, listing and error files...
Re: Using the subroutine "CFILTER.F"
Indeed,
Could you run your calculation in serial mode (on 1 processor) and check if it still doesn't work? To better help you, we would need at least the listing and error* files; and if we still don't see why it fails, perhaps your complete calculation setup.
You can have more information (in parallel run, as your calculation seems to abort on rank 3) like this: - go to the Prepare batch calculation page - click on the Advanced options button - select to listing_n<p> for the Redirection for processes from rank 1 to p of parallel job (--logp) item Likewise, you can set the option ARG_CS_OUTPUT to "--logp 1" in the runcase script.
On a side note, I read again the sortie.log file you attached and it seems you have some installation issues: - unable to locate a module file for MPI/MKL/... - program compiled against libxml 207, using 206 I think you ought to fix these error messages, or at least ask you system admin whether they are important or not.
David
Could you run your calculation in serial mode (on 1 processor) and check if it still doesn't work? To better help you, we would need at least the listing and error* files; and if we still don't see why it fails, perhaps your complete calculation setup.
You can have more information (in parallel run, as your calculation seems to abort on rank 3) like this: - go to the Prepare batch calculation page - click on the Advanced options button - select to listing_n<p> for the Redirection for processes from rank 1 to p of parallel job (--logp) item Likewise, you can set the option ARG_CS_OUTPUT to "--logp 1" in the runcase script.
On a side note, I read again the sortie.log file you attached and it seems you have some installation issues: - unable to locate a module file for MPI/MKL/... - program compiled against libxml 207, using 206 I think you ought to fix these error messages, or at least ask you system admin whether they are important or not.
David