Category Archives: Caminos my dear

Abaqus (getting old ;-) part III)

Last months I’ve been very stressed involved in a pretty project at the GME. Some years ago, my coordinator Jacobo Díaz wrote a program called MEFLAP that created a FEM model with shell elements (with orthotropic materials definition)of voided slab for bridge decks. MEFLAP was conceived as an independent program that called COSMOS/M by Structural Research & Analisys Corporation to run analysis and show results. MEFLAP was written in DEC’s Visual Fortran.

Well, SRAC dissapeared, DEC was taken over by Compaq that was taken over by HP. So, you guessed it, MEFLAP is now a bunch of useless code (the binaries worked well with WinXP but hardly with Vista or Win7). It is the usual result if you use non standard programming languages and privative software.

We have not a free/libre replacement for non linear, FEM analisys programs today. So, if you are going to use a privative program, at least you must use the best. And Simulia Abaqus from Dassault Systèmes is a very good choice. Why? Because it’s a very advanced program with important aids for Civil, Mechanical, Aerospatial Engineering. Because it runs on Unix systems (last versions run on RHEL6 compatible GNU/Linux distributions). And because you can extend/customize Abaqus with a standard, powerful language: Python.

Abaqus write the user sessions as a sequence of Python commands. In fact the CAE has an interactive interpreter so you can run commands in it. It has an scripting interface that runs a Python script. And you can modify the GUI calling Python bindings for the FOX library (that it’s also free software).

The first step was to write a Python script (‘the core‘) that sequentially got the intial parameters, made numerical transformations, defined the final model and passed it to Abaqus via input (.inp) file. Then Abaqus run the analisys. And, when the script recovered the control, it made transformations on the database in order to get the real stresses that the structure bears.

When the script was tested and the results were right I wrote a easy GUI for introducing the initial parameters more easily. So the total program, called now VoidSlab, is launched as an Abaqus plugin.

So I have been very happy learning Abaqus (and improving my Python). I think Dassault are making a great job. And… errr… I wish they release it as free/libre software someday. Why not? Blender showed the way :-) But if they don’t release the code, and GME leave Abaqus, we still can use the core to create voided slab models in another program.

Serpents in my life (getting old ;-) part II)

In the previous post I wrote about one of my projects working at the GME and the new tools for me I used. This post relates to the other project I work on it.
The GME is partner of the MAAXIMUS Project (More Affordable Aircraft through eXtended, Integrated and Mature nUmerical Sizing). We put our knowledge about structural optimization to produce better materials and elements to be used in the aircraft industry–mainly in the AIRBUS Consortium.

Fuselage (source: eurocopter.com)
Fuselage (source: eurocopter.com)

Well, one of our tasks is to design and test some optimization methods. Because the complexity of the real elements to analize these are a collection of numerical methods working together. In fact the process implies using some computer programs: design, meshing, structural calculus, postprocessing tools, and, at the center of the system, the optimization tool.

The optimization tool generates via different engines  series of designs that must be tested by the other tools. Each engine implements a method or family methods. And this is my project: I must develop an engine to be integrated in a Dakota-style framework. I would use the old Fortran to do it. But I needed to program a text file parser, so I decided to make some experiments with the Python programming language.

I hadn’t programmed in Python before. I avoided it in part because I thought Python would have a lot of hype as some years ago it happened with Perl. Some proofs of concept after, I was really happy with the results. It’s true the basic Python was a bit limited to develop the numerical part of the engine. But then I discovered NumPy (now part of ScyPy libraries).

NumPy logo

NumPy allowed me quickly replace some code developed in Matlab language by my fellows and write my own, more clear and simpler code. And, after the experience of implementing some numerical methods, I seriously think it can be a good idea for me to leave Fortran (with the exception of educational purposes) and code Python+NumPy.

The Qt x-perience (getting old ;-), part I)

