FeResPost

A Library distributed under LGPL license that allows you
to automate the post-processing of Nastran and Samcef  finite element results or FE model manipulations
with the programming language of your choice (Python, Ruby, C++, C, C#, VBA in excel...)




FeResPost library System requirements Documentation Downloads Install Mailing list Examples Videos License



FeResPost downloads

Installation of FeResPost

We explain here how FeResPost binaries must be configured to be used on Windows or Linux OS. It is also possible to compile FeResPost from the source. (See FeResPost User Manual.)

Binaries download

Binaries (sources compiled into shared libraries) can be downloaded from FeResPost Downloads page. Just be careful to download the archive that suits your purpose:
  • Choose the version you are interested in (or "thid party contributions", "latest developments"...).
  • Select a "linux" archive if you work on Linux OS, and a "win32" or "win64" archive if you work on Windows OS. If you are using another type of OS, you will have to recompile FeResPost from sources. (See Appendix X.A of FeResPost User Manual for more information.)
  • Select also the right version amount the 32 bits or 64 bits archives. Note that your OS is probably 64 bits. Then, the choice between 32 bits or 64 bits binaries will depend on your installation of ruby, python or of the program with which you use the COM component. For example, many Microsoft Office distributions are still 32 bits, and the 32 bits COM component should then be used.
Because the submission of a new official issue of FeResPost is time consuming, one often publishes "un-official" distributions of the current version including small bug-fixes. Therefore, we suggest FeResPost users to regularly check the Latest Developments for latest sources or binaries on the Downloads page.

More information on FeResPost download is given in the Downloads page and in Appendix X.A of
FeResPost User Manual.

Extraction and configuration

The content of the archive(s) you have downloaded must be extracted in a suitable location. (You choose this location.) Then, the configuration depends on the kind of extension, component or assembly you are using.

We give below a few examples on how you can make it work, but we do not pretend to be exhaustive. The reader is referred to the documentation of the various languages to find an installation procedure that best suits your needs.

Python and Ruby extensions

There is not much to do to access FeResPost extensions from Ruby or Python. You just have to specify the path to the directory that contains the extension you are using:
  • With Ruby it can be done by specifying the path with "-I" command line. For example:
ruby -I../../../SRC/OUTPUTS/RUBY/RUBY_18 printGroups.rb


The path to directory can also be defined by setting or modifying RUBYLIB environment variable. Then, the "-I" option must no longer be used:
set RUBYLIB=D:/SHARED/FERESPOST/SRC/OUTPUTS/RUBY/RUBY_18
ruby printGroups.rb
      1. With Python by copying the "FeResPost.pyd" file in your site-packages directory. (You can also copy the library in your python script directory.) 
copy D:/SHARED/FERESPOST/SRC/OUTPUTS/PYTHON/PYTHON_27/FeResPost.pyd \
             D:/USERS/ferespost/AppData/Roaming/Python/Python27/site-packages

You can obtain the user-site packages directory by typing the command:

    python -m --user-site
  1. The path to directory can also be defined by setting or modifying PYTHONPATH environment variable:
set PYTHONPATH=D:/SHARED/FERESPOST/SRC/OUTPUTS/PYTHON/PYTHON_27
After this you simply run a python script as follows:
python printGroups.py
   
For Ruby and FeResPost extensions, you must also be careful and use the directory that contains binaries that match the version of the Ruby or Python executable you are using:
  • For Ruby,  RUBY_18 directory corresponds to versions 1.8.* of Ruby, RUBY_19 to versions 1.9.* or Ruby, etc.
  • For Python,  PYTHON_26 directory corresponds to versions 2.6.* of Python, PYTHON_27 to versions 2.7.* or Python, etc.

COM component

The servers must be registered before use. For that purpose, a program called “modifyRegistry.exe” is distributed with FeResPost library.This program is to be found in "OUTPUTS/VOM/bin" directory. It is used to add keys to the Windows register:
  • The component can be registered for the current user only, or for all the users. In the second case, the registration program should be used on an account that has administrator privileges.
  • The registration program allows to register the component as well as to unregister it. If you decide to uninstall FeResPost COM component, you should unregister it before removing FeResPost files.
  • You need to register only the "FeResPost.dll" library and the "FeResPost.tlb" type library file so that the selection of files to register should look as follows:
COM registration program and selected files to register
  • When you are ready, you simply click on "Start Registering COM Component" button.
To unregister the component, you do exactly the same ecept that you click on "Start Unregistering COM Component" button at the end.

Note that to use the COM component, you still need to access it from the aprticular environment from which you are using FeResPost COM component. For example, in excel, you use the COM component in VBA language, and you must refer to the COM component via VBA editor. More information on the different ways to do this is provided in the COM examples of FeResPost User Manual, and in a few COM examples provided in this web site.

.NET assembly

The .NET assembly can be registered by copying the corresponding FeResPost.dll library in the Global Assembly Cache (GAC). On my computer it is simply done by dropping of “FeResPost.dll” into “C:/Windows/assembly” directory. Note however that you need Administrators' privilige to perform this operation.

You can also use an assembly without registration. Then, the assembly must be located in the same directory as the one containing the executable. (That is generally what I do when I test a new version of FeResPost.)





by Renaud Sizaire ;