The package is available at https://github.com/mobius-eng/RadauBVP.jl

I haven't put it into METADATA yet. I would like to improve documentation 
and add some tests before doing this.

However, it is already usable, mostly optimised (except for sparsity, it is 
coming) and I believe it is the only available free ODE BVP solver for 
Julia right now (the only other alternative I am aware of is `bvpsol` from 
ODEInterface.jl, but it is not free and from limited amount of tests I've 
done, RadauBVP is faster).


On Sunday, October 30, 2016 at 8:40:07 PM UTC+2, Chris Rackauckas wrote:
>
> reshape makes a view, and views are cheap. Don't worry about this.
>
> BTW, I would love to add a collocation method to JuliaDiffEq. Would you 
> consider making this a package?
>
> On Sunday, October 30, 2016 at 3:52:37 AM UTC-7, Alexey Cherkaev wrote:
>>
>> I'm writing RadauIIA (for now, fixed order 5 with 3 points) method for 
>> ODE BVP (basically, collocation method). In the process, I construct an 
>> overall non-linear equation that needs to be solved. It takes "mega-vector" 
>> x[j] as an argument. However, internally it is more convenient to reshape 
>> it to y[m,i,n] where m is the index of original ODE vector, i is the index 
>> of the collocation point on time element (or layer) and n is time element 
>> index. Also, some inputs to the method (ODE RHS function and BVP function) 
>> expect z[m]-kind vector. So far I chose to pass a @view of the 
>> "mega-vector" to them.
>>
>> The alternatives for reshaping and @view would be:
>>
>>    - Use the inline function or a macro that maps the indices between 
>>    mega-vector and arrays (I've tried it, didn't see any difference in 
>>    performance or memory allocation, but @code_warntype has less "red" spots)
>>    - Copy relevant pieces of mega-vector into preallocated arrays of 
>>    desired shape. This can also be an alternative for @view.
>>
>> Is there some kind of rule of thumb where which one would be preferable? 
>> And are there any high costs associated with @view and reshape?
>>
>>

Reply via email to