LMGC90 Installation and Setup Guide
LMGC90 Installation and Setup Guide
To manage the challenges of manually downloading outdated LMGC90 packages, users can leverage the LMGC90 subversion server for automated access and updates. For Windows, TortoiseSVN simplifies repository management with a graphical interface, reducing the burden of managing individual files. Using the command-line SVN for Unix/Linux systems also provides a streamlined process. Both approaches offer a way to efficiently download and update LMGC90 components, mitigating the risks and inconvenience associated with outdated web links .
Users can obtain LMGC90 through its webpage, but the links may be outdated and incomplete, making it inconvenient to download folders and files one by one. Alternatively, users can use the LMGC90 subversion server for Unix or Windows (via TortoiseSVN). To access, users need to know the project name and can either use anonymous access or personal login credentials for restricted projects. For Unix systems, an svn command is used, while Windows users can use TortoiseSVN with a simple installation process .
Compiling LMGC90 requires a Fortran90 compiler. On Unix, compatible compilers include g95, ifort, pgf90, and others for specific systems (e.g., xlf90 for MAC-Gx, IBM). On Windows with Cygwin, g95 is used. Optimized libraries like ACML (AMD) and MKL (INTEL) can be used, but modifications to the Makefile are necessary. A C++ compiler is recommended for building MatLib, and Python with numpy or f2py is needed for the new front-end. Specific instructions are provided for compiling versions 1 and 2, with details for downloading and building under Unix-like systems .
Integrating Python into the LMGC90 installation process benefits users by providing support for building a new front-end for their applications. Python tools like numpy or f2py are specifically needed, which offer scientific computing capabilities and facilitate interactions between Python and Fortran. This integration allows users to leverage Python's usability and compatibility with LMGC90's core computational routines, enhancing the overall functionality and user experience .
Optimizing the LMGC90 compilation process can involve using optimized libraries such as ACML (AMD) and MKL (INTEL). However, incorporating these libraries requires modifying the global makefile. Additionally, having a C++ compiler is recommended, especially for building MatLib. For Python components, installing numpy or f2py is necessary. These tools and libraries help ensure optimal performance and extend the capabilities of the LMGC90 software during the compilation process .
LMGC90 supports several platforms and compilers for Unix systems. The supported Fortran90 compilers include g95, ifort, pgf90, f90 (HP-Compaq-DEC), f90 (SUN), and xlf90 (MAC-Gx, IBM). This range of compatibility ensures that LMGC90 can be compiled on various Unix-like systems, providing flexibility for users depending on their specific environment and the availability of these compilers .
A user might face challenges such as outdated and incomplete links when trying to download LMGC90 from the web, making it cumbersome to download necessary files one by one. An alternative is using the subversion server, which provides a streamlined process for both Unix and Windows systems through command-line operations or tools like TortoiseSVN, making downloading and managing easier. This ensures access to the latest versions and necessary components efficiently .
After downloading LMGC90, users navigate to the LMGC90 source directory and untar the package. Running a make command with a specified Makefile corresponding to their compiler initiates the blind compilation, where LAPACK and LAPACK95 are rebuilt each time, and MatLib isn't used by default. For customizations, users can avoid unnecessary recompilations of LAPACK by using commands like 'make src_2D' or 'make src_3D', and can modify makefiles for MatLib use or alternative LAPACK libraries by following instructions in the ALIRE guide, found in the LMGC90_dev directory .
LMGC90 is available in several distributions. For LMGC90 version 1, there are distributions like LMGC90 for end-users (containing binaries, source code, and documentation) and examples, which are accessible anonymously. LMGC90_dev and LMGC90_MatLib are sources and extensions with restricted access. For LMGC90 version 2, distributions like LMGC90v2 manuals, docs, and addons, as well as examples and development bindings for LAPACK and MatLib, are available anonymously. LMGC90v2_Pre, a pre-processor, is also accessible anonymously .
TortoiseSVN simplifies the downloading and management of LMGC90 on Windows by providing a graphical interface to interact with SVN repositories. Users can download TortoiseSVN, install it, and use it to checkout repositories by right-clicking on a folder. It offers numerous functionalities accessible via right-clicking, and comprehensive support documentation is available online. This approach avoids the inconveniences of manually navigating and downloading from outdated web links .