Giter Site home page Giter Site logo

Comments (3)

pearseb avatar pearseb commented on July 17, 2024

I have found the same issue. I had a quick look online and apparently the maximum length of lines in the ifort compiler is hard coded.

from mocsy.

jamesorr avatar jamesorr commented on July 17, 2024

@pearseb @jkrasting
This issue has been resolved. ifort has a hard limit on the number of continuation lines, and that was the problem for data statements for the three largest variables in gsw_mod_saar_data.f90. That routine has now been corrected by concatenating, for each variable, all those continuation lines into one. The ifort compiler has no limit on the length of an individual line. The latest version of mocsy (v2.3.5) includes these corrections.

from mocsy.

jamesorr avatar jamesorr commented on July 17, 2024

@pearseb @jkrasting @hylandg
As opposed to what is said in my commt on Oct 21, 2017, the issue was not resolved. Unlike what is said, ifort does have a limit of 7200 characters for the length of an individual line. There is no general work-around for that, even though other compilers do offer solutions.
Recently though, another mocsy user pointed to the same problem. After investigating and looking at more recent developments with the GSW package, I found a solution that was already implemented in the FV3 Bundle at http://academy.jcsda.org/doxygen-example/namespacegsw__mod__saar__data.html
For that solution, a revised version of https://github.com/jamesorr/mocsy/blob/master/src/GSW/gsw_mod_saar_data.f90 was built from the original GSW netCDF file that contains that data, using a python script https://github.com/jamesorr/mocsy/blob/master/src/GSW/make_saar_data.py.
Thus, in the just released version 2.4.1 of mocsy, I have now included the updated https://github.com/jamesorr/mocsy/blob/master/src/GSW/gsw_mod_saar_data.f90 routine as well as the corresponding python script. Furthermore, I shortened many lines in the data statements of the fortran routine by replacing duplicate values of the mask with the more concise multiplicative notation (e.g., writing 8*9e90_r8 instead of writing out that number 8 times separated by commas. The overall size of that very large routine is now down by about 30%. Minor changes were also necessary in another GSW routine https://github.com/jamesorr/mocsy/blob/master/src/GSW/gsw_saar.f90
As a result, mocsy can now be compiled with ifort.

from mocsy.

Related Issues (3)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.