The Nonlinear Finite Element Toolbox (NLFET)

January 19, 2010 by Admin · Leave a Comment
Filed under: FEM 
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)
VN:F [1.8.1_1037]
Rating: 0.0/10 (0 votes cast)

NLFET is a nonlinear finite element toolbox for MATLAB released under the GNU General Public License (GPL).  The toolbox provides a framework for setting up, solving, and interpreting results for nonlinear static and dynamic finite element analysis.

Example code for a semiactive control system using MR dampers is also available. Please contact  info@nlfet.org if interested.

If you would like to help in the development of NLFET, or if you have any questions, please contact  matt@nlfet.org.

VN:F [1.8.1_1037]
Rating: 0.0/10 (0 votes cast)
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)

Popularity: 2% [?]

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Live
  • PDF
  • Technorati
  • Twitter
  • Yahoo! Bookmarks
  • Add to favorites
  • email
  • MySpace
  • RSS

MATPOWER: A MATLAB Power System Simulation Package

October 24, 2009 by Luigi Giaccari · Leave a Comment
Filed under: FEM, Mathematics, Mechanics, Optimization, Physics 
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)
VN:F [1.8.1_1037]
Rating: 3.5/10 (2 votes cast)

I just found this package on the web, I am sure many people will find it interesting.

pserclogo

MATPOWER is a package of Matlab M-files for solving power flow and optimal power flow problems. It is intended as a simulation tool for researchers and educators that is easy to use and modify. MATPOWER is designed to give the best performance possible while keeping the code simple to understand and modify. It was initially developed as part
of the PowerWeb project.


Download MATPOWER

You will be asked to fill out a brief form the first time you download from this site.

MATPOWER

(current version is 3.2)

See also Optional Packages below.

Terms of Use

  • MATPOWER is free of charge. Anyone may use it.
  • We make no warranties, express or implied. Specifically, we make no guarantees regarding the correctness MATPOWER’s code or its fitness for any particular purpose.
  • Any publications derived from the use of MATPOWER must acknowledge MATPOWER <http://www.pserc.cornell.edu/matpower/>.
  • Anyone may modify MATPOWER for their own use as long as the original copyright notices remain in place.
  • MATPOWER may not be redistributed without written permission.
  • Modified versions of MATPOWER, or works derived from MATPOWER, may not be distributed without written permission.

Getting Started

System Requirements

To use MATPOWER you will need:

Both are available from The MathWorks.

Note: Although it is likely that most things work fine in MATLAB 5, this is not supported due to limited testing resources. MATPOWER 3.0 required MATLAB 5 and MATPOWER 2.0 and earlier required only MATLAB 4.

Installation

  1. Unzip the downloaded file.
  2. Place files in a location on your Matlab path.
  3. Start up Matlab.

Running MATPOWER

To run a simple Newton power flow on the 9-bus system specified in the file case9.m, with the default algorithm options, at the Matlab prompt, type:

    runpf('case9')

To run an optimal power flow on the 30-bus system whose data is in case30.m, with the default algorithm options, at the Matlab prompt, type:

    runopf('case30')

To run an optimal power flow on the same system, but with the option for MATPOWER to shut down (decommit) expensive generators, type:

    runuopf('case30')

For help on other options and parameters, type:

    help runpf
    help runopf
    help runuopf
    help mpoption
    help caseformat

To run the test suite, place the files in the ‘t’ subdirectory in your Matlab path, and type:

    test_matpower

What’s New in Version 3.2

Below is a summary of the changes since version 3.0.0 of MATPOWER. See the CHANGES file in the docs directory for all the gory details.

New features:

  • AC OPF formulation enhancements
    • new generalized cost model
    • piece-wise linear generator PQ capability curves
    • branch angle difference constraints
    • simplified interface for specifying additional linear constraints
    • option to use current magnitude for line flow limits (Set OPF_FLOW_LIM to 2, fmincopf solver only)
  • AC OPF solvers
    • support for TSPOPF, a new optional package of three OPF solvers,
      implemented as C MEX files, suitable for large scale systems
    • ability to specify initial value and bounds on user variables z
  • New (v. 2) case file format
    • all data in a single struct
    • generator PQ capability curves
    • generator ramp rates
    • branch angle difference limits
  • New function to build DC PDTF matrix (makePTDF.m)
  • Added 5 larger scale (> 2000 bus) cases for Polish system. (Thanks to Roman Korab).
  • Improved identification of binding constraints in printout.
  • Many new tests in test suite.

