# Scheduling dependent matrix functions

This is an overview of the functions defined on the `pmatrix`

object. For more information and see recent updates to the code, type `doc pmatrix`

.

Functions | Purpose |
---|---|

`+, -` | Addition and subtraction |

`*, .*` | (Element-wise) multiplication |

`', .'` | (Complex conjugate) transposition |

`^, .^` | (Element-wise) power |

`(:)` | Vectorize `pmatrix` object |

`feval` | Evaluate `pmatrix` for trajectory of extended scheduling signal |

`horzcat` , `vertcat` , `cat` | Concatentation |

`diag` | Create diagonal `pmatrix` or get diagonal elements |

`blkdiag` | Block diagonal concatenation |

`freeze` | Get matrix for specified value of scheduling signal |

`isconst` | Returns whether `pmatrix` represents a constant matrix |

`isaffine` | Returns whether `pmatrix` has affine dependence on scheduling signal |

`ispoly` | Returns whether `pmatrix` has polynomial dependence on scheduling signal |

`iscustom` | Returns whether `pmatrix` has custom dependence on scheduling signal |

`kron` | Kronecker product |

`pdiff` | Differentiates CT `pmatrix` object by specified amount |

`peval` | Evaluate `pmatrix` for trajectory of scheduling signal |

`pshift` | Shifts DT `pmatrix` object in time by specified amount |

`size` | Returns size |

`simplify` | Sort basis functions and remove duplicates |