# Fit smooth spline curves and return the response matrix

### Description

This function will fit smooth spline curves for the gene expression dynamics along pseudotime in a gene-wise manner and return the corresponding response matrix. This function is build on other functions (fit_models and responseMatrix) and used in calILRs and calABCs functions

### Usage

1 2 | ```
genSmoothCurves(cds, new_data, trend_formula = "~sm.ns(Pseudotime, df = 3)",
relative_expr = T, response_type = "response", cores = 1)
``` |

### Arguments

`cds` |
a CellDataSet object upon which to perform this operation |

`new_data` |
a data.frame object including columns (for example, Pseudotime) with names specified in the model formula. The values in the data.frame should be consist with the corresponding values from cds object. |

`trend_formula` |
a formula string specifying the model formula used in fitting the spline curve for each gene/feature. |

`relative_expr` |
a logic flag to determine whether or not the relative gene expression should be used |

`response_type` |
the response desired, as accepted by VGAM's predict function |

`cores` |
the number of cores to be used while testing each gene for differential expression |

### Value

a data frame containing the data for the fitted spline curves.