# Conversion Functions - Examples

### Example 1

Given * x* (

*rhs*), the

*function returns the absolute value of the elements*

**abs***(*

**x***lhs*). When

*is complex*

**x***is the modulus complex of the elements*

**abs(x)**

**x.**In the real case *rhs* and *lhs* have the same size, type(Double always) and properties, but in the complex case the properties are different (*rhs* is complex and *lhs* is real).

So if the *rhs* dimension is known then sci_abs affects the same dimension to lhs, else it affectes the unknown dimension to lhs (defined by -1). However Even if the *rhs* property is unknown, sci_abs affects a Real property to *lhs.*

In this case it's easy to write the conversion function which uses 3 main functions:

*getrhs*: to get the rhs tlist

*Rhs*: to create a new rhs tlist

*Type*: to change the lhs type

#### sci_abs

function [tree]=sci_abs(tree) A=getrhs(tree) tree.rhs=Rhs(A) tree.lhs(1).dims=A.dims tree.lhs(1).type=Type(Double,Real) endfunction

### Example 2

#### sci_max

function [tree]=sci_max(tree)