# Revision history [back]

### How to correct them errors ?

Hi ! I've to type a code for a math project with SageMath but I don't know really how it works because I don't learnt to use it. So I already typed this (with the help of another people) and it returns them errors :/ Sorry for the indentation but on this website it's hard to put properly the code.

Code

# ----------

@interact def interactive_function(nu = slider(0.01, 0.1, 0.005, default=0.03125), d = slider(0, 1, 0.05, default=1), B = slider(500, 30000, 250, default=13333), v = slider(0, 1, 0.05, default=0.2), c = slider(0, 50, 1, default=4), p = slider(0, 1, 0.05, default=0.3), beta = slider(0, 1, 0.002, default=0.014),):

def f_1(t,y,params) :
return [ -params[2]-params[0]*y[0]-y[4]*params[4]*y[0] , y[4]*params[4]*y[0]-(params[3]+params[0])*y[1], (1-params[5])*params[3]*y[1]-params[0]*y[2], params[5]*params[3]*y[1]-(params[1]+params[0])*y[3], (params[6]*y[1])/(y[0]+y[1]+y[2]) ]

T = ode_solver()
T.function = f_1
T.algorithm="rk8pd"
T.ode_solve( y_0=[lmd,0,1-lmd,0] , t_span=[0,150] , params=[nu,d,B,v,c,p,beta] , num_points=1000)

f = T.solution
X = [(x[0],x[1][0]) for x in f]
Y = [(x[0],x[1][1]) for x in f]
Z = [(x[0],x[1][2]) for x in f]
A = [(x[0],x[1][3]) for x in f]
lmd = [(x[0],x[1][4]) for x in f]

P1 = line(X, rgbcolor='green')
P2 = line(Y, rgbcolor='pink')
P3 = line(Z, rgbcolor='red')
P4 = line(A, rgbcolor='brown')
P5 = line(lmd, rgbcolor='green')
show(P1+P2+P3+P4+P5)


Errors

## Interact state: {'c': 4, 'B': 51, 'd': 20, 'p': 6, 'beta': 7, 'v': 4, 'nu': 4}

UnboundLocalError Traceback (most recent call last) <ipython-input-1-9ebe0a9051da> in <module>() 20 c = slider(Integer(0), Integer(50), Integer(1), default=Integer(4)), 21 p = slider(Integer(0), Integer(1), RealNumber('0.05'), default=RealNumber('0.3')), ---> 22 beta = slider(Integer(0), Integer(1), RealNumber('0.002'), default=RealNumber('0.014')),): 23 24 def f_1(t,y,params) :

/home/sc_serv/sagecell/misc.pyc in my_wrap(args, *kwargs) 153 if len(kwargs)==0 and len(args)==1 and callable(func): 154 # call without parentheses --> 155 return func(*args) 156 else: 157 def _(f):

/home/sc_serv/sagecell/interact_sagecell.py in interact(f, controls, update, layout, locations, output, readonly, automatic_labels) 433 proxy = InteractProxy(interact_id, f) 434 __interacts[interact_id]["proxy"] = proxy --> 435 update_interact(interact_id) 436 return proxy 437

/home/sc_serv/sagecell/interact_sagecell.py in update_interact(interact_id, name, value, do_update) 105 if do_update and (name is None or controls[name].update): 106 kwargs = {n: c.adapter(c.value) for n, c in controls.iteritems()} --> 107 interact_info"function" 108 for c in controls.itervalues(): 109 c.reset()

/home/sc_serv/sagecell/interact_sagecell.py in adapted_f(control_vals) 418 sys._sage_.clear(__interacts[interact_id]["proxy"]._changed) 419 try: --> 420 returned = f(args, *control_vals) 421 except: 422 print "Interact state: %r" % (__interacts[interact_id]["proxy"]._state())

<ipython-input-1-9ebe0a9051da> in interactive_function(nu, d, B, v, c, p, beta) 28 T.function = f_1 29 T.algorithm="rk8pd" ---> 30 T.ode_solve( y_0=[lmd,Integer(0),Integer(1)-lmd,Integer(0)] , t_span=[Integer(0),Integer(150)] , params=[nu,d,B,v,c,p,beta] , num_points=Integer(1000)) 31 32

UnboundLocalError: local variable 'lmd' referenced before assignment

 2 None slelievre 17654 ●22 ●160 ●348 http://carva.org/samue...

### How to correct them errors ?

Hi ! I've to type a code for a math project with SageMath but I don't know really how it works because I don't learnt to use it. So I already typed this (with the help of another people) and it returns them errors :/ Sorry for the indentation but on this website it's hard to put properly the code.

Code

