Coder Social home page Coder Social logo

Remove DIST_PREC option about vic HOT 10 CLOSED

uw-hydro avatar uw-hydro commented on July 1, 2024
Remove DIST_PREC option

from vic.

Comments (10)

bartnijssen avatar bartnijssen commented on July 1, 2024

Bart will help out with this as well.

from vic.

bartnijssen avatar bartnijssen commented on July 1, 2024

When removing the DIST_PRCP option we could just get rid of dist_prcp.c and invoke full_energy(), put_data(), and write_model_state() directly from vicNl.c, which would make it easier to read.

from vic.

tbohn avatar tbohn commented on July 1, 2024

Yes, I agree. The hard part is in removing all of those loops over the "dist" dimension throughout all the mid-level functions.

from vic.

tbohn avatar tbohn commented on July 1, 2024

In making this change, one thing I could potentially do is rename the "dist_prcp" structure to something that doesn't reference the DIST_PREC feature. Ideally, I would think something like "cell" would be most appropriate (and renaming the current "cell" structure to "soil"), since the dist_prcp structure is the top-level container for all states/fluxes of a given cell. However, this would require making tons of changes throughout the code - with opportunities for errors along the way.

Perhaps I should rename it to something else, like "column", or just not rename it at all. Any suggestions?

from vic.

bartnijssen avatar bartnijssen commented on July 1, 2024

Maybe a first step would be a little graphic that shows the dependencies between the different data structures. That will probably quickly point us to the right way of getting rid of DIST_PREC (or renaming it).

I agree that renaming it to the name of an existing structure maybe asking for errors. What does the original CELL structure refer to (this should be easy to see from the diagram).

from vic.

tbohn avatar tbohn commented on July 1, 2024

Just an update on my progress. I've removed the dist_prec() function, moving the calls to full_energy(), put_data(), and write_model_state() into main(). I've removed all variables related to the DIST_PRCP option.

I'm in the process of renaming the "dist_prcp" structure to "all_data", since it contains all other data structures (except for atmos) that describe the states/fluxes of the cell control volume.

The final step will be to remove all loops over "dist" and reduce the dimensions of cell_data and veg_var from 3 to 2.

from vic.

jhamman avatar jhamman commented on July 1, 2024

I'm reopening this since I'm seeing a few relic dist_precip references. For example:

  • src/free_dist_prcp.c (in develop and dev_5.0 branches)
  • src/make_dist_prcp.c (in dev_5.0 branch).

These were likely merge issues on my part but they should be cleaned up before we close this issue.

from vic.

jhamman avatar jhamman commented on July 1, 2024

I just noticed that initialize_new_storm.c is still there too...

from vic.

tbohn avatar tbohn commented on July 1, 2024

Hi guys, are you waiting on me to fix this (it's assigned to me)? Perhaps it would be more appropriate to reassign to Bart, since he did the port from 4.2? Or, am I missing something?

from vic.

bartnijssen avatar bartnijssen commented on July 1, 2024

Not entirely clear to me either. I am pretty sure it's all gone from the version I am working on (though need to check). I'd assign it to Joe for the time being since he alludes to a merge error.

On Sep 24, 2014, at 7:19 PM, Ted Bohn [email protected] wrote:

Hi guys, are you waiting on me to fix this (it's assigned to me)? Perhaps it would be more appropriate to reassign to Bart, since he did the port from 4.2? Or, am I missing something?


Reply to this email directly or view it on GitHub.

from vic.

Related Issues (20)

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.