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

investigate units of items named qd* in PDController #2395

Open
JacquesCarette opened this issue May 8, 2021 · 9 comments
Open

investigate units of items named qd* in PDController #2395

JacquesCarette opened this issue May 8, 2021 · 9 comments
Labels
needs-action-items A clear 'path to resolution' is needed to close any ticket. newcomers Good first issue to work on!

Comments

@JacquesCarette
Copy link
Owner

For example qdLaplaceTransform has type Real, which is incorrect. What it should be is less clear! (Real -> Real) -> (Real -> Real) perhaps? qdFxnTDomain is also suspicious. All of them should be investigated.

Note that it is best if each change/fix becomes its own PR, instead of trying to fix them all at once. That way to good fixes can go in right away, and the fixes that need discussion won't hold that up.

@Awurama-N
Copy link
Contributor

Awurama-N commented May 18, 2021

Cases were real is sufficient

  • Process Variable
  • Set Point
  • Control variable
  • negative infinity
  • positive infinity
  • damping coefficient
  • stiffness coefficient

Cases were real is insufficient

  • Proportional control
  • Derivative Control
  • Transfer Function
  • Laplace transform
  • complex frequency domain parameter
  • function in the time domain
  • inverse Laplace transform

Resources

  • Wikipedia
  • Science direct
  • OECD glossary of statistical terms
  • LearnEMC
  • khan academy

@JacquesCarette @smiths

@JacquesCarette
Copy link
Owner Author

For the future:

  • if you use - in the first column in markdown text, it shows as bullets
  • the words 'sufficient' and 'insufficient' are both long and thus hard to tell apart at a glance. Much better for communicating this information would have been 2 lists, one where you think the type is good, and one with not. Can you edit your comment thus please?
  • there are also ways of doing tables in markdown, if you want to get fancier.
  • your 'call' as to whether the type is good/bad is likely based on some resource (book, Wikipedia, etc); you should list what resources you used to come to your conclusions.

@Awurama-N
Copy link
Contributor

I have made the changes. For the resources would you like specific links? or this is good?

@JacquesCarette
Copy link
Owner Author

In the future, specific links. For this time, let's not bother.

@Awurama-N
Copy link
Contributor

@JacquesCarette would you like me to do something further with this issue?
for example editing the qd* units that Real was not sufficient for.
And if so could you please direct me to a resource that could help me further understand the use of Real so I could make the edits correctly?
Thank you.
@smiths

@JacquesCarette
Copy link
Owner Author

Try changing just Laplace transform first (I already gave you the signature), and let's see what happens.

@Awurama-N
Copy link
Contributor

@JacquesCarette
I initially thought it would be changed this way:

qdLaplaceTransform
  = vc "qLaplaceTransform"
      (nounPhraseSent (S "Laplace Transform of a function"))
      symFS
      (Real -> Real) -> (Real -> Real)

But after more thought i'm thinking i would have to create something representing (Real -> Real) -> (Real -> Real)
Is that right?
I'm not sure but something like

data __ _ _ where
  R__ :: (Real -> Real) -> (Real -> Real)

and then it would be

qdLaplaceTransform
  = vc "qLaplaceTransform"
      (nounPhraseSent (S "Laplace Transform of a function"))
      symFS
      R__

?

@JacquesCarette
Copy link
Owner Author

Language.Drasil (and ultimately Language.Drasil.Space defines the kinds of spaces we can represent. So it turns out, we currently have no function spaces at all! So, right now, this is impossible to fix, until that's done.

Hmm, let's not do that now, because changing Space is going to interfere with @balacij 's work on Expr. So we'll have to come back to this "later". But could you open an issue to have Space also be able to represent function spaces?

@Awurama-N
Copy link
Contributor

Okay I'll do that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs-action-items A clear 'path to resolution' is needed to close any ticket. newcomers Good first issue to work on!
Projects
None yet
Development

No branches or pull requests

3 participants