Some time ago I think about writting my (short) experience programming GUI with C++/Qt/Qwt. This interesting post by Linus Torvalds blaming C++ motivated me again to do it.
As I wrote in a previous post, last year I began to work in the Structural Mechanics Group of my civil engineers School. My first work was to develop a GUI to use with PULO by PhD Arturo Fontán, an engine used to optimize launched bridges. Trends in previous works in our team aimed to use MS VisualBasic, but I made a report evaluating some free and privative software. I considered some topics:

  • easy integration with PULO (it is written in Fortran)
  • respect toward standards
  • economy
  • cross-platform
  • easy learning
  • mature develop platform
  • community of users
  • maintainable

So I wrote about Java, .net, Qt, GTK+, wxWidgets, GNUstep,Fox Toolkit, and FLTK. And, you guess, Qt was the winner for me.
My next step was learning C++. I previously has written code in C, but never C++. In two weeks I learned C++ and Qt enough to make a simple proof-of-concept. I programmed a very (dirty) simple editor.

I learned a lot with two books: The C++ programming language by Bjarne Stroustrup and C++ GUI Programming with Qt4 by Jasmin Blanchette and  Mark Summerfield.

Then I began the real work. Of course, the final code can be cleaned and optimized, but after six months the main target was reached: to have an interface that easily can be used to introduce an initial design of properties and constructive process of the bridge, and read results from the engine and analyze them.

Splash

I used QtCreator to develop the GUI and Emacs to modify the engine. Both with best control version system ever, git, made my work really, shaming easy.

Initial design input
Initial design input

To develop the postprocess I thought on gnuplot, but finally I used the Qwt library because its good integration with Qt.

Postprocess
Postprocess

And what about C++? Well, Linus has strong reasons to run C++ down, but Linus develop operating systems. I think doing all this work in pure C would be a pain. It’s true if you want to program more confortable, you’ll produce a less optimum code. But it’s true too programming with C++ is far to attract monkey coders that only had in mind the fastest solution.

Lone wave

Tomorrow I’ld must be attending to the IV Civil Engineering, Territory and Environment Congress at Málaga (South Spain). Finally I couldn’t travel because domestic problems, so I’m a bit sad.

I’m a bit sad because tomorrow morning my first boss J.R. Acinas will present the paper “POPE. Assisting to the port operations system. Experiences in Ferrol Outward Port”. It shows the first professional work in wich I’ve got involved. We developed in the Ports and Coast Lab of my Civil Engineering School a system that helped to take decissions about operations in the port based in 48/72 hours weather forecast. The program takes wave and wind forecast in great scales and it calculates wave, tide and currents in a thinner grid. And, of course, it was developed with very interesting pieces of free software like Delft University of Technology’ SWAN (Simulating WAves Nearshore), on top of a (Debian) GNU/Linux system.

We finished the works some years ago, but I’m still very fond of it :-) And I’ll be always grateful with Dr. Engineer Javier Eiras because the great work he did and the assistance he made me when he left the team.

Eternal poetry

When I was a teenager I had a controversy with my friends and our the Biology teacher. They said once the paper is destroyed, writtings are missed forever. Meanwhile, I defended even when the paper rots or burns, poetry will survive ever because it’s written on our souls.

Today I finished to read civil engineer José Antonio Fernandez Ordóñez‘ speech in his joining to the Fine Arts Academy of San Fernando. He finished with this paragraph:

“…don’t deceive ourselves, only the work of poets is really everlasting. When there’ll only be ruins of the most beautiful bridges in the world, Mozart’s music will remain so wonderful and new like the first day of its conception…”

So now I think I won that debate :-)

Art & attitude of Civil Engineering

Next November, 30th at my Civil Engineers School we’ll enjoy a very interesting speech of Julio Martínez Calzón [wikipedia, ES] of MC-2. He’s currently one of the best Spanish civil engineers, he has a very impressive (technical and artistic) work in structural design.

Torre Collserola (From Wikipedia.es, under GFDL License)
Torre Collserola (From Wikipedia.es, under GFDL License)

He worked in the 70-80’s with José Antonio Fernández Ordóñez (JAFO) building bridges, but he has a lot of works about another structural types. More than 10 years ago I was lucky of attending another speech where he talked about built-on-the-ground-and-up structures, and he showed three great examples: the Collserola Tower and the sports dome Palau San Jordi in Barcelona, and the Congress Palace in Salamanca.

Highly connected nodes

It’s the leit motiv of my life these days…

