# How to pass additional parameters to curve\_fit in Julia?

**URL:** <https://discourse.julialang.org/t/how-to-pass-additional-parameters-to-curve-fit-in-julia/103031>\
**Category:** General Usage\
**Tags:** question\
**Created:** [August 21, 2023, 1:17pm UTC](https://discourse.julialang.org/t/how-to-pass-additional-parameters-to-curve-fit-in-julia/103031 "2023-08-21T13:17:48Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![stevengj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stevengj/32/71_2.png) [@stevengj](https://discourse.julialang.org/u/stevengj)\
**Post date:** [August 21, 2023, 1:58pm UTC](https://discourse.julialang.org/t/how-to-pass-additional-parameters-to-curve-fit-in-julia/103031/3 "2023-08-21T13:58:55Z")

</div>

> [@trg818](#):
>
> i.e., `par[1]` contains the selector that is not to be changed during fitting and `par[2:3]` contain the actual fitting parameters. Is this possible at all?

Anonymous functions and [closures](https://en.wikipedia.org/wiki/Closure_(computer_programming)) / lexical scoping are your friends here:

```julia-auto
p1 = fixed_parameter
curve_fit((x, p) -> pbase(x, [p1; p]), xdata, ydata, p0)

```

(Assuming you are using the `curve_fit` function from [LsqFit.jl](https://github.com/JuliaNLSolvers/LsqFit.jl).)

In my experience, “how do I pass additional parameters” is _by far_ the most common question for every numerical function that takes a function as a parameter (e.g. numerical integration, root finding, minimization, differential equations), also called [higher-order functions](https://en.wikipedia.org/wiki/Higher-order_function). I think it’s a basic gap in computer-science education for people doing computational science.

---

_[View the full topic](https://discourse.julialang.org/t/how-to-pass-additional-parameters-to-curve-fit-in-julia/103031)._
