Git Product home page Git Product logo

Comments (4)

DonCammne avatar DonCammne commented on June 16, 2024 1

Using a simple example, I don't get any error (just some rendering problems with si.mm):

Cell 1:

from handcalcs.decorator import handcalc
import handcalcs.render
import forallpeople as si
si.environment('structural', top_level=False)


@handcalc(jupyter_display=True)
def computeExample(a, b):
    if a <= 24*si.mm: c = 2*a
    elif a > 24*si.mm: c = a
    
    d = c * b**2
    return d

Cell 2:

%%render params 2

a = 10*si.mm
b = 1*si.m

Cell 3:

d = computeExample(a, b)

If you have an example that gives an error, please share it with us.

from handcalcs.

Eastney avatar Eastney commented on June 16, 2024

I get the same error when trying conditionals. The most stable i can get is this:

@handcalc(override=str("symbolic"), precision= int(3), left= str("$"), right= str("$"), jupyter_display= True)
def flange_rigidity(flange_type,V,M_o,L,E,g_0,K_I,h_0):
J = (52.14 * V * M_o) / (L * E * (g_0**2) * K_I * h_0)
if J <= 1:
print("Rigidity Criterion is acceptable: J <= 1.0") # per definition, 2-3 Notation
elif J >= 1:
print("Rigidity Criterion is insufficient: J > 1.0") # per definition, 2-3 Notation
return J

It prints the response to the conditional before the latex, which spoils the appearance.
the bit that erks is that i had to switch to decorators to use logs. With %%render the logs don't work.

I must add that, it seems to be the text that causes the problem, because the following works just as expected, latex and all:

@handcalc(override=str("symbolic"), precision= int(3), left= str("$"), right= str("$"), jupyter_display= True)
def factor_f(C_36,A):
f = C_36/(1+A) # Factor f, factor for hub stress
if f <= 1:
return 1 # per definition, 2-3 Notation
elif f >= 1:
return f # per definition, 2-3 Notation

from handcalcs.

Eastney avatar Eastney commented on June 16, 2024

to get the unstable version of the above, sorry for not including the first time, try this:

@handcalc(override=str("symbolic"), precision= int(3), left= str("$"), right= str("$"), jupyter_display= True)
def flange_rigidity(flange_type,V,M_o,L,E,g_0,K_I,h_0):
J = (52.14 * V * M_o) / (L * E * (g_0**2) * K_I * h_0)
if J <= 1: #
print("Rigidity Criterion is acceptable: J <= 1.0") # per definition, 2-3 Notation
elif J >= 1:
print("Rigidity Criterion is insufficient: J <= 1.0") # per definition, 2-3 Notation
return J

from handcalcs.

Eastney avatar Eastney commented on June 16, 2024

okay, i apparently need to go back to school.... The following does work, not quite how i was thinking, but it works, the display is a bit erratic, but (again) it works.

@handcalc(override=str("symbolic"), precision= int(3), left= str("$"), right= str("$"), jupyter_display= True)
def factor_f(C_36,A):
f = C_36/(1+A) # Factor f, factor for hub stress
if f <= 1:
f <= 1 #"calculated f is not acceptable"), per 2-3 Notation
return f #
elif f >= 1:
f > 1 #"f is acceptable"), per 2-3 Notation
return f

p.s. love handcalcs, am wanting to use it more, mostly as a shortcut around Excel. I cannot escape IT, but i can short cut it...

from handcalcs.

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.