fun mesh

  • I’m a member of GPUL, so I’m a free software activist -> I collaborated with ESF-Galicia (Engineers Without Borders) in their migration to free software and open standards.
  • I’m a social volunteer of OCV in Portiño->OCV funds some cooperation projects of ESF in Honduras.
  • GPUL promotes free software -> GPUL has a project of a computer classroom in Portiño
  • Lucía, is another volunteer of OCV in  Portiño-> She got a scholarship to travel and work in a cooperation project of ESF in Honduras.
  • I’m a worker of CartoLab-> CartoLab, ESF and OCV signed an agreement to develop a custom gvSIG to ESF projects in Honduras->I’ll a developer in that project-> Lucía will process the data she’ll take with the free software tool in which I work.

So, I everyday dive in a dense mesh of same names and organizations…

Engineer, but human too

“Until the engineer performs a poetic approach of the nature, he mustn’t operate on it.”

JAFO (José Antonio Fernandez Ordóñez)

These days I’m working among other things [that maybe will make me implode] in a series about Spanish civil engineering in the XX Century through the major engineers. It will be enclosed with some exhibition panels that keep on the inner walls of my Civil Engineers School in order to familiarize the students with the spirit of our profession.

But, as the first speaker will be Ramiro Aurín, the current editor in chief of Ingeniería y Territorio magazine, we’ll be lucky he came with another, beauty exhibition about the 20 years of this magazine Enjoy it if you can! :-)

(Coruña Civil Engineers School, floor 0)

More than W*S

The last days at the Conference were intense, so I’ll write about them at home again.

The second day began with RMS’s speech about patents. We arrived a bit late, but I can certify it was a very good speech again. After it, Richard sold by (benefic) auction his book “Free Software, Free Society” and a cuddly GNU. Gonzalo had a moment of foolness, and now that GNU is now called “the CartoÑu”. Tomorrow will be introduced in society :-)

CartoLab and SitGa teams

After a coffee, I began to jump from a session to another again, looking for the most interesting papers to my work. Barranco and Alvarez from CEDEX showed the power of GRASS in hydrology investigation. Gomariz, Moreno, Cánovas and Alonso from University of Mucia explained the architecture they built to create a GIS to investigate hydric resources. They where the free software radicals in the conference, I think :-) the only (LaTeX) beamer I saw in the three days. I was happy to have concurred in technologic decisions for several solutions in CartoLab with them.

The last speeches for me in the morning where about the wonderful world of  OGC services: David Jonglez from Camptocamp France SAS talked about MapFish; Fonts and Vidal related the evolution of Vissir2, the web visor of the Institut Cartográfic de Catalunya.

After having lunch Gonzalo gave a great speech standing out the importance of developing general free GIS clients to specific pourposes in order to reduce the time of cartographic works. Victor Olaya made the CartoLab in protagonist again with the announce of Nacho going to be part of the
Sextante developing team.

The rest hours to the night were my approach to OSGeo foundation and its Spanish-American chapter. I’ll write about it later. I only can say by now it was really exciting :-)

Great part of attendants went home that night. Gonzalo, Nacho and me ended the night soon at the Camelot Irish pub with Victor Olaya and more people of the conference.

We changed the stage on Friday. The workshops where developed in the Facultat de Lletres of Universitat de Girona. It’s a restored Gothic monastery. I think they could be done a better integrated work, but it’s still a pretty environment.

Carlos Dávila developed a good workshop on Quantum GIS, a GIS client based on GRASS. I never had worked with a GIS program in such depth. Gonzalo runned out to the train station because he must flight to Asturias the same day. In the other side, the rest of CartoLab team had lunch in the central court of the building, under cypresses shadow.

The culmination for me arrived afternoon with Lorenzo Becchi driving a workshop on OpenLayers. I was tired, of course. But I would resist four hours more learning about that wonderful libraries.

That night Nacho and me had dinner at König and we returned to La Lola pub to celebrate those days :-D(I think Catalonians go to bed too soon, but that night we were too tired to worry about it ;-))

Maybe the III Jornadas SIG Libre had the geek level I would like. But it was in fact the cause of it sucess: everybody felt confortable and everybody could find interesting things for their business. I remembered sometimes GPUL’s CTSL’05

