## `detools::transform` -- change of variables for differential equations

#### Introduction

`detools::transform` performs variable transformations in differential equations.

#### Call(s)

`detools::transform(de, indl, depl, mode, <, NewVars = varl> <ChangeOfVars = cl>)`

#### Parameters

`de` | - | the differential equation: an expression.
`indl` | - | the independent variable(s): a list of (indexed) identifiers.
`depl` | - | the dependent variable(s): a list of (indexed) identifiers.
`mode` | - | transformation mode: either the string `Ïndep"` or `"Dep"`.

#### Options

`NewVars` | - | lists the names of the new variables.
`ChangeOfVars` | - | defines the new variables.

#### Returns

an expression.

#### Details

- `detools::transform` performs variable transformations in differential equations. It represents only an interface to methods implemented in domains in `Cat::DifferentialFunction`. So the allowed transformations depend on the type of the differential equation. For example, for linear equations only linear transformations of either the dependent or the independent variables are permitted.

#### Example 1

We transform the independent variables in a simple linear differential expression. Note that the new variables are given as linear functions of the old ones.

    >> detools::transform(u([x]) + u([y]), [x, y], [u], NewVars = [X, Y],
                     ChangeOfVars = [X = x + y, Y = x - y], "Indep")

                                     2 u([X])

#### Example 2

Now we transform the dependent variable. Here the old variable must be given as a linear function of the new one.

    >> detools::transform(u([x]) + u([y]), [x, y], [u], NewVars = [U],
                     ChangeOfVars = [u=3*U], "Dep")

                                3 U([x]) + 3 U([y])

Do you have questions or comments?
Copyright © SciFace Software GmbH & Co. KG 2000