Difference between revisions of "Mathematical notation recognized by WeBWorK"
Jump to navigation
Jump to search
(New page: == Operators == Operators recognized by WeBWorK, in order from highest to lowest precedence. {|border="1" ! Operator || Precedence level || Type || Associativity || Description |- ! <cod...) |
|||
(9 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
== Operators == |
== Operators == |
||
− | Operators recognized by WeBWorK, in order from highest to lowest precedence. |
+ | Operators recognized by WeBWorK, in order from highest to lowest precedence. Not all operators are available in all problems. |
{|border="1" |
{|border="1" |
||
− | ! Operator || |
+ | ! Operator || Prec. || Type || Associativity || Description |
|- |
|- |
||
! <code>_</code> |
! <code>_</code> |
||
− | | 9 || binary || left || Vector and matrix element extraction |
+ | | 9 || binary || left || Vector and matrix element extraction |
|- |
|- |
||
! <code>!</code> |
! <code>!</code> |
||
Line 75: | Line 75: | ||
use strict; |
use strict; |
||
use warnings; |
use warnings; |
||
− | |||
BEGIN { |
BEGIN { |
||
− | + | die "WEBWORK_ROOT not found in environment.\n" |
|
− | + | unless exists $ENV{WEBWORK_ROOT}; |
|
} |
} |
||
− | |||
use lib "$ENV{WEBWORK_ROOT}/lib"; |
use lib "$ENV{WEBWORK_ROOT}/lib"; |
||
use WeBWorK::CourseEnvironment; |
use WeBWorK::CourseEnvironment; |
||
− | |||
my $ce = new WeBWorK::CourseEnvironment({webwork_dir=>$ENV{WEBWORK_ROOT}}); |
my $ce = new WeBWorK::CourseEnvironment({webwork_dir=>$ENV{WEBWORK_ROOT}}); |
||
push @INC, $ce->{pg}{directories}{lib}; |
push @INC, $ce->{pg}{directories}{lib}; |
||
require Parser; |
require Parser; |
||
− | |||
my %ops = %{$Parser::Context::Default::context{Full}{operators}}; |
my %ops = %{$Parser::Context::Default::context{Full}{operators}}; |
||
print "{|border=\"1\"\n"; |
print "{|border=\"1\"\n"; |
||
Line 100: | Line 96: | ||
} |
} |
||
print "|}\n"; |
print "|}\n"; |
||
− | |||
--> |
--> |
||
+ | |||
+ | == Grouping symbols == |
||
+ | * parentheses ( ) |
||
+ | * brackets [ ] |
||
+ | * braces { } |
||
+ | |||
+ | You can use any of these in your answer but they must match. 3(4+5) and 2[3(4+5)+6] are valid but 3(4+5} will given the error: Mismatched parentheses: '(' and '}'. |
||
+ | |||
+ | When WeBWorK gives a typeset version of your answer it only uses parentheses so for example it expresses your input of 2[3(4+5)+6] as 2(3(4+5)+6) but you can use whatever you want. |
||
+ | |||
+ | == Constants == |
||
+ | |||
+ | * e |
||
+ | * pi |
||
+ | |||
+ | == Functions == |
||
+ | |||
+ | In general, functions can be used with or without parentheses. For example, <code>cosx</code>, <code>cos x</code>, and <code>cos(x)</code> are all equivalent. However, using parentheses makes grouping more explicit and are recommended. |
||
+ | |||
+ | Not all functions are available in all problems. |
||
+ | |||
+ | ;Numeric functions |
||
+ | |||
+ | * log() {{--}} Usually the natural log (<math>\log_e</math>), but your instructor may have redefined it to be log base 10 (<math>\log_{10}</math>). |
||
+ | * log10(), logten() {{--}} Log base 10; <math>\log_{10}</math>. |
||
+ | * sqrt() {{--}} Square root; <math>\sqrt{\ \ \ }</math>. |
||
+ | * abs() {{--}} Absolute value; <math>|\cdots|</math>. |
||
+ | * int() {{--}} Integer or floor function; <math>\lfloor\cdots\rfloor</math>. |
||
+ | * sgn() {{--}} Sign function; returns <code>+1</code> if its argument is positive, <code>-1</code> if its argument is negative, and <code>0</code> if its argument is zero. |
||
+ | * ln() {{--}} Natural log; <math>\log_e</math>. |
||
+ | |||
+ | ;Simple trig functions |
||
+ | |||
+ | * sin() |
||
+ | * cos() |
||
+ | * tan() |
||
+ | * sec() |
||
+ | * csc() |
||
+ | * cot() |
||
+ | |||
+ | ;Inverse trig functions |
||
+ | |||
+ | * asin(), arcsin() |
||
+ | * acos(), arccos() |
||
+ | * atan(), arctan() |
||
+ | * asec(), arcsec() |
||
+ | * acsc(), arccsc() |
||
+ | * acot(), arccot() |
||
+ | * atan2() |
||
+ | |||
+ | ;Simple hyperbolic functions |
||
+ | |||
+ | * sinh() |
||
+ | * cosh() |
||
+ | * tanh() |
||
+ | * sech() |
||
+ | * csch() |
||
+ | * coth() |
||
+ | |||
+ | ;Inverse hyperbolic functions |
||
+ | |||
+ | * asinh(), arcsinh() |
||
+ | * acosh(), arccosh() |
||
+ | * atanh(), arctanh() |
||
+ | * asech(), arcsech() |
||
+ | * acsch(), arccsch() |
||
+ | * acoth(), arccoth() |
||
+ | |||
+ | ;Vector functions |
||
+ | |||
+ | * norm() |
||
+ | * unit() |
||
+ | |||
+ | ;Complex functions |
||
+ | |||
+ | * arg() |
||
+ | * mod() |
||
+ | * Re() |
||
+ | * Im() |
||
+ | * conj() |
||
+ | |||
+ | [[Category:Students]] |
Latest revision as of 16:23, 7 November 2009
Operators
Operators recognized by WeBWorK, in order from highest to lowest precedence. Not all operators are available in all problems.
Operator | Prec. | Type | Associativity | Description |
---|---|---|---|---|
_
|
9 | binary | left | Vector and matrix element extraction |
!
|
8 | unary | right | Factorial |
^
|
7 | binary | right | Exponentiation |
**
|
7 | binary | right | Exponentiation |
+
|
6 | unary | left | Unary plus (indicates that a value is positive) |
-
|
6 | unary | left | Unary minus (indicates that a value is negative) |
/
|
3 | binary | left | Division |
*
|
3 | binary | left | Multiplication |
.
|
2 | binary | left | Vector dot product |
><
|
2 | binary | left | Vector cross product |
U
|
1.5 | binary | left | Union |
-
|
1 | binary | left | Subtraction |
+
|
1 | binary | left | Addition |
,
|
0 | binary | left | List (vector, set, point, etc.) separator |
Grouping symbols
- parentheses ( )
- brackets [ ]
- braces { }
You can use any of these in your answer but they must match. 3(4+5) and 2[3(4+5)+6] are valid but 3(4+5} will given the error: Mismatched parentheses: '(' and '}'.
When WeBWorK gives a typeset version of your answer it only uses parentheses so for example it expresses your input of 2[3(4+5)+6] as 2(3(4+5)+6) but you can use whatever you want.
Constants
- e
- pi
Functions
In general, functions can be used with or without parentheses. For example, cosx
, cos x
, and cos(x)
are all equivalent. However, using parentheses makes grouping more explicit and are recommended.
Not all functions are available in all problems.
- Numeric functions
- log() — Usually the natural log ([math]\log_e[/math]), but your instructor may have redefined it to be log base 10 ([math]\log_{10}[/math]).
- log10(), logten() — Log base 10; [math]\log_{10}[/math].
- sqrt() — Square root; [math]\sqrt{\ \ \ }[/math].
- abs() — Absolute value; [math]|\cdots|[/math].
- int() — Integer or floor function; [math]\lfloor\cdots\rfloor[/math].
- sgn() — Sign function; returns
+1
if its argument is positive,-1
if its argument is negative, and0
if its argument is zero. - ln() — Natural log; [math]\log_e[/math].
- Simple trig functions
- sin()
- cos()
- tan()
- sec()
- csc()
- cot()
- Inverse trig functions
- asin(), arcsin()
- acos(), arccos()
- atan(), arctan()
- asec(), arcsec()
- acsc(), arccsc()
- acot(), arccot()
- atan2()
- Simple hyperbolic functions
- sinh()
- cosh()
- tanh()
- sech()
- csch()
- coth()
- Inverse hyperbolic functions
- asinh(), arcsinh()
- acosh(), arccosh()
- atanh(), arctanh()
- asech(), arcsech()
- acsch(), arccsch()
- acoth(), arccoth()
- Vector functions
- norm()
- unit()
- Complex functions
- arg()
- mod()
- Re()
- Im()
- conj()