o      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  None assumes radians coming in 6theta=0 is positive x axis, output angle in radians An arrow9Rotate takes its angle in degrees, and rotates clockwise.  A think arrow location of base of arrowdisplacement vectordisplacement vector arrow thicknesslocation of base of arrowdisplacement vector   (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimentalSafeGiven an initial bracketing of a root (an interval (a,b) for which f(a) f(b) <= 0), produce a bracket of arbitrary smallness.4Given a bracketed root, return a half-width bracket.mFind a single root in a bracketed region. The algorithm continues until it exhausts the precision of a ). This could cause the function to hang.Find a list of roots for a function over a given range. First parameter is the initial number of intervals to use to find the roots. If roots are closely spaced, this number of intervals may need to be large.yFind a list of roots for a function over a given range. There are no guarantees that all roots will be found. Uses  with 1000 intervals.desired accuracyfunctioninitial bracket final bracketfunctionoriginal bracket new bracketfunctioninitial bracketapproximate root"initial number of intervals to usefunctionrange over which to search list of rootsfunctionrange over which to search list of roots(c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy3Composite Trapezoid RuleComposite Simpson's RuleFnumber of intervals (one less than the number of function evaluations) lower limit upper limitfunction to be integrateddefinite integralKnumber of half-intervals (one less than the number of function evaluations) lower limit upper limitfunction to be integrateddefinite integral(c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimentalSafe A type for vectors. x component y component z component3Form a vector by giving its x, y, and z components.Cross product.Unit vector in the x direction.Unit vector in the y direction.Unit vector in the z direction.  x component y component z component  (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimentalSafe The zero vector. !The additive inverse of a vector.!Sum of a list of vectors."Vector addition.#Vector subtraction.$YScalar multiplication, where the scalar is on the left and the vector is on the right.%YScalar multiplication, where the scalar is on the right and the vector is on the left.&!Division of a vector by a scalar.'Dot product of two vectors.(Magnitude of a vector.  !"#$%&'( !"#$%&'("#$%&'( !  !"#$%&'("#$%&'(c) Scott N. Walck 2011-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy=K  (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy24)AA coordinate system is a function from three parameters to space.*tSometimes we want to be able to talk about a field without saying whether it is a scalar field or a vector field.+?A vector field associates a vector with each position in space.,?A scalar field associates a number with each position in space.-A displacement is a vector..\A type for position. Position is not a vector because it makes no sense to add positions./+Add two scalar fields or two vector fields.0:The Cartesian coordinate system. Coordinates are (x,y,z).1The cylindrical coordinate system. Coordinates are (s,phi,z), where s is the distance from the z axis and phi is the angle with the x axis.2The spherical coordinate system. Coordinates are (r,theta,phi), where r is the distance from the origin, theta is the angle with the z axis, and phi is the azimuthal angle.3vA helping function to take three numbers x, y, and z and form the appropriate position using Cartesian coordinates.4zA helping function to take three numbers s, phi, and z and form the appropriate position using cylindrical coordinates.5|A helping function to take three numbers r, theta, and phi and form the appropriate position using spherical coordinates.6DReturns the three Cartesian coordinates as a triple from a position.7FReturns the three cylindrical coordinates as a triple from a position.8DReturns the three spherical coordinates as a triple from a position.95Displacement from source position to target position.:#Shift a position by a displacement.;An object is a map into ..<A field is a map from ..= The vector field in which each point in space is associated with a unit vector in the direction of increasing spherical coordinate r, while spherical coordinates theta and phi are held constant. Defined everywhere except at the origin. The unit vector = points in different directions at different points in space. It is therefore better interpreted as a vector field, rather than a vector.>The vector field in which each point in space is associated with a unit vector in the direction of increasing spherical coordinate theta, while spherical coordinates r and phi are held constant. Defined everywhere except on the z axis.?-The vector field in which each point in space is associated with a unit vector in the direction of increasing (cylindrical or spherical) coordinate phi, while cylindrical coordinates s and z (or spherical coordinates r and theta) are held constant. Defined everywhere except on the z axis.@The vector field in which each point in space is associated with a unit vector in the direction of increasing cylindrical coordinate s, while cylindrical coordinates phi and z are held constant. Defined everywhere except on the z axis.AThe vector field in which each point in space is associated with a unit vector in the direction of increasing Cartesian coordinate x, while Cartesian coordinates y and z are held constant. Defined everywhere.BThe vector field in which each point in space is associated with a unit vector in the direction of increasing Cartesian coordinate y, while Cartesian coordinates x and z are held constant. Defined everywhere.CThe vector field in which each point in space is associated with a unit vector in the direction of increasing Cartesian coordinate z, while Cartesian coordinates x and y are held constant. Defined everywhere.)*+,-./0123 x coordinate y coordinate z coordinate4 s coordinatephi coordinate z coordinate5 r coordinatetheta coordinatephi coordinate6789source positiontarget position:;<=>?@ABC)*+,-./0123456789:;<=>?@ABC.-,+*)0123456789:;</=>?@ABC)*+,-./0123456789:;<=>?@ABC(c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental TrustworthyD)The x Cartesian coordinate of a position.E)The y Cartesian coordinate of a position.F:The z Cartesian (or cylindrical) coordinate of a position.GdThe s cylindrical coordinate of a position. This is the distance of the position from the z axis.HThe phi cylindrical (or spherical) coordinate of a position. This is the angle from the positive x axis to the projection of the position onto the xy plane.IbThe r spherical coordinate of a position. This is the distance of the position from the origin.JlThe theta spherical coordinate of a position. This is the angle from the positive z axis to the position. DEFGHIJDEFGHIJDEFGHIJ DEFGHIJ (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental TrustworthyK}Specification of a coordinate system requires a map from coordinates into space, and a map from space into coordinates.M!a map from coordinates into spaceN!a map from space into coordinatesO(The standard Cartesian coordinate systemP*The standard cylindrical coordinate systemQ(The standard spherical coordinate systemRDefine a new coordinate system in terms of an existing one. First parameter is a map from old coordinates to new coordinates. Second parameter is the inverse map from new coordinates to old coordinates.KLMNOPQR(x',y',z') = f(x,y,z)(x,y,z) = g(x',y',z')old coordinate systemKLMNOPQRKLMNOPQRKLMNOPQR (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy3=KSSR is a parametrized function into three-space, an initial limit, and a final limit.U&function from one parameter into spaceVstarting value of the parameterWending value of the parameterX4A dotted line integral. Convenience function for d.YDCalculates integral vf x dl over curve. Convenience function for e.Z<A dotted line integral, performed in an unsophisticated way.[ACalculates integral vf x dl over curve in an unsophisticated way.\GCalculates integral f dl over curve, where dl is a scalar line element.]"Reparametrize a curve from 0 to 1.^Concatenate two curves._=Concatenate a list of curves. Parametrizes curves equally.`Reverse a curve.a0Evaluate the position of a curve at a parameter.b Shift a curve by a displacement.c5The straight-line curve from one position to another.d}Quadratic approximation to vector field. Quadratic approximation to curve. Composite strategy. Dotted line integral.e~Quadratic approximation to vector field. Quadratic approximation to curve. Composite strategy. Crossed line integral.STUVWXNnumber of half-intervals (one less than the number of function evaluations) vector fieldcurve to integrate over scalar resultYNnumber of half-intervals (one less than the number of function evaluations) vector fieldcurve to integrate over vector resultZnumber of intervals vector fieldcurve to integrate over scalar result[number of intervals vector fieldcurve to integrate over vector result\number of intervalsscalar or vector fieldcurve to integrate overscalar or vector result]^go first along this curvethen along this curveto produce this new curve_`a the curve the parameter4position of the point on the curve at that parameterbamount to shiftoriginal curve shifted curvecstarting positionending positionstraight-line curvevector field lowvector field midvector field high dl low to middl mid to highquadratic approximationdNnumber of half-intervals (one less than the number of function evaluations) vector fieldcurve to integrate over scalar resultvector field lowvector field midvector field high dl low to middl mid to highquadratic approximationeNnumber of half-intervals (one less than the number of function evaluations) vector fieldcurve to integrate over vector resultSTUVWXYZ[\]^_`abcdeSTUVW]^_`abc\XYZ[deSTUVWXYZ[\]^_`abcde (c) Scott N. Walck 2011-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Safe-InferredfAn ( with a given label at a given position.gAn ! that requests postscript output.hAn ! giving the postscript file name.iAn example of the use of f. See the source code.jAn example of the use of g and h. See the source code.k*Plot a Curve in the xy plane using Gnuplotfghijkfghijkfghijkfghijk (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy=KlSurface is a parametrized function from two parameters to space, lower and upper limits on the first parameter, and lower and upper limits for the second parameter (expressed as functions of the first parameter).n-function from two parameters (s,t) into spaceos_lps_uqt_l(s)rt_u(s)s&A unit sphere, centered at the origin.t2A sphere with given radius centered at the origin.u$Sphere with given radius and center.v8The upper half of a unit sphere, centered at the origin.w1A disk with given radius, centered at the origin.x<A plane surface integral, in which area element is a scalar.y=A dotted surface integral, in which area element is a vector.z"Shift a surface by a displacement.lmnopqrstuvwx*number of intervals for first parameter, s+number of intervals for second parameter, t'the scalar or vector field to integrate#the surface over which to integratethe resulting scalar or vectory*number of intervals for first parameter, s+number of intervals for second parameter, tthe vector field to integrate#the surface over which to integratethe resulting scalarzlmnopqrstuvwxyzlmnopqrstuvwzxy lmnopqrstuvwxyz (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy=K{PVolume is a parametrized function from three parameters to space, lower and upper limits on the first parameter, lower and upper limits for the second parameter (expressed as functions of the first parameter), and lower and upper limits for the third parameter (expressed as functions of the first and second parameters).}#function from 3 parameters to space~s_as_bt_a(s)t_b(s)u_a(s,t)u_b(s,t)$A unit ball, centered at the origin.IA unit ball, centered at the origin. Specified in Cartesian coordinates.1A ball with given radius, centered at the origin."Ball with given radius and center.1Upper half ball, unit radius, centered at origin.Cylinder with given radius and height. Circular base of the cylinder is centered at the origin. Circular top of the cylinder lies in plane z = h.A volume integral n+1 points!Shift a volume by a displacement.{|}~radiuscenter!ball with given radius and center-number of intervals for first parameter (s)-number of intervals for second parameter (t)-number of intervals for third parameter (u)scalar or vector field the volumescalar or vector result{|}~{|}~{|}~(c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy A current distribution is a line current (current through a wire), a surface current, a volume current, or a combination of these. The +D describes a surface current density or a volume current density.$combination of current distributions+" is volume current density (A/m^2)+! is surface current density (A/m)current through a wire)Electric current, in units of Amperes (A)TMagnetic field produced by a line current (current through a wire). The function R calls this function to evaluate the magnetic field produced by a line current.>Magnetic field produced by a surface current. The function  calls this function to evaluate the magnetic field produced by a surface current. This function assumes that surface current density will be specified parallel to the surface, and does not check if that is true.=Magnetic field produced by a volume current. The function T calls this function to evaluate the magnetic field produced by a volume current.The magnetic field produced by a current distribution. This is the simplest way to find the magnetic field, because it works for any current distribution (line, surface, volume, or combination).GThe magnetic flux through a surface produced by a current distribution. current (in Amps)geometry of the line currentmagnetic field (in Tesla)surface current densitygeometry of the surface currentmagnetic field (in T)volume current densitygeometry of the volume currentmagnetic field (in T) (c) Scott N. Walck 2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy234=K An evolution method is a way of approximating the state after advancing a finite interval in the independent variable (time) from a given state.A (numerical) solution method is a way of converting an initial value problem into a list of states (a solution). The list of states need not be equally spaced in time.PAn initial value problem is a differential equation along with an initial state.;A differential equation expresses how the dependent variables (state) change with the independent variable (time). A differential equation is specified by giving the (time) derivative of the state as a function of the state. The (time) derivative of a state is an element of the associated vector space.OThe scalars of the associated vector space can be thought of as time intervals.An instance of Q is a data type that can serve as the state of some system. Alternatively, a M is a collection of dependent variables for a differential equation. A  has an associated vector space for the (time) derivatives of the state. The associated vector space is a linearized version of the .Associated vector spaceSubtract pointsPoint plus vectorPoint minus vectorGiven an evolution method and a time step, return the solution method which applies the evolution method repeatedly with with given time step. The solution method returned will produce an infinite list of states.tThe Euler method is the simplest evolution method. It increments the state by the derivative times the time step.PPosition is not a vector, but displacement (difference in position) is a vector.differential equation time interval initial state evolved state (c) Scott N. Walck 2012-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy3(Take a single 4th-order Runge-Kutta stepOSolve a first-order system of differential equations with 4th-order Runge-Kutta(c) Scott N. Walck 2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy=KyAn acceleration function gives a list of accelerations (one for each particle) as a function of the system's state.jThe state of a system of many particles is given by the current time and a list of one-particle states.An acceleration function gives a pair of accelerations (one for particle 1, one for particle 2) as a function of the system's state.The state of a system of two particles is given by the current time, the position and velocity of particle 1, and the position and velocity of particle 2.dAn acceleration function gives the particle's acceleration as a function of the particle's state.The state of a system of one particle is given by the current time, the position of the particle, and the velocity of the particle. Including time in the state like this allows us to have time-dependent forces.BThe associated vector space for the state of a single particle.lThe state of a single particle is given by the position of the particle and the velocity of the particle.|An acceleration function gives the particle's acceleration as a function of the particle's state. The specification of this function is what makes one single-particle mechanics problem different from another. In order to write this function, add all of the forces that act on the particle, and divide this net force by the particle's mass. (Newton's second law).VA simple one-particle state, to get started quickly with mechanics of one particle. Velocity of a particle (in m/s).A time step (in s). Time (in s).GTime derivative of state for a single particle with a constant mass.Single Runge-Kutta stepGTime derivative of state for a single particle with a constant mass.Single Runge-Kutta stepList of system statesATime derivative of state for two particles with constant mass./Single Runge-Kutta step for two-particle systemBTime derivative of state for many particles with constant mass.0Single Runge-Kutta step for many-particle system&acceleration function for the particledifferential equation&acceleration function for the particle time step initial statestate after one time step&acceleration function for the particledifferential equation&acceleration function for the particle time step initial statestate after one time step&acceleration function for the particle time step initial statestate after one time step'acceleration function for two particlesdifferential equationacceleration function time step initial statestate after one time step(acceleration function for many particlesdifferential equationacceleration function time step initial statestate after one time stepNoneMake a  object from a .Make a  object from a ..Display a vector field.$A displayable VisObject for a curve.(Place a vector at a particular position.A VisObject arrow from a vector color for the vector field scale factor#list of positions to show the fieldvector field to displaythe displayable object in radians  in radians  (c) Scott N. Walck 2011-2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental TrustworthyA charge distribution is a point charge, a line charge, a surface charge, a volume charge, or a combination of these. The ,\ describes a linear charge density, a surface charge density, or a volume charge density.#combination of charge distributions,! is volume charge density (C/m^3)," is surface charge density (C/m^2), is linear charge density (C/m) point charge)Electric charge, in units of Coulombs (C)-Total charge (in C) of a charge distribution.;Electric field produced by a point charge. The function R calls this function to evaluate the electric field produced by a point charge.:Electric field produced by a line charge. The function Q calls this function to evaluate the electric field produced by a line charge.=Electric field produced by a surface charge. The function T calls this function to evaluate the electric field produced by a surface charge.<Electric field produced by a volume charge. The function S calls this function to evaluate the electric field produced by a volume charge.The electric field produced by a charge distribution. This is the simplest way to find the electric field, because it works for any charge distribution (point, line, surface, volume, or combination).FThe electric flux through a surface produced by a charge distribution.aElectric potential from electric field, given a position to be the zero of electric potential.Electric potential produced by a charge distribution. The position where the electric potential is zero is taken to be infinity.charge (in Coulombs)of point chargeelectric field (in V/m)linear charge density lambdageometry of the line chargeelectric field (in V/m)surface charge density sigmageometry of the surface chargeelectric field (in V/m)volume charge density rhogeometry of the volume chargeelectric field (in V/m))position where electric potential is zeroelectric fieldelectric potential charge (in Coulombs)of point chargeelectric potential linear charge density lambdageometry of the line chargeelectric potential surface charge density sigmageometry of the surface chargeelectric potential volume charge density rhogeometry of the volume chargeelectric potential    (c) Scott N. Walck 2014BSD3 (see LICENSE)Scott N. Walck <walck@lvc.edu> experimental Trustworthy )*+,-./0123456789:;<=>?@ABCSTUVWXY\]^_`abcfghlmnopqrstuvwxyz{|}~ԩ .-,+*)0123456789:;</=>?@ABCSTUVW]^_`abc\XYlmnopqrstuvwzxy{|}~fgh  !"#$%&'()*+,--./012345! 6789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW 6 6 X Y Z [ \ ] ^ ^ _ ` a b c d e f g h i j k l m n o p q r s t u v v w x y z { | } ~            learn-physics-0.5Physics.Learn.CarrotVecPhysics.Learn.Visual.GlossToolsPhysics.Learn.RootFinding!Physics.Learn.CompositeQuadraturePhysics.Learn.CommonVecPhysics.Learn.SimpleVecPhysics.Learn.PositionPhysics.Learn.CoordinateFieldsPhysics.Learn.CoordinateSystemPhysics.Learn.CurvePhysics.Learn.Visual.PlotToolsPhysics.Learn.SurfacePhysics.Learn.VolumePhysics.Learn.CurrentPhysics.Learn.StateSpacePhysics.Learn.RungeKuttaPhysics.Learn.MechanicsPhysics.Learn.Visual.VisToolsPhysics.Learn.Charge Physics.Learnvector-space-0.8.7Data.VectorSpace magnitude^*^/*^<.>Data.AdditiveGroupsumV^-^negateV^+^zeroV polarToCart cartToPolararrow thickArrow bracketRootbracketRootStepfindRoot findRootsN findRootscompositeTrapezoidcompositeSimpsonVecxCompyCompzCompvec><iHatjHatkHatCoordinateSystemField VectorField ScalarField DisplacementPosition addFields cartesian cylindrical sphericalcartcylsphcartesianCoordinatescylindricalCoordinatessphericalCoordinates displacement shiftPosition shiftObject shiftFieldrHatthetaHatphiHatsHatxHatyHatzHatxyzsphirtheta toPosition fromPositionstandardCartesianstandardCylindricalstandardSphericalnewCoordinateSystemCurve curveFuncstartingCurveParamendingCurveParamdottedLineIntegralcrossedLineIntegral$compositeTrapezoidDottedLineIntegral%compositeTrapezoidCrossedLineIntegralsimpleLineIntegralnormalizeCurve concatCurvesconcatenateCurves reverseCurve evalCurve shiftCurve straightLine"compositeSimpsonDottedLineIntegral#compositeSimpsonCrossedLineIntegrallabel postscriptpsFile examplePlot1 examplePlot2 plotXYCurveSurface surfaceFunc lowerLimit upperLimit lowerCurve upperCurve unitSpherecenteredSpherespherenorthernHemispheredisksurfaceIntegraldottedSurfaceIntegral shiftSurfaceVolume volumeFuncloLimitupLimitloCurveupCurveloSurfupSurfunitBallunitBallCartesian centeredBallballnorthernHalfBallcenteredCylindervolumeIntegral shiftVolumeCurrentDistributionMultipleCurrents VolumeCurrentSurfaceCurrent LineCurrentCurrentbFieldFromLineCurrentbFieldFromSurfaceCurrentbFieldFromVolumeCurrentbField magneticFluxEvolutionMethodSolutionMethodInitialValueProblemDifferentialEquationTime StateSpaceDiff.-..+^.-^ stepSolution eulerMethod rungeKutta4integrateSystem ManyParticleAccelerationFunctionManyParticleSystemStateTwoParticleAccelerationFunctionTwoParticleSystemStateOneParticleAccelerationFunctionOneParticleSystemStateDStStpositionvelocitySimpleAccelerationFunction SimpleStateVelocityTimeStepTheTimesimpleStateDerivsimpleRungeKuttaSteponeParticleStateDerivoneParticleRungeKuttaSteponeParticleRungeKuttaSolutiontwoParticleStateDerivtwoParticleRungeKuttaStepmanyParticleStateDerivmanyParticleRungeKuttaStep v3FromVec v3FromPosdisplayVectorField curveObject oneVectorvisVecChargeDistributionMultipleCharges VolumeCharge SurfaceCharge LineCharge PointChargeCharge totalChargeeFieldFromPointChargeeFieldFromLineChargeeFieldFromSurfaceChargeeFieldFromVolumeChargeeField electricFluxelectricPotentialFromFieldelectricPotentialFromCharge originArrow basicArrow100basicThickArrowghc-prim GHC.TypesDoublefindRootMachinePrecision showDouble $fShowVec$fInnerSpaceVec$fVectorSpaceVec$fAdditiveGroupVecCartfst3snd3thd3average dottedSimp crossedSimpgnuplot-0.5.2.2Graphics.Gnuplot.Simple Attribute linSpaced~~ toleranceave zipCubeWithzipSub3zipAve3shift1shift2shift3sqrtTol$fStateSpacePositioninf$fStateSpace[]$fVectorSpace[]$fAdditiveGroup[]$fStateSpace(,,)$fStateSpace(,)$fStateSpaceVec$fStateSpaceDouble$fStateSpaceSt$fVectorSpaceDSt$fAdditiveGroupDStlinear-1.10.1.2 Linear.V3V3SphsphericalCoordsrotYrotZePotFromPointChargeePotFromLineChargeePotFromSurfaceChargeePotFromVolumeCharge