Contents     Functions     Index     Previous Next     PDF

fe_cyclic

Purpose

Support for cyclic symmetry computations.

Syntax

 model=fe_cyclic('build NSEC',model,LeftNodeSelect)
 fe_cyclic('display NSEC',model,def,EltSelect)
 def=fe_cyclic('eig NDIAM',model,EigOpt)

Description

fe_cyclic groups all commands needed to compute responses assuming cyclic symmetry. For more details on the associated theory you can refer to [44].

Assemble [,-struct]

This command supports the computations linked to the assembly of gyroscopic coupling, gyroscopic stiffness and tangent stiffness in geometrically non-linear elasticity. The input arguments are the model and the rotation vector (in rad/s)

 model=demosdt('demo sector all');
 [m,k,mdof]=fe_mknl(model);
 SE=fe_cyclic('assemble -struct',model,[0 0 1000]); % 
 def=fe_eig({m,k,mdof},[6 20 0]);    % Non rotating modes
 def2=fe_eig({m,SE.K{4},mdof},[6 20 0]); % Rotating mode shapes
 [def.data def2.data]

Note that the rotation speed can also be specified using a stack entry model=stack_set(model, 'info', 'Omega',[0 0 1000]).

Build

model=fe_cyclic('build nsec epsl len',model,'LeftNodeSelect') adds a cyclic symmetry entry in the model case. It automatically rotates the nodes selected with LeftNodeSelect by 2π/nsec and finds the corresponding nodes on the other sector face. The default for LeftNodeSelect is 'GroupAll' which selects all nodes.

Display

fe_cyclic('display nsec',model,def,'EltSelect') repeats the model elements selected with EltSelect (default is 'GroupAll') and displays the resulting model and deformations def on nsec sectors.

Eig

def=fe_cyclic('eig ndiam',model,EigOpt) computes ndiam diameter modes using the cyclic symmetry assumption. For ndiam>0 these modes are complex to account for the inter-sector phase shifts. EigOpt are standard options passed to fe_eig.

This example computes the two diameter modes of a three bladed disk also used in the d_cms2 demo.

  model=demosdt('demo sector');
  model=fe_cyclic('build 3',model,'groupall');
  fe_case(model,'info')
  def=fe_cyclic('eig 2',model,[6 20 0 11]);
  fe_cyclic('display 3',model,def)

TEig

The TEig commands seek to compute modes for multiple diameters in a single job. With a model saved in structure Up, you can specify target diameters, eigenvalue options and possibly a file name to save intermediate results

  model=demosdt('demo sector 5');
  fe_case(model,'info')
  def=fe_cyclic('teig 0 1 3 5',model,[6 20 0 11],tempname);
  fe_cyclic('display 5',model,def)

Finally def=fe_cyclic('teig',[0 1 3],d0,d1,d3); can be used to merge modes computed elsewhere in the typical multi-diameter solution.

Nast

Nast commands are not distributed with the base SDT. Please get in touch with SDTools for licensing possibilities.

NastPreStress

NastPreStress computes the modes of a rotating structure. A first static job computes the effect of centrifugal loading. This job can use either linear (SOL 101) or non-linear (SOL 106) statics. A NASTRAN job restart is then used compute the modes at the selected target diameters.

 tname=nas2up('tempname _rot.dat');
%
 model=demosdt('demo sector 6');
 femesh(model);FEel0=FEelt;femesh('hexa82hexa20');FEelt=FEel0;model=femesh;
 model=fe_cyclic('build 6',model,'groupall');
 model=stack_set(model,'info','Omega',1000); % rad/s (NASTRAN uses rev/s)
 model=stack_set(model,'info','EigOpt',[5 10 0]);
 model=fe_case(model,'par','Blade','withnode {r>.035}');
 %model=stack_set(model,'info','NasJobOpt','memory=8GB');
 fe_case(model,'info')
 st2=nas2up('NameTrailer _include.dat',tname);
 fclose('all');delete(st2);naswrite(st2,model);
 com=sprintf('NastPreStress -linear -run 0 1 include %s',st2);
 %com=sprintf('NastPreStress -nonlinear -run 0 1 2 include %s',st2);
 def=fe_cyclicb(com,tname,model);
 com=sprintf('NastPreStress -linear -disk -run 0 1 include %s',st2);
 DISK=fe_cyclicb(com,strrep(tname,'_rot','_disk'),model);
 DISK=stack_set(DISK,'info','EigOpt',[5 40 0 11 1e-8]);
 dr2=fe_cyclic('diskeig',DISK)

 fe_cyclic('display 6',model,dr2,'selface',DISK)
 %figure(1);plot(1:size(dr2.data,1),dr2.data(:,1),'-', ...
 % 1:size(def.data,1),def.data(:,1),'+')

With the -FixRing option a list or selection of fixed ring nodes is assumed to be stored in a 'info','FixedRing' stack entry. This entry defaults to the first node of the right interface. The first ring node not on the left interface is fully fixed. Nodes on the left interface are left untouched since they are contrained by cyclic symmetry conditions, other nodes have their ur and uz components blocked.

With the -disk option, a reduced sector model is built for use with fe_cyclic disk commands.

With the -run option, NASTRAN is started automatically (see nas2up Job commands for configuration information).

NastTeigMK

Computations of modes at multiple diameters in a single NASTRAN run. Accepted variants are

Reduce

The Reduce command is used to generate a disk model from a set of modes associated multiple diameters symmetry. The general call is

 DISK=fe_cyclic('reduce',model,def);

See also

Section 7.13

©1991-2008 by SDTools
Previous Up Next