Bugs fixed:

  • Phase shifters shifted the wrong direction, again (v.2 had it right).
  • Fixed bug in pfsoln.m which caused incorrect value for Qg when Qmin == Qmax for all generators at a bus in power flow solution.

INCOMPATIBLE CHANGES:

  • User supplied A matrix for general linear constraints in OPF no longer includes columns for helper variables for piecewise linear gen costs, and now requires columns for all x (OPF) variables.
  • Changed the sign convention used for phase shifters to be consistent with PTI, PowerWorld, PSAT, etc. E.g. A phase shift of 10 deg now means the voltage at the “to” end is delayed by 10 degrees.
  • Name of option 24 in mpoption changed from OPF_P_LINE_LIM to OPF_FLOW_LIM.

Documentation

There are two primary sources of documentation for MATPOWER.

The User’s Manual is included in the distribution (manual.pdf in docs directory) or it can be downloaded separately from the link above.

Each M-file has its own documentation which can be accessed by typing at the Matlab prompt:

    help <name of M-file>

Documentation for the case data file format can be found by typing:

    help caseformat

If something is still unclear after checking the manual and the
help, the source code is the documentation ;-)


Optional Packages

There are three optional packages to enhance the performance of MATPOWER that may be downloaded separately. MINOPF and BPMPDMEX have more restrictive licenses than MATPOWER. Please see the individual Terms of Use for details.

TSPOPF A package of three AC OPF solvers implemented as C MEX files. Suitable for larger scale problems.
MINOPF A MINOS-based AC OPF solver implemented as a Fortran MEX file.
BPMPD_MEX MEX-file version of the high performance BPMPD interior point LP and QP solver. Speeds up DC and LP-based OPF solvers, and improves robustness of MINOPF.

These packages are distributed separately since each has it’s own license agreement and terms of use.


Mailing List

An e-mail list MATPOWER-L@cornell.edu has been set up
to facilitate discussion of MATPOWER. Only list subscribers are permitted to post to the list.

Feel free to use this list to discuss anything related to MATPOWER, to ask questions about MATPOWER, or to provide feedback to the developers of MATPOWER, such as bug reports, patches or ideas for improvements (though we make no guarantees about if/when they might be included).

Also, if you have any of your own Matlab power systems code that you would like to contribute, feel free to contact us via this list about making it available on the MATPOWER web site.

Joining the list

To join the MATPOWER mailing list, send an e-mail to lyris@cornell.edu with the following line in the body of the message, where “John Doe” is replaced by your real name.

    join MATPOWER-L "John Doe"

Sending mail to the list

To send an e-mail to all of the subscribers of the MATPOWER mailing list, simply address your e-mail to MATPOWER-L@cornell.edu. Only subscribers are permitted to send e-mail to the list.

Leaving the list

You can unsubscribe from the list at any time by sending an e-mail to lyris@cornell.edu with the following line in the body of the message.

    leave MATPOWER-L
VN:F [1.8.1_1037]
Rating: 3.5/10 (2 votes cast)
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)

Popularity: 1% [?]

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Live
  • PDF
  • Technorati
  • Twitter
  • Yahoo! Bookmarks
  • Add to favorites
  • email
  • MySpace
  • RSS

Structured Tedrahedral Mesh Generation

August 20, 2009 by Luigi Giaccari · 2 Comments
Filed under: Algorithms, Computational Geometry, FEM 
VN:F [1.8.1_1037]
Rating: +1 (from 1 vote)
VN:F [1.8.1_1037]
Rating: 10.0/10 (2 votes cast)
MexImage

STRUCTTETRAMESH:
StructTetraMesh is a tool to build structured tetreaedral mesh on cuboid dataset. This is usefull in avoiding delaunay 3D triangulation that for  this kind of dataset are particularly slow and numerically unstable.
This tool allows a huge speed improvement against delaunayn for 3D points, the output triangulation will also be “slivers-less”, this is  particularly important for programs that need a conform triangulation like
fem analysis and search structure algorithms.

INPUT:
x,y,z must be vectors, they represent the axis of the cuboid. It is
also very important they need to be sorted. To improve performances there
is no check for sorted vectors so you have to check yourself.

OUTPUT:
The Cuboid points are stored in the p: N x 3 array, the tetraedral mesh
with points index is stored in tetr: Ntetr x 4 array. First point is
flagged with index one.

EXAMPLE

x=1:4;
y=1:6;
z=1:7;

[p,tetr]=StructTetraMesh(x,y,z);
figure(1)
axis equal
tetramesh(tetr,p);

Author: Giaccari Luigi
Created: 18/04/2009

For infos/questions/suggestions : giaccariluigi@msn.com

Download Now

VN:F [1.8.1_1037]
Rating: 10.0/10 (2 votes cast)
VN:F [1.8.1_1037]
Rating: +1 (from 1 vote)

Popularity: 23% [?]

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Live
  • PDF
  • Technorati
  • Twitter
  • Yahoo! Bookmarks
  • Add to favorites
  • email
  • MySpace
  • RSS

Twist Analisys of “Not Standard Sections”

August 15, 2009 by Luigi Giaccari · Leave a Comment
Filed under: FEM 
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)
VN:F [1.8.1_1037]
Rating: 10.0/10 (1 vote cast)
Torsional Analisys
Purpose of this program is studying a not standard section subject to torsional stress. Not standard means the section is not included in engineering Handbooks. It can be studied with FEM analysis with commercial softwares, but sometimes this can become very rough.
Fortunatly Prandtl theory of membrane analogy comes to help, here a simple fem solution with linear triangular element is provided.Given a meshed geometry, it computes the shear stress distribution and stifness using Prandtl membrane analogy. As all fem programs, to give accurate
results, it needs a denser mesh were stress are supposed to have greater gradient and value.

This is a linear analysis effective for small displacements problems with homogeneous isotropic materials.
The tangential elastic modulus will be computed as G=E/(2*(1+poisson));
Note that there is no need of torque value, because of the linearity hipothesis, stresses,rotations and torque are univocally determined once only one of them is known.

Stiffnes modulus is calculeted in Nm/rad, this means is the rotation(rad) provoked by a 1Nm torque to a 1m length bar of the given section.

Inputs:

  • p : Nx2 array of nodes coordinates, [x1,y1; x2,y2; etc]
    IMPORTANT: computation have been made using millimeters!
  • t : Mx3 array of triangles as indices, [n11,n12,n13; n21,n22,n23; etc]
  • E : Elastic modulus of material
  • poisson : poisson ratio of material

Outputs: A grafical rapresentations of:

  • Shear stress
  • Membrane Analogy
  • Stres/torque relationship
  • Tau Flow

The call is:

TorsionFem(p,t,E,poisson)

so it is just necessary to have mesh and materials data.

For bugs, questions, suggestions just contact me at:

giaccariluigi@msn.com

Download Now

VN:F [1.8.1_1037]
Rating: 10.0/10 (1 vote cast)
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)

Popularity: 16% [?]

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Live
  • PDF
  • Technorati
  • Twitter
  • Yahoo! Bookmarks
  • Add to favorites
  • email
  • MySpace
  • RSS

Geodetic Dome

August 7, 2009 by Luigi Giaccari · Leave a Comment
Filed under: FEM 
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)
VN:F [1.8.1_1037]
Rating: 0.0/10 (0 votes cast)

Geodetic dome

This is a simple linear fem analysis of a 3D truss structure. Displacements, stress and strain are calculated.

It Can be used for any structure, you just need to have coordinates and connectivity data.

I tried to make the code the more readeable I could. This way user can change it and make it closer to his own purpose.

For any problems, question, suggestions just contact me at:

giaccariluigi@msn.com

Download Now

VN:F [1.8.1_1037]
Rating: 0.0/10 (0 votes cast)
VN:F [1.8.1_1037]
Rating: 0 (from 0 votes)

Popularity: 14% [?]

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • Live
  • PDF
  • Technorati
  • Twitter
  • Yahoo! Bookmarks
  • Add to favorites
  • email
  • MySpace
  • RSS