Monday, January 27, 2014

Plane Frame Analysis with Graphics

I've now got the screen graphics back into plane frame application, which had been taken out to provide a command line application (cpframe) which can be run from with in other applications. This version I have named gpframe, for graphics plane frame its is still a DOS based application. When converted to run in Windows I will name it wpframe.

It can be called by typing the following in a command prompt:

gpframe

It will then bring up a menu system which will allow selecting a file. (The file name needs to conform with 8.3 conventions, as does the folder structure where the file is located. Which messes up using it under "Documents and Settings\user name\My Documents". The files also need to be in the same folder as the application as it doesn't support moving around folders: the current working directory. The things we now take for granted, though never really a problem in DOS as always worked in the folder where the files were, and called the applications via batch files.)


Opening Screen
Main Menu
Plot Menu
Geometry
Loads
Moment Diagram

Shear Force

Axial Force
Deflection
On first look I did think the deflections were incorrect, with an expectation that the whole frame would sway to the right, but a check with Multiframe indicates similar deflection at the nodes, with an inward pull towards the centre of the frame from both sides. Which is where the Kleinlogel formula and associated diagrams are a useful reference for checking influence of individual loads. The formula typically give a single direction of loading (vertical, horizontal or normal) on a single element of a frame. Unfortunately I don't have the book with me. So I'm guessing (well slightly better than a guess) the vertical component of the wind load on the central gable frame has the net effect of pulling the frame inwards and exceeds the sway that would be produced by the horizontal components of load on the whole frame. If the central span was smaller then the behaviour would be different. It is something which can be assessed by creating additional models of the structure and looking at the influence of individual loads.

It can be downloaded here.

DISCLAIMER :
Users of the software must accept this disclaimer of warranty :
The software is supplied as is. The author disclaims all warranties, expressed or implied, including without limitation, the warranties of merchantability and of fitness for any purpose. The author assumes no liability for damages, direct or consequential, which may result from the use of the software.


Related Posts:


Revisions:
[27/01/2014] Original
[23/04/2016] Changed download links to MiScion Pty Ltd Web Store

Saturday, January 25, 2014

Plane Frame Analysis

Sample03
I have taken the plane plane frame analysis application I previously blogged about here, and ripped out all the DOS based full screen graphics and reduced it to a command line application, and made available for download. To me this is not diminished capability but an enhancement. I never used the user interface as I auto-generated the data files using Borland Quattro Pro (QPro) spreadsheet. However whilst I could launch pframe from within QPro I had to open the data file, run the analysis and then save the results: three steps where one would have done. Now with a command line parameter, the data file can be created and then cpframe can be called from an MS Excel routine to run the analysis on the data file and produce the results file. Though it can be simply used at the command prompt. If type name in without a file name then it will show a brief message on how to use.


cpframe usage
run cpframe
Other wise it is simply called with a data file containing the definition of the structural model, a single load case per file, for example:
               cpframe refF_wrk.dat

screen dump as program runs
Which will then display its progress and generate a results file with the file extension .rpt for report. The report can be read with a simple text editor like notepad, and similarly data files can be created with notepad. Though the primary intent is that data files will be auto-generated by some other application.

Sample01
There are no graphics with this version. Since the graphics in the original version have full control of the graphics screen, its not fully compatible with use in Windows. It works in the Windows XP command prompt but does not seem to work in Windows 7. However can always load FreeDOS onto a bootable flashdrive and run from there.

Noting the benefit of being able to see the geometry and the direction of loading to check the validity of the model, in the near future I will release a version with the menus and graphics put back. However I will be removing the menus for data file creation, as objective is that data files will be created by an external application and I don't wish to expend time fixing such menus up. The source code has already been transferred to Delphi and a windows version part written. We also have a version in Excel/vba (.xla) which is providing the structures engine for cold-formed steel carport and veranda software. {Sorry! Cannot release the original version as the report file it produces implies we did the design of the structure being analysed. Plus it was compiled back in 1996 using Turbo Pascal, and finding the complete source code to compile something similar got complicated.}

Any case the idea isn't to write a stand alone frame analysis application but provide a library, or COM automation server or .net component which can be referenced in other applications, which need structural analysis as a component of a much larger system. A command line application provides a stepping stone towards such objective, it allows use in other applications, but in a more limited way than is possible if can send data direct into the analysis.

In future posts I will provide more sample data files, and an MS Excel workbook with vba code to write such data files. Resources for calculating wind loads and checking capacity of members can be found over on my ExelCalcs profile. Of course meshing it all together to fully automate simple buildings at the point of sale is a fairly massive exercise.

For small manufacturers approaching small engineering consultancies the one thing the consulting engineers have missing from their tool box is frame analysis. The consultants typically use MicroStran, Spacegass or Multiframe to conduct analysis, and therefore the engineers do not have their own tools to integrate into the software they are asked to develop. The simple solution to this is to use Kleinlogel formula, however new publications with such formula are now rare, and the older publications difficult to get hold of. Further there is the problem of finding the appropriate formula for the structure being considered. Sure they could attempt to derive the appropriate formula but that is more time and effort, and as the manufacturer introduces more variety into the structures more formulae are required. Where as  matrix structural analysis is more general purpose, once again there is still the problem of writing the source code and testing it. Also transforming theory into source code not so easy, and books with sample source not so readily available. Though a search of the web indicates recent engineering students/graduates may have experimented with matrix structural analysis using either MatLAB or SciLAB.

My previous contribution to easing this shortfall of analysis tools has been:

  1. Release height/span charts showing the limitations of c-sections for the typical gable frame shed so that can limit the number of standard designs produce detailed calculations for.
  2. Release MS Excel workbooks with Kleinlogel calculations in the worksheet.
  3. Release MS Excel workbook with Kleinlogel formula as vba code for gable frame.
  4. Release table of Contents of Kleinlogel formula book
  5. Release a simple program for checking gable frame size based on Kleinlogel formula.
All of these tools we use in-house for quick decision making, though admittedly my gable frame spreadsheet contains the full design for cold-formed steel: still I believe I've provided all the resources for interested parties to build something similar better adapted to their needs. All the previous releases however have been focused on the gable frame (sample01) where as design of the so called American barn style structure (sample03) is often wanted by manufacturers.  Using plane frame application this is now more practical to accomplish than setting up worksheet calculations in Excel.

The program can be downloaded here


DISCLAIMER :
Users of the software must accept this disclaimer of warranty :
The software is supplied as is. The author disclaims all warranties, expressed or implied, including without limitation, the warranties of merchantability and of fitness for any purpose. The author assumes no liability for damages, direct or consequential, which may result from the use of the software.


Related Posts:

Plane Frame Analysis History our Development

Plane Frame Analysis with Graphics
Plane Frame Analysis Front-End
Plane Frame Analysis Alternative Front-End
Plane Frame Analysis Back-End

Plane Frame Analysis Future Developments



Revisions:
[25/01/2014] Original
[23/04/2016] Changed download links to MiScion Pty Ltd Web Store

Friday, January 03, 2014

I Believe there is a Need to Define the Concept of Software Upgrade

An issue I have with software companies is that what they call upgrades are light years from being upgrades. There should be some peoples law which defines an upgrade. Changing any of the following breaches the concept of upgrade:

  1. File format
  2. User Interface
  3. Reports generated

If I cannot generate the same reports with the software, then it is clearly a different product: the output expected from the product is no longer there and therefore it is clearly different. So if have engineering, accounting software or similar and the developers change the reports, then they have changed the product. If they retain the original reports and add more reports then can consider it to be an upgrade.

If the old program cannot read the file of the new program then its not an upgrade its a change of product. The file format should therefore be designed so that additional data can be added in future. Whilst the file parser/reader should be designed so that it can read what it needs and ignore the rest. Similarly the file writer should be designed so that it can update the data it uses, but otherwise doesn't touch and retains the data it doesn't use. Most old software isn't written such way, and therefore changing the file format would result in a change of product not an upgrade.

Changing the user interface is clearly a change of product. Replacing the popup menus with a ribbon bar, is not an upgrade. Changing the locations of commands in a menu is not an upgrade its a change of the product. Increasing necessity of a mouse and removal of keyboard commands is not an upgrade. Removing commands, renaming commands, none of this represents an upgrade.

Any change which results in a learning curve to get back up to speed with using the software is a change of product not an upgrade. The learning curve should only be for new features, and if don't need them don't need to upgrade, and don't need to learn how to use them.

FreeDOS and USB Flashdrive on Asus EEE PC Netbook

On attempting to get the USB flashdrive to work on my netbook, I read several websites about various drivers the most useful articles being:


  1. DOS USB Drivers (At BootDisk: a useful site for information about booting DOS and/or windows from CD's,to fix problems)
  2. Yes, there are USB drivers for DOS... (From FreeDOS site itself)
  3. Run USB devices under DOS! (TechSpot Forum: From memory where I actually got the drivers from, most other sites had dud links.)
  4. Bret Johnson (A collection of programs for working with USB's at DOS, and extensive documentation of USB technology. Though no quick guide, or example Autoexec.bat and config.sys files.)
  5. USB Made Simple (For those interested in the electronics)

I started out with what appeared to be the simplest and most common appoach of using the seemingly universal Panasonic drivers. It didn't seem to work, but then too many other variables to get a clear check on things. So I decided to take the plunge and start reading Bret Johnson's 186 page document, plus randomly typing commands into DOS with the help switch option, or simply running and waiting for the complaint, then go read the instructions. Actually no real instructions. I opted for putting the following at the end of my autoexec.bat file:

USBUHCI
USBDRIVE

I'm not sure if USBUHCI should be in config.sys. It seemed to work but not consistently. First boot and my drive was E: and a second boot and drive was F:, boot again and back to E: and so forth. However messing with USBHOSTS and DRIVES, I decided I was probably wasting my time.

Wasting my time, because I was starting to get the impression that none of the drivers were actually doing anything. One of the problems is that when the netbook boots most of the information it displays flies off the screen fairly quickly. However, just before disappears off the screen do get to see that it finds either the USB flashdrive or the extrenal USB CD ROM drive if plugged in. I can boot the computer from either.

Actually that was a problem. A while back I downloaded FreeDOS and burnt the ISO file to CD. This time round I downloaded the FreeDOS ISO file and used Rufus to create a bootable USB flashdrive. Problem was that even though can boot from the flashdrive, the installation expects a A: floppy disk drive: so doesn't install. The result I installed the older version of FreeDOS from the CD. Didn't have that problem with Ubuntu, I installed from the flashdrive.

Any case I can boot the flashdrive and work from it. So using my MS Windows XP machine I created a new bootable FreeDOS stick using Rufus, with minimum requirements. That booted and provided access to the two DOS partitions on my harddrive: further more it didn't complain about the partition, as I described in earlier post. This I guess is because the memory stick, was now the C: and the partitions were D: and E:. So it appears it could be a boot sector problem.

Booting from the flashdrive (I prefer memory stick, mainly because I thought flashdrive was one specific brand), I got a nice clean display of all the drives recognised when FreeDOS booted: not cluttered by error messages.

So my next exercise was to disable the autoexcec.bat and config.sys files on my harddrive and boot from the harddisk. Didn't seem much of a problem, as I don't know what most of the rubbish in these files is for anyhow: I'm guessing mostly only of use by those who want to play old DOS games. So all up not having my display cluttered with error messages about stuff I don't have nor need was a good thing. The system thus booted ok, with just the message about the bad partition.

Next thing was to plug in a non-bootable memory stick, and reboot from the harddisk. As expected the computer found the memory stick. Since my harddisk is partitioned I was expecting the harddisk to be C: and D: drives. However the memory stick became the D: drive and the second harddisk partition the E: drive.

Still its something I can work with. As to why it was not apparent in the first place, I guess that is because the memory stick I was using, was set up to be bootable, therefore I removed it from the drive when booting from the harddisk. The flashdrive /memory stick needs to be plugged in at boot time for the computer to find it.

Having to plug the memory stick in, at bootup is not a problem for me: I only have simple uses for a fast operating system. For some people it may be a problem, and the computers ability to find the flashdrives may be a problem if using drivers, Bret Johnson's document provides some trouble shooting guidelines if have such problem. Its how I decided that may be I didn't need any drivers and I was potentially wasting my time trying to get such to work. {With approach adopted I don't need any third party drivers, and therefore no licensing issues.}

I started out using an old 128Mbyte flashdrive, then I setup a 2Gbyte flashdrive to boot to FreeDOS. Given my intended use of FreeDOS either of these flashdrives is plenty big enough to work from without need to setup the computer harddisk.