Skip to content
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

Simput as a case manager #43

Open
robertsawko opened this issue Jul 26, 2018 · 14 comments
Open

Simput as a case manager #43

robertsawko opened this issue Jul 26, 2018 · 14 comments

Comments

@robertsawko
Copy link

Hi,

I am trying to set up simput as a case manager. I just went through a simple vcard tutorial and the OpenFOAM ones and I am now adapting it for my own purposes.

With the vcard tutorial I noticed that deleting the entries in the "Address book" does not delete the corresponding .vcf files nor even the entries in the json file. Is that something I need to script myself? Is there a ready example for it?

Basically, I'd like to have a simple Web UI for a collection of templated OpenFOAM cases rather than for a single case.

@jourdain
Copy link
Collaborator

This is great!

For the vcard, the model/json file should update and should not have that entry in it after you save the model. Reloading the web page won't do it as it cached the initial model that it loaded. A full restart should show that the entry was properly removed.

Regarding the vcf file, the trick is that Simput does not remove files. So basically it will just override anything that it is aware of. But removing all vcf before writing them will do the trick.

Regarding what you are trying to do depending on how far apart your cases are, you can either create different types, or you could have a main drop down which let you choose your target case which will then hide/show the set of the UI components that are required for that specific case.

Anyhow if you are willing to share your code/work, I might be able to help. And if that make sense, we can integrate those use case in the main repo.

@robertsawko
Copy link
Author

robertsawko commented Jul 26, 2018

Thanks for a quick reply. I am happy to help develop a different template. Maybe as an example we could focus on cavity case with different Reynolds numbers, mesh sizes and a small set of other options. Would that be interesting enough for a generic template? My specific one wouldn't be too interesting, I think, but I could easily build one from the other.

@jourdain
Copy link
Collaborator

Yes that would be great.

@robertsawko
Copy link
Author

@jourdain I think I've pretty much developed the basic functionality I needed. For the sake of example I created a periodic channel simulation and I am exposing to the user only the Reynolds number and the cell number to show I can modify different files. I would like to submit it as a separate module and we can maybe improve on it a bit.

@jourdain
Copy link
Collaborator

jourdain commented Aug 7, 2018

That will be great!

We handle Simput/types via Git/Submodule. So the main repo just link the type which could be hosted somewhere else or just as a different branch on the same repo.

Let me know which way you want to handle it and I can help. If I can get access to your code, I can push it to Simput proper while keeping your authorship...

Just FYI, we are working on a new UI which should make the app more appealing while keeping the same model/type definition...

@robertsawko
Copy link
Author

robertsawko commented Aug 8, 2018

I am struggling to run the submodule commands. I get slightly stuck on the push as I don't have write access to your repo. If I try to submit a PR then I need to use pre-existing branches so I think it defeates the objective. Can you think of anything?

Also, shouldn't I add new files to git tracking with git add?

I created a fork and you should see my code on the branch type-openfoam-periodic. I couldn't come up with a better name as yet. It's essentially a case manager for specific computational experiment.

@jourdain
Copy link
Collaborator

jourdain commented Aug 8, 2018

This is perfect, I'll add it to our repo... Thanks!

@jourdain
Copy link
Collaborator

jourdain commented Aug 8, 2018

I see what you've done, you've blended the two history... Because of that I won't be able to use your history but will create a new one with you as author... It will take a bit longer but it will be fine.

Thanks again!

@robertsawko
Copy link
Author

Hmmm... sorry, I must have misunderstood something about the submodules then. I will delete my repo and try to redo it. So I am expecting to have completely new repo within the bigger one with different history.

That's a good reason for you not to let people write into main repository. ;-)

@jourdain
Copy link
Collaborator

jourdain commented Aug 9, 2018

Don't worry about it, I've added your contribution to the main repo here: https://github.com/Kitware/simput/tree/type-openfoam-periodic

And you can find it linked to the main code base here:
https://github.com/Kitware/simput/tree/master/types

@robertsawko
Copy link
Author

Ok. Thanks. That looks excellent. This is not everything I wanted to have in this example. I want to have "general settings" and a drop down menu for turbulence model + wall model in case specific view.

Also, if I am thinking of integrating this with HPCCloud project should I have batch scheduler options here or will they be external?

@jourdain
Copy link
Collaborator

HPCCloud would handle the job scheduling part. For Simput we aim to add template filling as well.

@robertsawko
Copy link
Author

Ok. I am about to close this "issue" but I want to have a few more questions. So I will expand this example a little bit to make it look like a useful tool to study different turbuelcne models...

I clone the simput repo and the checokut type-openfoam-periodic, commit and then push this branch only to my fork. Is that how it's meant to work?

@jourdain
Copy link
Collaborator

yes, and I'll figure out how to update that same branch on the main repo

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants