casadi-bindings-1.9.0.0: Casadi/Wrappers/Classes/CVodesIntegrator.hs
{-# OPTIONS_GHC -Wall #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
{-# Language ForeignFunctionInterface #-}
{-# Language FlexibleInstances #-}
{-# Language MultiParamTypeClasses #-}
module Casadi.Wrappers.Classes.CVodesIntegrator
(
CVodesIntegrator,
CVodesIntegratorClass(..),
cvodesIntegrator,
cvodesIntegrator',
cvodesIntegrator'',
cvodesIntegrator_checkNode,
cvodesIntegrator_creator,
) where
import Prelude hiding ( Functor )
import Data.Vector ( Vector )
import Foreign.C.Types
import Foreign.Ptr ( Ptr )
import Foreign.ForeignPtr ( newForeignPtr )
import System.IO.Unsafe ( unsafePerformIO ) -- for show instances
import Casadi.Wrappers.Classes.PrintableObject
import Casadi.Wrappers.CToolsInstances ( )
import Casadi.Wrappers.Data
import Casadi.Wrappers.Enums
import Casadi.MarshalTypes ( CppVec, StdString' ) -- StdOstream'
import Casadi.Marshal ( Marshal(..), withMarshal )
import Casadi.WrapReturn ( WrapReturn(..) )
instance Show CVodesIntegrator where
show = unsafePerformIO . printableObject_getDescription
-- direct wrapper
foreign import ccall unsafe "CasADi__CVodesIntegrator__checkNode" c_CasADi__CVodesIntegrator__checkNode
:: Ptr CVodesIntegrator' -> IO CInt
casADi__CVodesIntegrator__checkNode
:: CVodesIntegrator -> IO Bool
casADi__CVodesIntegrator__checkNode x0 =
withMarshal x0 $ \x0' ->
c_CasADi__CVodesIntegrator__checkNode x0' >>= wrapReturn
-- classy wrapper
{-|
>Check if the node is pointing to the right type of object.
-}
cvodesIntegrator_checkNode :: CVodesIntegratorClass a => a -> IO Bool
cvodesIntegrator_checkNode x = casADi__CVodesIntegrator__checkNode (castCVodesIntegrator x)
-- direct wrapper
foreign import ccall unsafe "CasADi__CVodesIntegrator__creator" c_CasADi__CVodesIntegrator__creator
:: Ptr Function' -> Ptr Function' -> IO (Ptr Integrator')
casADi__CVodesIntegrator__creator
:: Function -> Function -> IO Integrator
casADi__CVodesIntegrator__creator x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__CVodesIntegrator__creator x0' x1' >>= wrapReturn
-- classy wrapper
cvodesIntegrator_creator :: Function -> Function -> IO Integrator
cvodesIntegrator_creator = casADi__CVodesIntegrator__creator
-- direct wrapper
foreign import ccall unsafe "CasADi__CVodesIntegrator__CVodesIntegrator" c_CasADi__CVodesIntegrator__CVodesIntegrator
:: IO (Ptr CVodesIntegrator')
casADi__CVodesIntegrator__CVodesIntegrator
:: IO CVodesIntegrator
casADi__CVodesIntegrator__CVodesIntegrator =
c_CasADi__CVodesIntegrator__CVodesIntegrator >>= wrapReturn
-- classy wrapper
{-|
>> CasADi::CVodesIntegrator::CVodesIntegrator()
>------------------------------------------------------------------------
>
>Default constructor.
>
>> CasADi::CVodesIntegrator::CVodesIntegrator(const Function &f, const Function &g=Function())
>------------------------------------------------------------------------
>
>Create an integrator for explicit ODEs.
>
>Parameters:
>-----------
>
>f: dynamical system
>
>>Input scheme: CasADi::DAEInput (DAE_NUM_IN = 5) [daeIn]
>+-----------+-------+----------------------------+
>| Full name | Short | Description |
>+===========+=======+============================+
>| DAE_X | x | Differential state . |
>+-----------+-------+----------------------------+
>| DAE_Z | z | Algebraic state . |
>+-----------+-------+----------------------------+
>| DAE_P | p | Parameter . |
>+-----------+-------+----------------------------+
>| DAE_T | t | Explicit time dependence . |
>+-----------+-------+----------------------------+
>
>>Output scheme: CasADi::DAEOutput (DAE_NUM_OUT = 4) [daeOut]
>+-----------+-------+--------------------------------------------+
>| Full name | Short | Description |
>+===========+=======+============================================+
>| DAE_ODE | ode | Right hand side of the implicit ODE . |
>+-----------+-------+--------------------------------------------+
>| DAE_ALG | alg | Right hand side of algebraic equations . |
>+-----------+-------+--------------------------------------------+
>| DAE_QUAD | quad | Right hand side of quadratures equations . |
>+-----------+-------+--------------------------------------------+
>
>Parameters:
>-----------
>
>g: backwards system
>
>>Input scheme: CasADi::RDAEInput (RDAE_NUM_IN = 8) [rdaeIn]
>+-----------+-------+-------------------------------+
>| Full name | Short | Description |
>+===========+=======+===============================+
>| RDAE_RX | rx | Backward differential state . |
>+-----------+-------+-------------------------------+
>| RDAE_RZ | rz | Backward algebraic state . |
>+-----------+-------+-------------------------------+
>| RDAE_RP | rp | Backward parameter vector . |
>+-----------+-------+-------------------------------+
>| RDAE_X | x | Forward differential state . |
>+-----------+-------+-------------------------------+
>| RDAE_Z | z | Forward algebraic state . |
>+-----------+-------+-------------------------------+
>| RDAE_P | p | Parameter vector . |
>+-----------+-------+-------------------------------+
>| RDAE_T | t | Explicit time dependence . |
>+-----------+-------+-------------------------------+
>
>>Output scheme: CasADi::RDAEOutput (RDAE_NUM_OUT = 4) [rdaeOut]
>+-----------+-------+-------------------------------------------+
>| Full name | Short | Description |
>+===========+=======+===========================================+
>| RDAE_ODE | ode | Right hand side of ODE. . |
>+-----------+-------+-------------------------------------------+
>| RDAE_ALG | alg | Right hand side of algebraic equations. . |
>+-----------+-------+-------------------------------------------+
>| RDAE_QUAD | quad | Right hand side of quadratures. . |
>+-----------+-------+-------------------------------------------+
-}
cvodesIntegrator :: IO CVodesIntegrator
cvodesIntegrator = casADi__CVodesIntegrator__CVodesIntegrator
-- direct wrapper
foreign import ccall unsafe "CasADi__CVodesIntegrator__CVodesIntegrator_TIC" c_CasADi__CVodesIntegrator__CVodesIntegrator_TIC
:: Ptr Function' -> Ptr Function' -> IO (Ptr CVodesIntegrator')
casADi__CVodesIntegrator__CVodesIntegrator'
:: Function -> Function -> IO CVodesIntegrator
casADi__CVodesIntegrator__CVodesIntegrator' x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__CVodesIntegrator__CVodesIntegrator_TIC x0' x1' >>= wrapReturn
-- classy wrapper
cvodesIntegrator' :: Function -> Function -> IO CVodesIntegrator
cvodesIntegrator' = casADi__CVodesIntegrator__CVodesIntegrator'
-- direct wrapper
foreign import ccall unsafe "CasADi__CVodesIntegrator__CVodesIntegrator_TIC_TIC" c_CasADi__CVodesIntegrator__CVodesIntegrator_TIC_TIC
:: Ptr Function' -> IO (Ptr CVodesIntegrator')
casADi__CVodesIntegrator__CVodesIntegrator''
:: Function -> IO CVodesIntegrator
casADi__CVodesIntegrator__CVodesIntegrator'' x0 =
withMarshal x0 $ \x0' ->
c_CasADi__CVodesIntegrator__CVodesIntegrator_TIC_TIC x0' >>= wrapReturn
-- classy wrapper
cvodesIntegrator'' :: Function -> IO CVodesIntegrator
cvodesIntegrator'' = casADi__CVodesIntegrator__CVodesIntegrator''