883 resultados para Programming
Resumo:
A dynamic programming algorithm for joint data detection and carrier phase estimation of continuous-phase-modulated signal is presented. The intent is to combine the robustness of noncoherent detectors with the superior performance of coherent ones. The algorithm differs from the Viterbi algorithm only in the metric that it maximizes over the possible transmitted data sequences. This metric is influenced both by the correlation with the received signal and the current estimate of the carrier phase. Carrier-phase estimation is based on decision guiding, but there is no external phase-locked loop. Instead, the phase of the best complex correlation with the received signal over the last few signaling intervals is used. The algorithm is slightly more complex than the coherent Viterbi algorithm but does not require narrowband filtering of the recovered carrier, as earlier appproaches did, to achieve the same level of performance.
Resumo:
An engineering design environment should allow users to design complex engineering systems, to manage and coordinate the designs as they proceed, and to develop and modify the software tools used for designs. These requirements call for a programming environment with an integrated set of software tools of different functionalities. The required functionalities are mainly: the provision of design algorithms based on suitable numeric software, appropriate data structures for the application area, a user-friendly interface, and the provision of a design database for the long term management of the designs generated. The provision of such an integrated design environment in a functional programming environment with particular emphasis on the provision of appropriate control-theoretic data structures and data model is described. Object-orientation is used to model entities in the application domain, which are represented by persistent objects in the database. Structural properties, relationships and operations on entities are modelled through objects and functions classified into strict types with inheritance semantics and a recursive structure.
Resumo:
Finding an appropriate turbulence model for a given flow case usually calls for extensive experimentation with both models and numerical solution methods. This work presents the design and implementation of a flexible, programmable software framework for assisting with numerical experiments in computational turbulence. The framework targets Reynolds-averaged Navier-Stokes models, discretized by finite element methods. The novel implementation makes use of Python and the FEniCS package, the combination of which leads to compact and reusable code, where model- and solver-specific code resemble closely the mathematical formulation of equations and algorithms. The presented ideas and programming techniques are also applicable to other fields that involve systems of nonlinear partial differential equations. We demonstrate the framework in two applications and investigate the impact of various linearizations on the convergence properties of nonlinear solvers for a Reynolds-averaged Navier-Stokes model. © 2011 Elsevier Ltd.