-
Notifications
You must be signed in to change notification settings - Fork 25
Adapted for macOS and parallel processing #5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
…and parallel processing (add random number to tmp path).
|
Hi again Matthias, |
|
Dear Gerardo, yes, I realised that this is not a development branch. But I do not know how to contribute in another way. If I want to commit something else, I will try to keep the commit small (such as this time) so that you can transfer it by hand if accepted. Kind regards, |
|
Yes, that's the best approach, keep the commits small so that I can port them to the dev repo manually. Thanks a lot Matthias! |
…in subroutine TimelagHandle directly. Formatted output of eddypro_rp on console for better indentation.
…d after planar fit calculations by setting to_mode=2 or pf_mode=2, respectively.
|
Dear Gerardo @geryatejina , we are planning to reprocess our 25 years of Eddy data with EddyPro. So we need a bit of flexibility. I started to familiarise myself a bit more with the code and changed very little things for a start but which might come handy also to other people. The first commit was just to add the option 'tlag_opt' in the subroutine TimelagHandle. The way that it was done was a bit twisted by setting the method to 'maxcov&default' before TimelagHandle and then back to 'tlag_opt' afterwards again. In this commit, I also cleaned a bit the comparisons with strings in the eddypro_rp_main.f90. The second commit adds the possibility to stop calculations after timelag optimisation and after planar fit. I use the to_mode and pf_mode variables. If one of them is set to 2 then eddypro_rp will stop after this step. Is it advised to use no more than 2 months for calculating planar fits. So we will first calculate the fits for two months and then read it from the file for say the whole summer. So I do not want to do the whole chain for the two months where I only want the planar fit file. Kind regards, |
|
Dear Gerardo @geryatejina , I thought making an extra comment for easier tracking. I was wondering if you think that this is a a good way to move forward: I keep on submitting small commits to this PR. It might turn out that some of the commits might not be so small. I also do not know what your policy is. Are you actually interested in user contributions? If so then a read only master branch would probably be a good idea so that users can rebase the branch before PRs and merge effort is then minimal for you. Best, |
…o_rp and eddypro_fcc (subroutine InitEnv).
…ase of ghg files, because they read very slowly; this signaling is not necessary for other formats.
…ng native data instead of kind=1 and kind=2
…cision FFT routines; and use it in FourierTransform. The amount of files could be reduced if wanted.
…lation calculated with Fourier Transform to get the maximum covariance. It behaves currently almost exaclty as "maxcov&opt" but should help us later with problems with flow control. This adds also a eight raw output, i.e. out_crosscorr=1, writing the whole correlation time series to raw files.
…Use assumed-shape arrays in subroutine TimeLagHandle because gfortran@8 compiler has problems with optional arguments otherwise. Use module routines in eddypro-rp_main and kid.
…c compiling with gfortran version 11.2.0.
Dear Gerardo,
I have been running EddyPro on macOS. There were two small inconveniences in order to get it to run:
trim(homedir) // 'tmp') manually, andFor the first issue, I added the -p flag to mkdir in the OS environment so that
trim(homedir) // 'tmp'gets created in desktop mode as well (not onlytrim(homedir) // 'tmp' // slash // 'tmp' // trim(adjustl(tmpDirPadding))). The little inconvenience of this very easy fix is thattrim(homedir) // 'tmp'is not cleaned up.For the second issue, I changed the code so that the utility
unzipcoming with macOS is used instead of 7za.unzipmight probably also be the preferable solution on Linux.I also tried to run EddyPro in parallel using the GNU utility parallel. This failed because tmpdir used the timestamp only and the separate instances interfered with each other. I added a 5-digit random number to the tmpdir name to make them even more unique.
Kind regards,
Matthias