packages feed

casadi-bindings 2.2.0.8 → 2.3.0.0

raw patch · 9 files changed

+82/−49 lines, 9 filesdep ~casadi-bindings-coredep ~casadi-bindings-internal

Dependency ranges changed: casadi-bindings-core, casadi-bindings-internal

Files

casadi-bindings.cabal view
@@ -1,5 +1,5 @@ name:                casadi-bindings-version:             2.2.0.8+version:             2.3.0.0 synopsis:            mid-level bindings to CasADi category:            Numerical, Math description:@@ -61,8 +61,8 @@                        cereal,                        binary,                        vector-binary-instances,-                       casadi-bindings-internal == 0.1.2.1,-                       casadi-bindings-core     == 2.2.0.2+                       casadi-bindings-internal == 0.1.3.0,+                       casadi-bindings-core     == 2.3.0.0   default-language:    Haskell2010    C-sources:           cbits/handwritten.cpp
src/Casadi/CMatrix.hs view
@@ -43,9 +43,11 @@   triu2symm :: a -> a   tril2symm :: a -> a   copy :: a -> IO a-  dense :: a -> a+  densify :: a -> a   fromDMatrix :: DMatrix -> a   fromDVector :: V.Vector Double -> a+  fromDouble :: Double -> a+  allocEmpty :: IO a   vertslice :: CMatrix a => a -> V.Vector Int -> V.Vector a
src/Casadi/Callback.hs view
@@ -53,13 +53,13 @@   -- | add a callback to an NLPSolver-makeDerivativeGenerator :: (Function -> Int -> Int -> IO Function) -> IO DerivativeGenerator+makeDerivativeGenerator :: (Function -> Int -> IO Function) -> IO DerivativeGenerator makeDerivativeGenerator callback = do   -- safely wrap the callback into the C-friendly version-  let callback' :: Ptr Function' -> CInt -> CInt -> IO (Ptr Function')-      callback' ptrFx nfwd nadj = do+  let callback' :: Ptr Function' -> CInt -> IO (Ptr Function')+      callback' ptrFx nder = do         foreignCFun <- newForeignPtr_ ptrFx-        Function fun <- callback (Function foreignCFun) (fromIntegral nfwd) (fromIntegral nadj)+        Function fun <- callback (Function foreignCFun) (fromIntegral nder)         return (unsafeForeignPtrToPtr fun)    -- turn the callback into a FunPtr
src/Casadi/DMatrix.hs view
@@ -3,7 +3,7 @@ module Casadi.DMatrix        ( DMatrix        , dsparsify-       , ddata+       , dnonzeros        ) where  import qualified Data.Vector as V@@ -28,7 +28,7 @@ putWith :: Monad m => (Sparsity -> m ()) -> (V.Vector Double -> m ()) -> DMatrix -> m () putWith put putVector x = do   put (sparsity x)-  putVector (ddata x)+  putVector (dnonzeros x)  -- Data.Vector.Cereal looks deprecated, it's not in master anymore instance S.Serialize DMatrix where@@ -42,16 +42,16 @@   conjugate = id  fromSparseData :: Sparsity -> V.Vector Double -> DMatrix-fromSparseData s d = unsafePerformIO (dmatrix__6 s d)+fromSparseData s d = unsafePerformIO (dmatrix__1 s d) {-# NOINLINE fromSparseData #-}  dsparsify :: DMatrix -> DMatrix dsparsify x = unsafePerformIO (dmatrix_zz_sparsify__0 x) {-# NOINLINE dsparsify #-} -ddata :: DMatrix -> V.Vector Double-ddata x = unsafePerformIO (dmatrix_data__0 x)-{-# NOINLINE ddata #-}+dnonzeros :: DMatrix -> V.Vector Double+dnonzeros x = unsafePerformIO (dmatrix_nonzeros x)+{-# NOINLINE dnonzeros #-}  instance Show DMatrix where   show x = unsafePerformIO (dmatrix_getDescription x)@@ -98,11 +98,17 @@   {-# NOINLINE zerosSp #-}   solve x y = unsafePerformIO (C.solve__3 x y)   {-# NOINLINE solve #-}-  indexed m sx sy = unsafePerformIO (dmatrix_getSub__3 m False sx sy)+  indexed m spx spy = unsafePerformIO $ do+    ret <- allocEmpty :: IO DMatrix+    dmatrix_get__3 m ret False spx spy+    return ret   {-# NOINLINE indexed #-}-  sparsity x = unsafePerformIO (dmatrix_sparsityRef__0 x)+  sparsity x = unsafePerformIO (dmatrix_sparsityRef x)   {-# NOINLINE sparsity #-}-  getNZ m s = unsafePerformIO (dmatrix_getNZ__1 m False s)+  getNZ m sp = unsafePerformIO $ do+    ret <- allocEmpty :: IO DMatrix+    dmatrix_getNZ__1 m ret False sp+    return ret   {-# NOINLINE getNZ #-}   setNZ m y s = dmatrix_setNZ__1 m y False s   triu x = unsafePerformIO (dmatrix_zz_triu__0 x)@@ -113,13 +119,17 @@   {-# NOINLINE triu2symm #-}   tril2symm x = unsafePerformIO (dmatrix_zz_tril2symm x)   {-# NOINLINE tril2symm #-}-  copy m = dmatrix__10 m-  dense x = unsafePerformIO (dmatrix_zz_dense x)-  {-# NOINLINE dense #-}+  copy m = dmatrix__9 m+  densify x = unsafePerformIO (dmatrix_zz_densify x)+  {-# NOINLINE densify #-}   fromDMatrix = id-  fromDVector x = unsafePerformIO (dmatrix__4 x)+  fromDVector x = unsafePerformIO (dmatrix__0 x)   {-# NOINLINE fromDVector #-}+  fromDouble x = unsafePerformIO (dmatrix__5 x)+  {-# NOINLINE fromDouble #-}+  allocEmpty = dmatrix__10 + instance Num DMatrix where   (+) x y = unsafePerformIO (dmatrix_zz_plus x y)   {-# NOINLINE (+) #-}@@ -127,7 +137,7 @@   {-# NOINLINE (-) #-}   (*) x y = unsafePerformIO (dmatrix_zz_times x y)   {-# NOINLINE (*) #-}-  fromInteger x = unsafePerformIO (dmatrix__5 (fromInteger x :: Double))+  fromInteger x = fromDouble (fromInteger x :: Double)   {-# NOINLINE fromInteger #-}   abs x = unsafePerformIO (dmatrix_zz_abs x)   {-# NOINLINE abs #-}@@ -137,11 +147,11 @@ instance Fractional DMatrix where   (/) x y = unsafePerformIO (dmatrix___truediv____0 x y)   {-# NOINLINE (/) #-}-  fromRational x = unsafePerformIO (dmatrix__5 (fromRational x :: Double))+  fromRational x = fromDouble (fromRational x :: Double)   {-# NOINLINE fromRational #-}  instance Floating DMatrix where-  pi = unsafePerformIO (dmatrix__5 (pi :: Double))+  pi = fromDouble (pi :: Double)   {-# NOINLINE pi #-}   (**) x y = unsafePerformIO (dmatrix_zz_power x y)   {-# NOINLINE (**) #-}
src/Casadi/Function.hs view
@@ -20,6 +20,7 @@ import Casadi.MX ( MX ) import Casadi.DMatrix ( DMatrix ) import Casadi.SharedObject ( castSharedObject )+import Casadi.CMatrix ( CMatrix(..) )  instance Show C.Function where   show x = show (castSharedObject x)@@ -27,18 +28,18 @@  -- | call an MXFunction on symbolic inputs, getting symbolic outputs callMX :: C.FunctionClass f => f -> Vector MX -> Vector MX-callMX f ins = unsafePerformIO (C.function_call__0 f ins)+callMX f ins = unsafePerformIO (C.function_operator_call__0 f ins) {-# NOINLINE callMX #-}  -- | call an SXFunction on symbolic inputs, getting symbolic outputs callSX :: C.FunctionClass f => f -> Vector SX -> Vector SX-callSX f ins = unsafePerformIO (C.function_call__3 f ins)+callSX f ins = unsafePerformIO $ (C.function_operator_call__3 f ins) {-# NOINLINE callSX #-}  -- | evaluate an SXFunction with 1 input and 1 output evalDMatrix :: (C.FunctionClass f, C.IOInterfaceFunctionClass f)                => f -> Vector DMatrix -> IO (Vector DMatrix)-evalDMatrix sxf inputs = do+evalDMatrix sxf inputs = do -- function__operator__call__6   -- set inputs   zipWithM_ (C.ioInterfaceFunction_setInput__2 sxf) (V.toList inputs) [0..] 
src/Casadi/IOSchemes.hs view
@@ -54,10 +54,10 @@   fmap V.fromList $ mapM getElem entries  mkSchemeSX :: InputOutputScheme -> [(String,SX)] -> IO (V.Vector SX)-mkSchemeSX = mkScheme sx__13+mkSchemeSX = mkScheme sx__10  mkSchemeMX :: InputOutputScheme -> [(String,MX)] -> IO (V.Vector MX)-mkSchemeMX = mkScheme mx__8+mkSchemeMX = mkScheme mx__7  mkSchemeCRSSparsity :: InputOutputScheme -> [(String,Sparsity)] -> IO (V.Vector Sparsity)-mkSchemeCRSSparsity = mkScheme sparsity__1+mkSchemeCRSSparsity = mkScheme sparsity__2
src/Casadi/MX.hs view
@@ -98,11 +98,17 @@   {-# NOINLINE zerosSp #-}   solve a b = unsafePerformIO (C.solve__0 a b)   {-# NOINLINE solve #-}-  indexed m sx sy = unsafePerformIO (mx_getSub__3 m False sx sy)+  indexed m spx spy = unsafePerformIO $ do+    ret <- allocEmpty :: IO MX+    mx_get__3 m ret False spx spy+    return ret   {-# NOINLINE indexed #-}-  sparsity x = unsafePerformIO (mx_sparsityRef__0 x)+  sparsity x = unsafePerformIO (mx_sparsityRef x)   {-# NOINLINE sparsity #-}-  getNZ m s = unsafePerformIO (mx_getNZ__1 m False s)+  getNZ m sp = unsafePerformIO $ do+    ret <- allocEmpty :: IO MX+    mx_getNZ__1 m ret False sp+    return ret   {-# NOINLINE getNZ #-}   setNZ m y s = mx_setNZ__1 m y False s   triu x = unsafePerformIO (mx_zz_triu__0 x)@@ -114,13 +120,17 @@   tril2symm x = unsafePerformIO (mx_zz_tril2symm x)   {-# NOINLINE tril2symm #-}   copy m = mx__2 m-  dense x = unsafePerformIO (mx_zz_dense x)-  {-# NOINLINE dense #-}+  densify x = unsafePerformIO (mx_zz_densify x)+  {-# NOINLINE densify #-}   fromDMatrix x = unsafePerformIO (mx__0 x)   {-# NOINLINE fromDMatrix #-}   fromDVector x = fromDMatrix (fromDVector x)   {-# NOINLINE fromDVector #-}+  fromDouble x = unsafePerformIO (mx__3 x)+  {-# NOINLINE fromDouble #-}+  allocEmpty = mx__7 + instance Num MX where   (+) x y = unsafePerformIO (mx_zz_plus x y)   {-# NOINLINE (+) #-}@@ -128,7 +138,7 @@   {-# NOINLINE (-) #-}   (*) x y = unsafePerformIO (mx_zz_times x y)   {-# NOINLINE (*) #-}-  fromInteger x = unsafePerformIO (mx__3 (fromInteger x :: Double))+  fromInteger x = fromDouble (fromInteger x :: Double)   {-# NOINLINE fromInteger #-}   abs x = unsafePerformIO (mx_zz_abs x)   {-# NOINLINE abs #-}@@ -138,11 +148,11 @@ instance Fractional MX where   (/) x y = unsafePerformIO (mx___truediv____0 x y)   {-# NOINLINE (/) #-}-  fromRational x = unsafePerformIO (mx__3 (fromRational x :: Double))+  fromRational x = fromDouble (fromRational x :: Double)   {-# NOINLINE fromRational #-}  instance Floating MX where-  pi = unsafePerformIO (mx__3 (pi :: Double))+  pi = fromDouble (pi :: Double)   {-# NOINLINE pi #-}   (**) x y = unsafePerformIO (mx_zz_power x y)   {-# NOINLINE (**) #-}
src/Casadi/SX.hs view
@@ -55,6 +55,7 @@ ssparsify x = unsafePerformIO (sx_zz_sparsify__0 x) {-# NOINLINE ssparsify #-} + instance CMatrix SX where   veccat x = unsafePerformIO (sx_zz_veccat x)   {-# NOINLINE veccat #-}@@ -92,11 +93,17 @@   {-# NOINLINE zerosSp #-}   solve a b = unsafePerformIO (C.solve__2 a b)   {-# NOINLINE solve #-}-  indexed m sx sy = unsafePerformIO (sx_getSub__3 m False sx sy)+  indexed m spx spy = unsafePerformIO $ do+    ret <- allocEmpty :: IO SX+    sx_get__3 m ret False spx spy+    return ret   {-# NOINLINE indexed #-}-  sparsity x = unsafePerformIO (sx_sparsityRef__0 x)+  sparsity x = unsafePerformIO (sx_sparsityRef x)   {-# NOINLINE sparsity #-}-  getNZ m s = unsafePerformIO (sx_getNZ__1 m False s)+  getNZ m sp = unsafePerformIO $ do+    ret <- allocEmpty :: IO SX+    sx_getNZ__1 m ret False sp+    return ret   {-# NOINLINE getNZ #-}   setNZ m y s = sx_setNZ__1 m y False s   triu x = unsafePerformIO (sx_zz_triu__0 x)@@ -107,13 +114,16 @@   {-# NOINLINE triu2symm #-}   tril2symm x = unsafePerformIO (sx_zz_tril2symm x)   {-# NOINLINE tril2symm #-}-  copy m = sx__12 m-  dense x = unsafePerformIO (sx_zz_dense x)-  {-# NOINLINE dense #-}-  fromDMatrix x = unsafePerformIO (sx__2 x)+  copy m = sx__9 m+  densify x = unsafePerformIO (sx_zz_densify x)+  {-# NOINLINE densify #-}+  fromDMatrix x = unsafePerformIO (sx__1 x)   {-# NOINLINE fromDMatrix #-}   fromDVector x = fromDMatrix (fromDVector x)   {-# NOINLINE fromDVector #-}+  fromDouble x = unsafePerformIO (sx__5 x)+  {-# NOINLINE fromDouble #-}+  allocEmpty = sx__10   instance Num SX where@@ -123,7 +133,7 @@   {-# NOINLINE (-) #-}   (*) x y = unsafePerformIO (sx_zz_times x y)   {-# NOINLINE (*) #-}-  fromInteger x = unsafePerformIO (sx__8 (fromInteger x :: Double))+  fromInteger x = fromDouble (fromInteger x :: Double)   {-# NOINLINE fromInteger #-}   abs x = unsafePerformIO (sx_zz_abs x)   {-# NOINLINE abs #-}@@ -133,11 +143,11 @@ instance Fractional SX where   (/) x y = unsafePerformIO (sx___truediv____0 x y)   {-# NOINLINE (/) #-}-  fromRational x = unsafePerformIO (sx__8 (fromRational x :: Double))+  fromRational x = fromDouble (fromRational x :: Double)   {-# NOINLINE fromRational #-}  instance Floating SX where-  pi = unsafePerformIO (sx__8 (pi :: Double))+  pi = fromDouble (pi :: Double)   {-# NOINLINE pi #-}   (**) x y = unsafePerformIO (sx_zz_power x y)   {-# NOINLINE (**) #-}
src/Casadi/Sparsity.hs view
@@ -59,7 +59,7 @@ {-# NOINLINE scalar #-}  getRow :: Sparsity -> V.Vector Int-getRow s = unsafePerformIO (sparsity_row__1 s) -- todo: getRow in 2.3+getRow s = unsafePerformIO (sparsity_getRow s) {-# NOINLINE getRow #-}  getCol :: Sparsity -> V.Vector Int