Today I’m analysing some documentation I received into the official bag of the conference. I found a very interesting book: “Complete migration to open source software in the Valencian Regional Ministry of Infraestructure and Transport”. It’s a example to follow, as far I could read by now.

It seems next year there won’t be the 4th edition. Why? Because FOSS4G 2010 will celebrate in Barcelona. It is the greatest event about geospatial free software in the world, and Irene Compte,  Lluis Vicens and Lorenzo Becci will work in it. So, I’m sure it’ll be a new sucess, and I
wish to be there :-)

Via Augusta

It’s 4 a.m. I’m trying to write slowly in the darkness because Gonzalo it’s trying to sleep. He will read his paper tomorrow.

Today started the Conference. It seems the usual professional Conference in a four-star hotel, but there is a bit of unformality air. It’s not a geek conference at all (otherwise somebody would burn with gas because the wireless net continuous problems), there are people from different disciplines and organistations (government, university, enterprise, non-profit foundations, even lone developers).

In the opening we could hear some philosophical conferences (web 3.0 gaaaaaa!!!!)  and the launching of some projects related to the GIS world (Simon Jirka on 52º North about  Sensor Web Enablement, and Chris Holmes on OpenGeo about geospatial web services).

After lunch the most technical speeches began. Nacho opened the fire in his session with the releasing of SDIAnalyzer. He beared the network problems too, so he sadly couldn’t improve his speech with a fair demo. Then a pair of speeches followed about Catalonian and Andalusian governments apps around web geospatial services to their citizens.

There was an interesting discussion after the coffe about free (as in freedom) (spatial) data. Once again, governments and non-profit initiatives like OSM exposed their different points of view.

After sunset we went out for a walk with a tourist guide. We could admire how a city was built since the Roman Empire (Via Augusta crosses the city drawing the cardus) to nowadays. It was a pity the cathedral was closed. It’s the Gothic cathedral with the longest span in width nave in the world. We could read in those old stones some history about intolerance of Catholics against Jewish (modern era) and Communist and Anarchists against Catholics (Spanish II Republic and Civil War).

Finally we went to have dinner to a nice restaurant where we eat some typical  dishes. After it, around 100 GISers crossed in the night the city to find an opened pub. We found a pretty pub where two guitarists played a gypsy concert. I got a bit sad during a moment because I lost my session at the Portiño, but we really got fun dancing :-)

(Of course I’m uploading some photos in my gallery.)

And… in four hours… we’ll sing “Join us now and share the software…”

Night and Girona

Two hours ago my buddies at work Gonzalo, Nacho and me arrived in Girona, Cataluña, North Spain. We will attend to the  III Jornadas de SIG Libre (3rd Free GIS Conference). CartoLab will read two papers, release one application, and show a work-in-progress about information management of water projects by  ESF (Engineers Without Borders-Galicia) in Honduras.

Girona at night

I haven’t been in Girona before. It seems a pretty, calm city.We arrived very late, and we were lucky finding the only nice pub where we could eat some pizza and beer :-)I’ll write more tomorrow… (I hope) ;-)

First milestone reached

Finally after fourth months, I have an approved proposal of final degree project. It has been a hard struggle because my first proposal (a cultural-artistic complex I had been conceiving the last years) was rejected. I could explain how absurd is the law in Spain about professions and their scopes, but I merely say you only can do what the law forces you, not what you are ready for. Hackers won’t survive :-P

(It was deeply sad to  realize how civil engineers put artificial limits to the Civil Engineering knowledge development too).

About the project, I’ll draft a intermodal (metropolitan rail bus) station at Betanzos, a strongly medieval city in Galicia betwen the big cities of the region, Coruña and Ferrol. I’ll try to design a Gothic inspirated but with actual concrete forms (economical, functional) structure for it.

I think I’ll get along with Mr. Eduardo Toba, the civil engineer, and lawyer, and poet that will supervise my project. Let’s cross the fingers… ;-)

Frankenstein GUI

The week before Akademy I attended to a course about a Civil Engineering tool called Istram Ispol. It tries to be a killer-app for road and railway projects. It really has a very interesting lot of features, but I really was dissapointed in the second hour of the course, and I was progressively getting angry to the end.

