autotwin / mesh

Mesh data types
MIT License
1 stars 2 forks source link

CL assistance #7

Closed hovey closed 2 years ago

hovey commented 2 years ago

10 hr/week, target 15-20 hr/ week max.

hovey commented 2 years ago

Applications:

GitHub specific:

calehma commented 2 years ago
  • [x] Install Cubit version 16.06.
  • [x] Install Python 3.7.x where x can be any minor version.
  • [x] Start a notes.txt document that records the full install path for Cubit and full install path for Python.
  • [x] Review 2022-08-23-Getting-Started.pdf file.
  • [x] Create a GitHub account (if you don't already have one, as you will need to do pull requests for this autotwin/mesh repo).

Next:

  • [x] Local: cd ~/autotwin/
  • [x] fork this repo https://github.com/autotwin/mesh
  • [x] then git clone your forked version into the ~/autotwin/ folder
  • [x] create a virtual environment atmeshenv following these instructions https://github.com/autotwin/mesh/blob/main/config/README.md
  • [x] verify .quality and .style shell scripts run to completion

Quoting to track the status

calehma commented 2 years ago

Tasks are completed as of 8/24/22 9:50a MT

hovey commented 2 years ago

You are awesome! I will contact you soon.

hovey commented 2 years ago

You can hard code six different distributions between zero and one using numpy. This effort will be a template for how we do a study later.

The study later will investigate minimum scaled Jacobian distributions as a function of study number. Each successive study will try to make the distribution push closer toward unity (away from zero), and have a tighter band on the spread of the distribution.

It doesn't matter so much what the exemplar hard code distributions are, as long as you can

calehma commented 2 years ago

Update has been pushed. I ordered the boxes based on increasing median values, so the xlabel case numbers appear wonky. I can change that back, if needed.

hovey commented 2 years ago

Having the xlabel order as you have it is just fine. The critical step here you achieved, which was to make a small example of a box plot, so we can use it in the larger algorithms later.

hovey commented 2 years ago

I am guessing you already know markdown, but just in case, this guide may be helpful: This markdown guide may be helpful to you: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet

calehma commented 2 years ago

Having the xlabel order as you have it is just fine. The critical step here you achieved, which was to make a small example of a box plot, so we can use it in the larger algorithms later.

The meeting yesterday helped clear up questions I had regarding this. If your hypothesis is correct, then the xlabel should be in ascending order, assuming we label the box plots along the x-axis using something like cell count (or cell count/volume, I'm not entirely sure the metric used is since FEA is outside my wheelhouse). It might be a little bit extra, but it could be a useful tool to double-check the data.

hovey commented 2 years ago

fyi, i am updating sensitivity.py so it loops over n input files. more to come later...

hovey commented 2 years ago

Can you please try to tackle this one next? I think it is in your wheelhouse.

n_studies = 6  # define once-and-for-all, avoid magic numbers later

Just a minor style point that allows code to become D.R.Y. (don't repeat yourself), and allow the code to be array-reflective --- that is if the array size changes, all other downstream code automatically changes (no need to update magic numbers appearing downstream in the code).

hovey commented 2 years ago

Next, and can you tackle this one:

calehma commented 2 years ago

Can you please try to tackle this one next? I think it is in your wheelhouse.

n_studies = 6  # define once-and-for-all, avoid magic numbers later

Just a minor style point that allows code to become D.R.Y. (don't repeat yourself), and allow the code to be array-reflective --- that is if the array size changes, all other downstream code automatically changes (no need to update magic numbers appearing downstream in the code).

Oh duh, yea that was some bad practice on my part (we spent the last few years telling our students not to do that and here I am doing that haha). Also quoting so I can click off the checkbox.

calehma commented 2 years ago

Next, and can you tackle this one:

Quoting so I can check off the box as I go.

hovey commented 2 years ago

To let you know, it looks like I got bounding_box and cell intervals implemented in .yml input file, so soon we can launch another automated study. So, more work coming in the pipe! FYI.

calehma commented 2 years ago

Just wanted to bump the thread. I submitted a merge request from my fork a couple weeks back. Is there anything else you want me working on at the moment?

hovey commented 2 years ago

Thanks for the PR. I am at a conference this week and will try to get the PR merged. No other near-term actions until I after a bit the merge. Thanks also for bumping the thread, email alerted me to the same. Cheers.

On Sep 13, 2022, at 11:14, calehma @.***> wrote:

 Just wanted to bump the thread. I submitted a merge request from my fork a couple weeks back. Is there anything else you want me working on at the moment?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.

calehma commented 2 years ago

Sounds good to me. I hope the conference goes well!

hovey commented 2 years ago

Started to refactor this weekend. Do you mind sending me a Teams invite on my calendar for a day/time that suits you this coming work week (if at all, since you might be too busy, which is fine too).

hovey commented 2 years ago

I moved most of the IO user configuration into .yml files (see https://github.com/autotwin/mesh/blob/main/doc/sphere_mesh_refinement.md#create-inp-files) and have flattened and separated out the concerns from the sensitivity.py script. So now there are independent scripts that do file IO as follows:

Next, the individual .csv files can be used with the histogram plotting, and I will take that up next week. This too can use a .yml input file to control things like plot color, line width, etc.

The benefit of the .yml approach is that we separate configuration from methodology. Then, one methodology can operate on $n$ number of configuration states. Also, then our methods do not have hard-coding to configuration.

This note is just FYI to explain some of the rationale behind the updates.