# TSRKSetMultirate
Use the interpolation-based multirate `TSRK` method 
## Synopsis
```
#include "petscts.h"   
PetscErrorCode TSRKSetMultirate(TS ts, PetscBool use_multirate)
```
Logically collective


## Input Parameters

- ***ts -*** timestepping context
- ***use_multirate -*** `PETSC_TRUE` enables the multirate `TSRK` method, sets the basic method to be RK2A and sets the ratio between slow stepsize and fast stepsize to be 2



## Options Database Key

- ***-ts_rk_multirate -*** <true,false>





## Note
The multirate method requires interpolation. The default interpolation works for 1st- and 2nd- order RK, but not for high-order RKs except `TSRK5DP` which comes with the interpolation coeffcients (binterp).


## See Also
 [](chapter_ts), `TSRK`, `TSRKGetMultirate()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ts/impls/explicit/rk/rk.c.html#TSRKSetMultirate">src/ts/impls/explicit/rk/rk.c</A>

## Implementations

<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ts/impls/explicit/rk/mrk.c.html#TSRKSetMultirate_RK">TSRKSetMultirate_RK in src/ts/impls/explicit/rk/mrk.c</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ts/impls/explicit/rk/rk.c)


[Index of all TS routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
