VPython Functions: Difference between revisions

From Physics Book
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
Created by Natalie Standish
Written by Kevin Randrup
Traded to Kevin Randrup


Introduction to functions in Python and applying them to write shorter and more understandable code.
Introduction to functions in Python and applying them to write shorter and more understandable code.


==The Main Idea==
==Summary==
 
The main idea of this page is to serve as an aid for future physics students in writing python code during lab. Python, especially for students who are not very experienced with coding, can be a little confusing and sometimes stressful. This page should help give students the information that they would have to look up outside of the lab instructions but all in one place so that they can focus on the physics aspect of the course and not take too much time worrying about the coding in lab.
 


Functions at a high level are used to perform a certain task. Functions can accept a number of inputs (also "arguments" or "parameters") and can give back 0 or 1 output values. Furthermore, they make code much easier to understand by encapsulating a task in a single line of code instead of


==Basic Functions==
==Basic Functions==


===Basic Python function syntax===
===Basic Python function syntax===
 
Functions can be defined with the def keyword followed by the function name and a colon.
Functions at a high level are used to perform a certain task. They can take anywhere number of inputs and can return 0 or 1 outputs.
Functions can be defined with the <code>def</code> keyword followed by the function name and a colon.
The <code>return</code> keyword can be used for a function to "give back" a result.
The <code>return</code> keyword can be used for a function to "give back" a result.


Line 32: Line 27:
  result = addNumbers(1, 2, 4)
  result = addNumbers(1, 2, 4)


==Connectedness==
==Code Reuse==
VPython is an important tool in PHYS 2211 and PHYS 2212 because it is able to take a very abstract concept and give a visual explanation to the student.  
Writing a function for a task instead of copy and pasting code makes your program much easier to understand and debug. The best way to illustrate this is with an example.
 
For this example, we will create a function to calculate the electric field created by a point charge.
As a reminder, this is the formula we are modeling
<math></math>
 
# Calculates the eletric field at a given vector away from the charge
def eletricField(q, r):
    eletricConstant = 9e9 # 1/(4 * pi * ε0)
    return eletricConstant * q * r.norm() / r.mag2
 





Revision as of 16:14, 5 December 2015

Written by Kevin Randrup

Introduction to functions in Python and applying them to write shorter and more understandable code.

Summary

Functions at a high level are used to perform a certain task. Functions can accept a number of inputs (also "arguments" or "parameters") and can give back 0 or 1 output values. Furthermore, they make code much easier to understand by encapsulating a task in a single line of code instead of

Basic Functions

Basic Python function syntax

Functions can be defined with the def keyword followed by the function name and a colon. The return keyword can be used for a function to "give back" a result.

def functionName(argumentOne, argumentTwo):
    functionReturnValue = argumentOne + argumentTwo
    return functionReturnValue

Example function

# This function adds three numbers together and gives back the result using the return keyword
def addNumbers(a, b, c):
    return a + b + c

Example use of a function

# Calls the function addNumbers with the arguments 1, 2 and 4
result = addNumbers(1, 2, 4)

Code Reuse

Writing a function for a task instead of copy and pasting code makes your program much easier to understand and debug. The best way to illustrate this is with an example.

For this example, we will create a function to calculate the electric field created by a point charge. As a reminder, this is the formula we are modeling [math]\displaystyle{ }[/math]

# Calculates the eletric field at a given vector away from the charge
def eletricField(q, r):
    eletricConstant = 9e9 # 1/(4 * pi * ε0)
    return eletricConstant * q * r.norm() / r.mag2



See also

Are there related topics or categories in this wiki resource for the curious reader to explore? How does this topic fit into that context?

Further reading

Books, Articles or other print media on this topic

External links

Phython colors: http://matplotlib.org/examples/color/named_colors.html


References

This section contains the the references you used while writing this page http://matplotlib.org/examples/color/named_colors.html n?