### Related

? letsimp;

Calculate

##### letsimp-minf

letsimp(1/x, minf);

Calculate

letsimp(n!/n);

Calculate

##### letsimp

r=1/2 + 3^(1/4)/2^(1/...

letsimp(r^2);

Calculate

? letsimp;

Calculate

##### letsimp-minf

letsimp(1/x, minf);

Calculate

letsimp(n!/n);

Calculate

##### letsimp

r=1/2 + 3^(1/4)/2^(1/...

letsimp(r^2);

Calculate

### letsimp

Run Example
```(%i1)matchdeclare(a, true);
(%o1)                                done
(%i2) let(cot(a), cos(a)/sin(a));
cos(a)
(%o2)                          cot(a) --> ------
sin(a)
(%i3) letsimp(cot(z));
cos(z)
(%o3)                               ------
sin(z)
(%i4) letsimp(tan(z));
(%o4)                               tan(z)
(%i5) ```
Run Example
```/* Standard (x,y)->
(r,theta) coordinate translation */x(t) := r(t) * cos(theta(t));
(%o1)                     x(t) := r(t) cos(theta(t))
(%i2) y(t) := r(t) * sin(theta(t));
(%o2)                     y(t) := r(t) sin(theta(t))
(%i3) /* Constant course assumption */declare (slope,constant);
(%o3)                                done
(%i4) declare (slope,real);
(%o4)                                done
(%i5) declare (yintercept,constant);
(%o5)                                done
(%i6) declare (yintercept, real);
(%o6)                                done
(%i7) eq1: y(t)=slope * x(t) + yintercept;
(%o7)     r(t) sin(theta(t)) = slope r(t) cos(theta(t)) + yintercept
(%i8) /* Known & constant sound velocity */declare (soundvel,constant);
(%o8)                                done
(%i9) assume(soundvel>
0);
(%o9)                           [0 < soundvel]
(%i10) /* Known and constant base frequency */declare (basefrequency, constant);
(%o10)                               done
(%i11) assume(basefrequency>
0);
(%o11)                        [0 < basefrequency]
(%i12) /* f-- observed frequency. Standard doppler equation*/declare(f, real);
(%o12)                               done
(%i13) let (diff(r(t),t), (f(t)/basefrequency-1)*soundvel);
d                           f(t)
(%o13)            -- (r(t)) --> soundvel (------------- - 1)
dt                      basefrequency
(%i14) /* Differentiate eq1 and solve for r(t) */eq3: letsimp(solve([diff(y(t),t) = slope * diff(x(t),t)],r(t)));
(%o14) [r(t) =
slope soundvel cos(theta(t))
- -------------------------------------------------------------------
d                               d
slope sin(theta(t)) (-- (theta(t))) + cos(theta(t)) (-- (theta(t)))
dt                              dt
soundvel sin(theta(t))
+ -------------------------------------------------------------------
d                               d
slope sin(theta(t)) (-- (theta(t))) + cos(theta(t)) (-- (theta(t)))
dt                              dt
+ (slope soundvel f(t) cos(theta(t)))/(basefrequency slope sin(theta(t))
d                                             d
(-- (theta(t))) + basefrequency cos(theta(t)) (-- (theta(t))))
dt                                            dt
+ (- (soundvel f(t) sin(theta(t)))/(basefrequency slope sin(theta(t))
d                                             d
(-- (theta(t))) + basefrequency cos(theta(t)) (-- (theta(t)))))]
dt                                            dt
(%i15) /* Differentiate eq3 and solve for slope */eq6: trigsimp(solve(letsimp(diff(eq3,t)), slope));
2                                          2
(%o15) [slope = (sqrt((f (t) - 2 basefrequency f(t) + basefrequency )
2
d              2                               d           d
(--- (theta(t)))  + (2 basefrequency - 2 f(t)) (-- (f(t))) (-- (theta(t)))
2                                            dt          dt
dt
2
d                       2                                             2
(--- (theta(t))) + (- 8 f (t) + 16 basefrequency f(t) - 8 basefrequency )
2
dt
d             4    d         2  d             2
(-- (theta(t)))  + (-- (f(t)))  (-- (theta(t))) )
dt                 dt           dt
2
+ ((2 f(t) - 2 basefrequency) sin (theta(t)) - f(t) + basefrequency)
2
d
(--- (theta(t))) + (2 basefrequency - 2 f(t)) cos(theta(t)) sin(theta(t))
2
dt
d             2    d              d             2             d
(-- (theta(t)))  + (-- (f(t)) - 2 (-- (f(t))) sin (theta(t))) (-- (theta(t))))
dt                 dt             dt                          dt
2
d
/((2 f(t) - 2 basefrequency) cos(theta(t)) sin(theta(t)) (--- (theta(t)))
2
dt
2
+ ((2 f(t) - 2 basefrequency) sin (theta(t)) + 2 f(t) - 2 basefrequency)
d             2      d
(-- (theta(t)))  - 2 (-- (f(t))) cos(theta(t)) sin(theta(t))
dt                   dt
d                                  2
(-- (theta(t)))), slope = - (sqrt((f (t) - 2 basefrequency f(t)
dt
2
2   d              2                               d
+ basefrequency ) (--- (theta(t)))  + (2 basefrequency - 2 f(t)) (-- (f(t)))
2                                            dt
dt
2
d               d                       2
(-- (theta(t))) (--- (theta(t))) + (- 8 f (t) + 16 basefrequency f(t)
dt                2
dt
2   d             4    d         2  d             2
- 8 basefrequency ) (-- (theta(t)))  + (-- (f(t)))  (-- (theta(t))) )
dt                 dt           dt
2
+ ((2 f(t) - 2 basefrequency) cos (theta(t)) - f(t) + basefrequency)
2
d
(--- (theta(t))) + (2 f(t) - 2 basefrequency) cos(theta(t)) sin(theta(t))
2
dt
d             2    d              d             2             d
(-- (theta(t)))  + (-- (f(t)) - 2 (-- (f(t))) cos (theta(t))) (-- (theta(t))))
dt                 dt             dt                          dt
2
d
/((2 f(t) - 2 basefrequency) cos(theta(t)) sin(theta(t)) (--- (theta(t)))
2
dt
2
+ ((2 basefrequency - 2 f(t)) cos (theta(t)) + 4 f(t) - 4 basefrequency)
d             2      d                                       d
(-- (theta(t)))  - 2 (-- (f(t))) cos(theta(t)) sin(theta(t)) (-- (theta(t))))]
dt                   dt                                      dt
(%i16) /* Now we have a number of estimates for the slope constant. *//* We can use any statistical technique to estimate the actual constant *//* Constant speed assumption */eq7: letsimp(diff(letsimp(diff(x(t),t)),t)) = 0;
2
d
(%o16) (- basefrequency r(t) sin(theta(t)) (--- (theta(t)))
2
dt
d             2
- basefrequency r(t) cos(theta(t)) (-- (theta(t)))
dt
d
- 2 soundvel f(t) sin(theta(t)) (-- (theta(t)))
dt
d
+ 2 basefrequency soundvel sin(theta(t)) (-- (theta(t)))
dt
d
+ soundvel (-- (f(t))) cos(theta(t)))/basefrequency = 0
dt
(%i17) eq8: solve(eq7, r(t));
(%o17) [r(t) = - ((2 soundvel f(t) - 2 basefrequency soundvel) sin(theta(t))
d                          d
(-- (theta(t))) - soundvel (-- (f(t))) cos(theta(t)))
dt                         dt
2
d
/(basefrequency sin(theta(t)) (--- (theta(t)))
2
dt
d             2
+ basefrequency cos(theta(t)) (-- (theta(t))) )]
dt
(%i18) eq9: subst(eq8, eq1);
(%o18) - (sin(theta(t)) ((2 soundvel f(t) - 2 basefrequency soundvel)
d                          d
sin(theta(t)) (-- (theta(t))) - soundvel (-- (f(t))) cos(theta(t))))
dt                         dt
2
d
/(basefrequency sin(theta(t)) (--- (theta(t)))
2
dt
d             2
+ basefrequency cos(theta(t)) (-- (theta(t))) ) =
dt
yintercept - (slope cos(theta(t)) ((2 soundvel f(t) - 2 basefrequency soundvel)
d                          d
sin(theta(t)) (-- (theta(t))) - soundvel (-- (f(t))) cos(theta(t))))
dt                         dt
2
d
/(basefrequency sin(theta(t)) (--- (theta(t)))
2
dt
d             2
+ basefrequency cos(theta(t)) (-- (theta(t))) )
dt
(%i19) eq10: solve(eq9, yintercept);
(%o19) [yintercept = - (((2 soundvel f(t) - 2 basefrequency soundvel)
2
sin (theta(t)) + (2 basefrequency slope soundvel - 2 slope soundvel f(t))
d
cos(theta(t)) sin(theta(t))) (-- (theta(t)))
dt
d
- soundvel (-- (f(t))) cos(theta(t)) sin(theta(t))
dt
d             2
+ slope soundvel (-- (f(t))) cos (theta(t)))
dt
2
d
/(basefrequency sin(theta(t)) (--- (theta(t)))
2
dt
d             2
+ basefrequency cos(theta(t)) (-- (theta(t))) )]
dt
(%i20) /* Now we have a number of estimates for the yintercept constant. *//* We can use any statistical technique to estimate the actual constant *//* This gives us r(theta) in terms of slope and y_intercept*/solve(eq1, r(t));
yintercept
(%o20)           [r(t) = -----------------------------------]
sin(theta(t)) - slope cos(theta(t))
(%i21) ```
Run Example
```x(t) := r(t) * sin(theta(t));
(%o1)                     x(t) := r(t) sin(theta(t))
(%i2) y(t) := r(t) * cos(theta(t));
(%o2)                     y(t) := r(t) cos(theta(t))
(%i3) declare (slope,constant);
(%o3)                                done
(%i4) declare (xvel, constant);
(%o4)                                done
(%i5) declare (slope,real);
(%o5)                                done
(%i6) declare (xvel, real);
(%o6)                                done
(%i7) diff(x(t),t) = xvel;
d                 d
(%o7) r(t) cos(theta(t)) (-- (theta(t))) + (-- (r(t))) sin(theta(t)) = xvel
dt                dt
(%i8) diff(y(t),t) = xvel * slope;
d                                              d
(%o8) (-- (r(t))) cos(theta(t)) - r(t) sin(theta(t)) (-- (theta(t))) =
dt                                             dt
slope xvel
(%i9) declare (soundvel,constant);
(%o9)                                done
(%i10) declare (soundvel,posfun);
(%o10)                               done
(%i11) declare (f0, constant);
(%o11)                               done
(%i12) eq20: diff(diff(y(t),t),t) = 0;
2
d
(%o12) - r(t) sin(theta(t)) (--- (theta(t)))
2
dt
d             2      d
- r(t) cos(theta(t)) (-- (theta(t)))  - 2 (-- (r(t))) sin(theta(t))
dt                   dt
2
d                 d
(-- (theta(t))) + (--- (r(t))) cos(theta(t)) = 0
dt                  2
dt
(%i13) let (diff(r(t),t), (f(t)/f0-1)*soundvel);
d                       f(t)
(%o13)                 -- (r(t)) --> soundvel (---- - 1)
dt                       f0
(%i14) eq30: diff(y(t),t) = slope * diff(x(t),t);
d                                              d
(%o14) (-- (r(t))) cos(theta(t)) - r(t) sin(theta(t)) (-- (theta(t))) =
dt                                             dt
d                 d
slope (r(t) cos(theta(t)) (-- (theta(t))) + (-- (r(t))) sin(theta(t)))
dt                dt
(%i15) eq40: letsimp(solve([eq30],r(t)));
(%o15) [r(t) =
soundvel cos(theta(t))
- -------------------------------------------------------------------
d                                     d
sin(theta(t)) (-- (theta(t))) + slope cos(theta(t)) (-- (theta(t)))
dt                                    dt
slope soundvel sin(theta(t))
+ -------------------------------------------------------------------
d                                     d
sin(theta(t)) (-- (theta(t))) + slope cos(theta(t)) (-- (theta(t)))
dt                                    dt
soundvel f(t) cos(theta(t))
+ -------------------------------------------------------------------------
d                                        d
f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))
dt                                       dt
+ (- (slope soundvel f(t) sin(theta(t)))
d                                        d
/(f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))))]
dt                                       dt
(%i16) eq50: letsimp(diff(eq40,t));
soundvel f(t)
(%o16) [- soundvel + ------------- =
f0
d
slope soundvel cos(theta(t)) (-- (theta(t)))
dt
-------------------------------------------------------------------
d                                     d
sin(theta(t)) (-- (theta(t))) + slope cos(theta(t)) (-- (theta(t)))
dt                                    dt
d
soundvel sin(theta(t)) (-- (theta(t)))
dt
+ -------------------------------------------------------------------
d                                     d
sin(theta(t)) (-- (theta(t))) + slope cos(theta(t)) (-- (theta(t)))
dt                                    dt
d
soundvel (-- (f(t))) cos(theta(t))
dt
+ -------------------------------------------------------------------------
d                                        d
f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))
dt                                       dt
d
+ (- (slope soundvel (-- (f(t))) sin(theta(t)))
dt
d                                        d
/(f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))))
dt                                       dt
d
+ (- (slope soundvel f(t) cos(theta(t)) (-- (theta(t))))
dt
d                                        d
/(f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))))
dt                                       dt
d
+ (- (soundvel f(t) sin(theta(t)) (-- (theta(t))))
dt
d                                        d
/(f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))))
dt                                       dt
2
d
+ (soundvel cos(theta(t)) (sin(theta(t)) (--- (theta(t)))
2
dt
2
d                                      d             2
+ slope cos(theta(t)) (--- (theta(t))) - slope sin(theta(t)) (-- (theta(t)))
2                                    dt
dt
d             2
+ cos(theta(t)) (-- (theta(t))) ))
dt
d                                     d              2
/(sin(theta(t)) (-- (theta(t))) + slope cos(theta(t)) (-- (theta(t))))
dt                                    dt
2
d
+ (- (slope soundvel sin(theta(t)) (sin(theta(t)) (--- (theta(t)))
2
dt
2
d                                      d             2
+ slope cos(theta(t)) (--- (theta(t))) - slope sin(theta(t)) (-- (theta(t)))
2                                    dt
dt
d             2
+ cos(theta(t)) (-- (theta(t))) ))
dt
d                                     d              2
/(sin(theta(t)) (-- (theta(t))) + slope cos(theta(t)) (-- (theta(t)))) )
dt                                    dt
2
d
+ (- (soundvel f(t) cos(theta(t)) (f0 sin(theta(t)) (--- (theta(t)))
2
dt
2
d
+ f0 slope cos(theta(t)) (--- (theta(t)))
2
dt
d             2
- f0 slope sin(theta(t)) (-- (theta(t)))
dt
d             2
+ f0 cos(theta(t)) (-- (theta(t))) ))
dt
d                                        d              2
/(f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))) )
dt                                       dt
2
d
+ (slope soundvel f(t) sin(theta(t)) (f0 sin(theta(t)) (--- (theta(t)))
2
dt
2
d
+ f0 slope cos(theta(t)) (--- (theta(t)))
2
dt
d             2
- f0 slope sin(theta(t)) (-- (theta(t)))
dt
d             2
+ f0 cos(theta(t)) (-- (theta(t))) ))
dt
d                                        d              2
/(f0 sin(theta(t)) (-- (theta(t))) + f0 slope cos(theta(t)) (-- (theta(t)))) ]
dt                                       dt
(%i17) ```

Help for Letsimp