~ubuntu-branches/ubuntu/lucid/octave-nlwing2/lucid

« back to all changes in this revision

Viewing changes to inst/qcalc.m

  • Committer: Bazaar Package Importer
  • Author(s): Rafael Laboissiere
  • Date: 2009-05-24 18:48:42 UTC
  • Revision ID: james.westby@ubuntu.com-20090524184842-bgxoav6c0rjd0isr
Tags: upstream-1.1.1
ImportĀ upstreamĀ versionĀ 1.1.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
% Copyright (C) 2008  VZLU Prague, a.s., Czech Republic
 
2
 
3
% Author: Jaroslav Hajek <highegg@gmail.com>
 
4
 
5
% This file is part of NLWing2.
 
6
 
7
% NLWing2 is free software; you can redistribute it and/or modify
 
8
% it under the terms of the GNU General Public License as published by
 
9
% the Free Software Foundation; either version 3 of the License, or
 
10
% (at your option) any later version.
 
11
 
12
% This program is distributed in the hope that it will be useful,
 
13
% but WITHOUT ANY WARRANTY; without even the implied warranty of
 
14
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
15
% GNU General Public License for more details.
 
16
 
17
% You should have received a copy of the GNU General Public License
 
18
% along with this software; see the file COPYING.  If not, see
 
19
% <http://www.gnu.org/licenses/>.
 
20
 
21
 
 
22
% -*- texinfo -*-
 
23
% @deftypefn{Function File} {[cl, cd, cm, ad] =} qcalc (flow)
 
24
% Calculates local spanwise quantities for a given flow state.
 
25
% @table @var
 
26
% @item cl
 
27
% local lift coefficient
 
28
% @item cd
 
29
% local viscous drag coefficient
 
30
% @item cl
 
31
% local moment coefficient
 
32
% @item cm
 
33
% local flow twist (difference of local induced angle of attack and global angle of attack)
 
34
% @item alc
 
35
% @end table
 
36
% @end deftypefn
 
37
 
 
38
function [cl, cd, cm, ad] = qcalc (flow)
 
39
  % calc local velocities
 
40
  vx = flow.vxg*flow.g + flow.vx0; 
 
41
  vy = flow.vyg*flow.g + flow.vy0;
 
42
  % local angles of attack
 
43
  alfa = atan2 (vy, vx); 
 
44
  ad = alfa - flow.alfa;
 
45
  % interpolate local lifts
 
46
  wing = flow.wing;
 
47
  cl = spwinterp (alfa, wing, [wing.pol.cl]);
 
48
  cd = spwinterp (alfa, wing, [wing.pol.cd]);
 
49
  cm = spwinterp (alfa, wing, [wing.pol.cm]);
 
50
endfunction