# # y[0] = X : – B - nuX - (lmd)cX

 (lmd)cX # y[1] = Y : (lmd)cX - (v + nu)Y nu)Y # y[2] = Z : (1 - p)vY - nuZ nuZ # y[3] = A : pvY - (d + nu)A nu)A # y[4] = lmd : ((beta)Y / (X + Y + Z)) Z)) # params[0] = nu : natural death rate == 0.03125 0.03125 # params[1] = d : AIDS death rates == 1 1 # params[2] = B : immigration rate people likely == 13333.3 13333.3 # params[3] = v : conversion rate HIV-> AIDS == 0.2 0.2 # params[4] = c : number of sexual partners == 4 4 # params[5] = p : infectious HIV-positive proportion == 0.3 0.3 # params[6] = beta : transmission probability == 0.014 0.014 # t : temps ---------- temps # ---------- @interact def interactive_function(nu = slider(0.01, 0.1, 0.005, default=0.03125), d = slider(0, 1, 0.05, default=1), B = slider(500, 30000, 250, default=13333), v = slider(0, 1, 0.05, default=0.2), c = slider(0, 50, 1, default=4), p = slider(0, 1, 0.05, default=0.3), beta = slider(0, 1, 0.002, default=0.014),): default=0.014),): def f_1(t,y,params) : return [ -params[2]-params[0]*y[0]-y[4]*params[4]*y[0] , y[4]*params[4]*y[0]-(params[3]+params[0])*y[1], (1-params[5])*params[3]*y[1]-params[0]*y[2], params[5]*params[3]*y[1]-(params[1]+params[0])*y[3], (params[6]*y[1])/(y[0]+y[1]+y[2]) ] T = ode_solver() T.function = f_1 T.algorithm="rk8pd" T.ode_solve( y_0=[lmd,0,1-lmd,0] , t_span=[0,150] , params=[nu,d,B,v,c,p,beta] , num_points=1000) f = T.solution X = [(x[0],x[1][0]) for x in f] Y = [(x[0],x[1][1]) for x in f] Z = [(x[0],x[1][2]) for x in f] A = [(x[0],x[1][3]) for x in f] lmd = [(x[0],x[1][4]) for x in f] P1 = line(X, rgbcolor='green') P2 = line(Y, rgbcolor='pink') P3 = line(Z, rgbcolor='red') P4 = line(A, rgbcolor='brown') P5 = line(lmd, rgbcolor='green') show(P1+P2+P3+P4+P5) Errors Interact state: {'c': 4, 'B': 51, 'd': 20, 'p': 6, 'beta': 7, 'v': 4, 'nu': 4} 4} --------------------------------------------------------------------------- UnboundLocalError Traceback (most recent call last) <ipython-input-1-9ebe0a9051da> in <module>() 20 c = slider(Integer(0), Integer(50), Integer(1), default=Integer(4)), 21 p = slider(Integer(0), Integer(1), RealNumber('0.05'), default=RealNumber('0.3')), ---> 22 beta = slider(Integer(0), Integer(1), RealNumber('0.002'), default=RealNumber('0.014')),): 23 24 def f_1(t,y,params) : : /home/sc_serv/sagecell/misc.pyc in my_wrap(args, *kwargs) my_wrap(*args, **kwargs) 153 if len(kwargs)==0 and len(args)==1 and callable(func): 154 # call without parentheses --> 155 return func(*args) 156 else: 157 def _(f): _(f): /home/sc_serv/sagecell/interact_sagecell.py in interact(f, controls, update, layout, locations, output, readonly, automatic_labels) 433 proxy = InteractProxy(interact_id, f) 434 __interacts[interact_id]["proxy"] = proxy --> 435 update_interact(interact_id) 436 return proxy 437 /home/sc_serv/sagecell/interact_sagecell.py in update_interact(interact_id, name, value, do_update) 105 if do_update and (name is None or controls[name].update): 106 kwargs = {n: c.adapter(c.value) for n, c in controls.iteritems()} --> 107 interact_info"function" interact_info["function"](control_vals=kwargs) 108 for c in controls.itervalues(): 109 c.reset() c.reset() /home/sc_serv/sagecell/interact_sagecell.py in adapted_f(control_vals) 418 sys._sage_.clear(__interacts[interact_id]["proxy"]._changed) 419 try: --> 420 returned = f(args, *control_vals) f(*args, **control_vals) 421 except: 422 print "Interact state: %r" % (__interacts[interact_id]["proxy"]._state()) (__interacts[interact_id]["proxy"]._state()) <ipython-input-1-9ebe0a9051da> in interactive_function(nu, d, B, v, c, p, beta) 28 T.function = f_1 29 T.algorithm="rk8pd" ---> 30 T.ode_solve( y_0=[lmd,Integer(0),Integer(1)-lmd,Integer(0)] , t_span=[Integer(0),Integer(150)] , params=[nu,d,B,v,c,p,beta] , num_points=Integer(1000)) 31 32 UnboundLocalError: local variable 'lmd' referenced before assignmentassignment 





 Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license. about | faq | help | privacy policy | terms of service Powered by Askbot version 0.7.59 Please note: Askbot requires javascript to work properly, please enable javascript in your browser, here is how //IE fix to hide the red margin var noscript = document.getElementsByTagName('noscript')[0]; noscript.style.padding = '0px'; noscript.style.backgroundColor = 'transparent'; askbot['urls']['mark_read_message'] = '/s/messages/markread/'; askbot['urls']['get_tags_by_wildcard'] = '/s/get-tags-by-wildcard/'; askbot['urls']['get_tag_list'] = '/s/get-tag-list/'; askbot['urls']['follow_user'] = '/followit/follow/user/{{userId}}/'; askbot['urls']['unfollow_user'] = '/followit/unfollow/user/{{userId}}/'; askbot['urls']['user_signin'] = '/account/signin/'; askbot['urls']['getEditor'] = '/s/get-editor/'; askbot['urls']['apiGetQuestions'] = '/s/api/get_questions/'; askbot['urls']['ask'] = '/questions/ask/'; askbot['urls']['questions'] = '/questions/'; askbot['settings']['groupsEnabled'] = false; askbot['settings']['static_url'] = '/m/'; askbot['settings']['minSearchWordLength'] = 4; askbot['settings']['mathjaxEnabled'] = true; askbot['settings']['sharingSuffixText'] = ''; askbot['settings']['errorPlacement'] = 'after-label'; askbot['data']['maxCommentLength'] = 800; askbot['settings']['editorType'] = 'markdown'; askbot['settings']['commentsEditorType'] = 'rich\u002Dtext'; askbot['messages']['askYourQuestion'] = 'Ask Your Question'; askbot['messages']['acceptOwnAnswer'] = 'accept or unaccept your own answer'; askbot['messages']['followQuestions'] = 'follow questions'; askbot['settings']['allowedUploadFileTypes'] = [ "jpg", "jpeg", "gif", "bmp", "png", "tiff" ]; askbot['data']['haveFlashNotifications'] = true; askbot['data']['activeTab'] = 'questions'; askbot['settings']['csrfCookieName'] = 'asksage_csrf'; askbot['data']['searchUrl'] = ''; /*<![CDATA[*/ $('.mceStatusbar').remove();//a hack to remove the tinyMCE status bar$(document).ready(function(){ // focus input on the search bar endcomment var activeTab = askbot['data']['activeTab']; if (inArray(activeTab, ['users', 'questions', 'tags', 'badges'])) { var searchInput = $('#keywords'); } else if (activeTab === 'ask') { var searchInput =$('#id_title'); } else { var searchInput = undefined; animateHashes(); } var wasScrolled = $('#scroll-mem').val(); if (searchInput && !wasScrolled) { searchInput.focus(); putCursorAtEnd(searchInput); } var haveFullTextSearchTab = inArray(activeTab, ['questions', 'badges', 'ask']); var haveUserProfilePage =$('body').hasClass('user-profile-page'); if ((haveUserProfilePage || haveFullTextSearchTab) && searchInput && searchInput.length) { var search = new FullTextSearch(); askbot['controllers'] = askbot['controllers'] || {}; askbot['controllers']['fullTextSearch'] = search; search.setSearchUrl(askbot['data']['searchUrl']); if (activeTab === 'ask') { search.setAskButtonEnabled(false); } search.decorate(searchInput); } else if (activeTab === 'tags') { var search = new TagSearch(); search.decorate(searchInput); } if (askbot['data']['userIsAdminOrMod']) { $('body').addClass('admin'); } if (askbot['settings']['groupsEnabled']) { askbot['urls']['add_group'] = "/s/add-group/"; var group_dropdown = new GroupDropdown();$('.groups-dropdown').append(group_dropdown.getElement()); } var userRep = $('#userToolsNav .reputation'); if (userRep.length) { var showPermsTrigger = new ShowPermsTrigger(); showPermsTrigger.decorate(userRep); } }); if (askbot['data']['haveFlashNotifications']) {$('#validate_email_alert').click(function(){notify.close(true)}) notify.show(); } var langNav = $('.lang-nav'); if (langNav.length) { var nav = new LangNav(); nav.decorate(langNav); } /*]]>*/ if (typeof MathJax != 'undefined') { MathJax.Hub.Config({ extensions: ["tex2jax.js"], jax: ["input/TeX","output/HTML-CSS"], tex2jax: {inlineMath: [["$","$"],["\$","\$"]]} }); } else { console.log('Could not load MathJax'); } //todo - take this out into .js file$(document).ready(function(){ $('div.revision div[id^=rev-header-]').bind('click', function(){ var revId = this.id.substr(11); toggleRev(revId); }); lanai.highlightSyntax(); }); function toggleRev(id) { var arrow =$("#rev-arrow-" + id); var visible = arrow.attr("src").indexOf("hide") > -1; if (visible) { var image_path = '/m/default/media/images/expander-arrow-show.gif?v=19'; } else { var image_path = '/m/default/media/images/expander-arrow-hide.gif?v=19'; } image_path = image_path + "?v=19"; arrow.attr("src", image_path); \$("#rev-body-" + id).slideToggle("fast"); } for (url_name in askbot['urls']){ askbot['urls'][url_name] = cleanUrl(askbot['urls'][url_name]); }