I am working in Mechanical engineering and Computer vision, in which I use a matlab code (or codes) to represent a specific system or process. Of course such model has an input , an implimented structure , and an output. In the way of studying the sensitivity analysis of such models, I think of using local sensitivity analysis tests, in which the partial derivative of the models is computed to represent the index of sensitivity of each parameter or variable. My question here is that, If my model cannot be represented by a function to evluate partial derivatives explicitly, is it possible to use directly the numerical methods to derive the partial derivatives? For example, we may run the model for some values $x_1, x_2, ...,x_j,..., x_n$ to give $y_j$, then for the values $ x_1, x_2, ...,x_j+\Delta_j,... , x_n$ to give $y_{j+\Delta}$, and then estimate the partial derivative wrt the variable $x_j$ by $\frac{y_{j+\Delta}-y_j}{\Delta}$. I think this way is straightforward, but how to be assure that our model has a differentiable form i.e. is differentiable? Or let me say, can we speak about difference in variation without including the notion of partial derivatives and differentiability of the model?
I respect any perspective and I highly appriciate your opinions.
Thanks .