-
Notifications
You must be signed in to change notification settings - Fork 26
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
SSP: fixing scalar vector mismatch #2156
Comments
- contains all changed files related to updating the Shear Strength Symbol from tau to tau^f for SSP - i.e. Unitals.hs, SSP_SRS.tex, SSP_SRS.html - to address Issue #2156 Item 1
@smiths and @JacquesCarette, am I ok to change the variable names (e.g. totStress -> totNormStress or normStress) for the 3rd item of this issue? Or should I save that for the 4th item? |
@Nathaniel-Hu, I'm not sure what change you are referring to. Probably best to stick to only making the changes in step 3. If you have another change to propose, we should discuss it here. |
@smiths, sorry, what I said was a bit confusing. This is what we have currently for normStress: --DD10
stressDD :: DataDefinition
stressDD = dd stressQD [makeCite huston2008] Nothing "normStress" []
stressQD :: QDefinition
stressQD = mkQuantDef totStress stressEqn
stressEqn :: Expr
stressEqn = sy fn / sy genericA where totStress = uc' "sigma" (cn' "total normal stress")
"the total force per area acting on the soil mass" lSigma pascal
fn = uc' "F_n" (cn "total normal force") "component of a force in the normal direction"
(sub cF (Label "n")) newton For Item 3., I am to introduce a new data definition DD:tangStress that is mostly the same as normStress albeit with some changes. To do that, is it ok if I do something like the following: --DD10
normStressDD :: DataDefinition
normStressDD = dd normStressQD [makeCite huston2008] Nothing "normStress" []
normStressQD :: QDefinition
normStressQD = mkQuantDef normStress normStressEqn
normStressEqn :: Expr
normStressEqn = sy fn / sy genericA
--DD11
tangStressDD :: DataDefinition
tangStressDD = dd tangStressQD [makeCite huston2008] Nothing "tangStress" []
tangStressGD :: QDefinition
tangStressQD = mkQuantDef tangStress tangStressEqn
tangStressEqn :: Expr
tangStressEqn = sy ft / sy genericA where normStress = uc' "sigma" (cn' "total normal stress")
"the total force per area acting on the soil mass" lSigma pascal
fn = uc' "F_n" (cn "total normal force") "component of a force in the normal direction"
(sub cF (Label "n")) newton
tangStress = uc' "sigma" (cn' "tangential stress")
"the total force per area acting on the soil mass" lSigma pascal
ft = uc' "F_t" (cn "tangential force") "component of a force in the tangential direction"
(sub cF (Label "t")) newton I'm just somewhat uncertain as to how I should implement the new data definition for tangStress at the moment. |
Okay @Nathaniel-Hu, I understand now. I hadn't read carefully enough your early PR; I thought you had already renamed Yes, you can do what you describe. As far as tangStress goes, you should do everything with it that is currently done with Yes, it makes sense to rename to `normStressDD' in this step. In fact, you should do this first, so that you see if there are any unintended consequences of the change. |
Ok then. thanks for the quick response! |
@smiths, I renamed stressDD to normStressDD, and I also updated all references to stressDD to normStressDD. I needed to edit DataDefs.hs, GenDefs.hs and TMods.hs in SSP, and the changes passed the stability tests. These changes may be related to Item 4. I will do a commit now to document these changes, and then do a later commit to add in the implementation of tangStressDD. |
Sounds good @Nathaniel-Hu. |
@smiths, pending the merger of PR #2160, I've begun looking into how to implement the following change:
In our discussions, @bmaclach mentioned that the references in RefBy of the DD are generated automatically based upon its use in defining GDs, TMs, IMs, etc. (see below picture for example). The reference the GD:resShr in RefBy was made automatically by effecting the following sample change: Given these circumstances, @smiths how should I incorporate DD:tangStress into GD:resShr to get this RefBy reference to GD:resShr in DD:tangStress? |
@Nathaniel-Hu, I'm not sure of your question. It looks like you have already accomplished what I would like to see. You are correct that |
@smiths, what I showed was just a sample implementation. I wasn't sure how you wanted me to implement Item 4 (or that this was how you wanted me to implement it). If this is the correct implementation, then I will save my current changes to either a new branch off of master (pending the merge of PR #2160) or as a new branch off of branch Issue#2156_III. |
#2160 is now merged. |
Thank you. |
@Nathaniel-Hu, your sample implementation looks good. Please create a pull request around that. I believe that once that PR is merged, we will be able to close this issue. 😄 |
The discussion from #1115 motivates improving SSP by removing the scalar vector mismatch in the current definition of stress. Removing the mismatch requires the following changes:
Change the current symbol tau (not bold) to tau^f. That is the symbol corresponding to "Shear Strength: The strength of a material against shear failure" should be changed from tau to tau^f. This is the shear at failure, or shear strength.
Change DD:stress as follows:
Introduce a new data definition DD:tangStress, mostly the same as DD:normStress, except:
GD:resShr currently references DD:stress, this should be changed to referencing DD:normStress and DD:tangStress.
@Nathaniel-Hu, I'm optimistic that these changes will be straightforward. If you get stuck, I'm sure that @bmaclach can help us. 😄 Please do the items above in order, with a separate PR for each. The more systematic we are, the more likely we'll notice a problem sooner, and we'll be able to back out our changes, if necessary. Please reference this issue in your PR.
The text was updated successfully, but these errors were encountered: