.. _use-case-viscous-fall: A viscous free fall example =========================== Introduction ------------- We consider an object inside a vertical cylinder which contains a viscous fluid. The fluid generates a drag force which limits the speed of the solid and we assume that the force depends linearily on the object speed: .. math:: m \frac{dv}{dt} = - m g - c v for any :math:`t \in [0, t_{max}]` where: - :math:`v` is the speed :math:`[m/s]`, - :math:`t` is the time :math:`[s]`, - :math:`t_{max}` is the maximum time :math:`[s]`, - :math:`g` is the gravitational acceleration :math:`[m.s^{-2}]`, - :math:`m` is the mass :math:`[kg]`, - :math:`c` is the linear drag coefficient :math:`[kg.s^{-1}]`. The previous differential equation has the exact solution: .. math:: z(t) = z_0 + v_{inf} t + \tau (v_0 - v_{inf})\left(1 - e^{-\frac{t}{\tau}}\right) for any :math:`t \in [0, t_{max}]` where: - :math:`z` is the altitude above the surface :math:`[m]`, - :math:`z_0` is the initial altitude :math:`[m]`, - :math:`v_0` is the initial speed (upward) :math:`[m.s^{-1}]`, - :math:`v_{inf}` is the limit speed :math:`[m.s^{-1}]`: .. math:: v_{inf}=-\frac{m g}{c} - :math:`\tau` is time caracteristic :math:`[s]`: .. math:: \tau=\frac{m}{c}. The stationnary speed limit at infinite time is equal to :math:`v_{inf}`: .. math:: \lim_{t\rightarrow+\infty} v(t)= v_{inf}. When there is no drag, i.e. when :math:`c=0`, the trajectory depends quadratically on :math:`t`: .. math:: z(t) = z_0 + v_0 t -g t^2 for any :math:`t \in [0, t_{max}]`. Furthermore when the solid touches the ground, we ensure that the altitude remains nonnegative i.e. the final altitude is: .. math:: y(t) = \max(z(t),0) for any :math:`t \in [0, t_{max}]`. Probabilistic model ------------------- The parameters :math:`z_0`, :math:`v_0`, :math:`m` and :math:`c` are probabilistic: - :math:`z_0 \sim \mathcal{U}(100, 150)`, - :math:`v_0 \sim \mathcal{N}(55, 10)`, - :math:`m \sim \mathcal{N}(80, 8)`, - :math:`c \sim \mathcal{U}(0, 30)`. References ---------- * Steven C. Chapra. Applied numerical methods with Matlab for engineers and scientists, Third edition. 2012. Chapter 7, "Optimization", p.182. Load the use case ----------------- We can load this classical model from the use cases module as follows : .. code-block:: python >>> from openturns.usecases import viscous_free_fall as viscous_free_fall >>> # Load the viscous free fall model >>> fm = viscous_free_fall.ViscousFreeFall() API documentation ----------------- See :class:`~openturns.usecases.viscous_free_fall.ViscousFreeFall`. Examples based on this use case ------------------------------- .. raw:: html
.. only:: html .. figure:: /auto_functional_modeling/field_functions/images/thumb/sphx_glr_plot_viscous_fall_field_function_thumb.png :alt: :ref:`sphx_glr_auto_functional_modeling_field_functions_plot_viscous_fall_field_function.py` .. raw:: html
.. toctree:: :hidden: /auto_functional_modeling/field_functions/plot_viscous_fall_field_function .. raw:: html
.. only:: html .. figure:: /auto_functional_modeling/field_functions/images/thumb/sphx_glr_plot_viscous_fall_field_function_connection_thumb.png :alt: :ref:`sphx_glr_auto_functional_modeling_field_functions_plot_viscous_fall_field_function_connection.py` .. raw:: html
.. toctree:: :hidden: /auto_functional_modeling/field_functions/plot_viscous_fall_field_function_connection .. raw:: html
.. only:: html .. figure:: /auto_meta_modeling/fields_metamodels/images/thumb/sphx_glr_plot_viscous_fall_metamodel_thumb.png :alt: :ref:`sphx_glr_auto_meta_modeling_fields_metamodels_plot_viscous_fall_metamodel.py` .. raw:: html
.. toctree:: :hidden: /auto_meta_modeling/fields_metamodels/plot_viscous_fall_metamodel