It’s not (only)  a problem it’s not free software, I knew it before registration. The GUI is absolutely horrific. Istram was developed originally in the princpilpe of 90’s for Unix platform, then they jumped to Windows (and they are proud of this action ¿?). So it has now a GUI built mainly in VisualBasic with important wreckage of something similar to X/Motif. Different menus behave in different way with the same actions on them, even there are buttons that behave in different way depending on the point where you press on with the mouse. And the documentation is so poor it’s near imposible to the mean user doing something useful without a training course.

AkademyEs recovered me from the trauma and brought me back the faith in the existence of people capable of build good GUI’s for daily human tasks. That week I didn’t get tired of repeating the same  phrase: “this UI seems programmed by drunken with cheap vodka monkeys”.

My personal Guademy

GPUL was candidate to organize next summer the international Akademy and Guadec. We lost in the competition in favor of Canarias Islands candidate. But we won at least the competition to organize the Akademy-ES last November.

It was a chance to meet again with part of people that came to Coruña to Guademy I. We had three days of high level technical speechs and discussions about KDE in general (with some pleasing exceptions like Ismael Pernas from Dygra Films showing us the work of rendering process with free software).

For me, Akademy-ES was a chance to break my own record of how many hours I can survive without sleep, of course (that Saturday night I went to the Solidarity Party). But Akademy made the desire of taste KDE grow in me. Last months I worked hard with Gnome at the ESF (Engineers Without Borders-Galicia) office in Coruña, and now I began to install KDE in some desktops at the Cartolab.

And no. I have not forgotten the faith in the command line. But I need a soft, beauty approach to free OS’s for the people surrounding me.

GIStheresis

Some weeks ago I wrote about my work at the Territorial Studies Lab. After two months of a interesting, funny stage I left the Lab. Two doors from there, the CartoLab needed a geek person with some knowledge about GNU/Linux systems and Civil Engineering. I hope to be up to my new bosses’ expectations.

As it’s name points to, CartoLab develops cartography works, especially GIS related works. I think I’ll enjoy the next months :-)

Principios para una Ingeniería Civil Humanista

(soon English version)

Estos son unos principios extraídos de una profunda reflexión personal sobre el pasado y el presente de la ingeniería civil en España, intentando extraer el cómo debería ejercer mi profesión. Puede que varios sean muy idealistas, pero no utópicos.

El ingeniero civil…

  • hace cálculos, pero sabe por qué los está haciendo
  • no busca problemas innecesarios, pero tampoco los evita
  • sabe trabajar el detalle, pero nunca pierde la perspectiva global
  • es metódico cuando es posible, pero creativo cuando se requiere
  • nunca deja de aprender pero tampoco deja nunca de transmitir conocimiento
  • trabaja en equipo, se gana la autoridad, decide en soledad
  • es implacable en sus decisiones, pero no pierde la humanidad
  • es consciente de las consecuencias de sus decisiones, pero no por ello pierde la humildad
  • comprende, y modifica la naturaleza, pero sólo lo justo y necesario
  • conoce y comprende la historia, evitando así cometer los errores del pasado
  • entiende el territorio que interviene, y sabe trabajar en todas las escalas que ello requiere
  • resuelve la funcionalidad, optimiza la economía, ensalza la belleza libre de artificios
  • por encima del reconocimiento público y el dinero, vive por y para la ingeniería
  • conoce y se debe a la sociedad a la que pertenece

I was not resting in peace

I have not too much time to update this blog. Really, I never had time to do it, but now I’m aware of this fact ;-) but I’m not going to give up now. Last months were very hard but results where positive: I passed more exams than ever, and, in two months I’ll begin to work in my final degree project as I’ll try to pass the last subjects.

There was another reason to be busy: I began to work in the Territorial Studies Lab. I’m updating the databases of the provincial GIS. We use GISEiel, a derivate of gvSIG (so it’s free software), against postresql databases. It’s not a very complex work but it’s very interesting to familiarize and reflect about how the territory was built.

Some of the following posts are about the lost events and thoughts in this ending summer.