Jump to content


  • Content Count

  • Joined

  • Last visited

1 Follower

About Crashphys

  • Rank
    Advanced User

Profile Information

  • Country
  • Are you University user?

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. For question 1, you will need to upload both your MATLAB code and your model, at the very least your model. Implementation is likely the difference in the results. Make sure you validate both your code and model according to some kind of baseline. For question 2, OptiStruct (the solver), uses the SIMP method to perform Topology Optimization. The SIMP method is costly when performing topology optimization if you use a discrete approach (that is, either 1 or 0 for element density). To overcome the issue, OS uses a relative density between 0 and 1. Given these relative densities, you as the designer will have to determine what elements you will remove and which will remain. Usually you assign a cut-off of something like anything <0.67 relative density is zero volume. The ISO slider allows you to quickly view which elements are under a certain relative density so that you can determine which is which.
  2. Hi, When I run optistruct static through Hypermesh and am using /ACCEL cards, I get the following error. I edit the card and assign a direction, however, it instead exports the 0.0 I have highlighted and bolded. Is there a reason for this? Seems like a bug. If I go into the .fem file and change the 0.0 to a Z myself, it works but I do not want to have to do this every time I run. Also, when I run my edited .fem, I am not able to see composite stresses by layer. Did I miss something? *** See next message about line 25808 from file: H:/Hopper Car FINAL/Optimization Scheme 4 - New Plan 01-22-2020/6 Characteristic Panel Optimization/Panel 4 FEM Creation/HopperCarPanel4.fem "ACCEL* 4 0 0.0 0.0 -12.30.0" *** ERROR # 4950 *** Components direction can only be 1/2/3 or X/Y/Z in bulk card ACCEL. *** Run terminated because of error(s) in the input data. Attached is my .hm file and my personally edited .fem file. HopperCarPanel4_HC.fem HopperCarPanel4_HC.hm HopperCarMatrix_AX.pch
  3. Hello Mr. Alb, I had to take some time to consider what you're saying. The problem with optimizing my whole model all at once is that it is infeasible. I would end up with hundreds of design variables which are highly non-linear and convergence would be unlikely. The only way I can think of is to create a submodel. In another post I made: I found out how to create a break-out model in linear static FEM. What I want to do is take those equivalent forces and apply them on my submodel. The problem is I don't see how I can constrain it. For example, see my two models attached. One is my local and one is my global model. The local model has the resultant forces on each node from the global model applied through linear interpolation. The thing is, the edges of the local panel model I have are not stationary, they should be able to move a certain amount, but unconstraining them too much also results in disagreement in results. What I am wondering is the best methodology to constrain the panel. How should the edges of my local panel be constrained such that the model is at least close to reality as possible? To my understanding, there must be some kind of way, otherwise how could such huge and complex systems such as aircraft be optimized? Edit: As an example, see this outside link: https://structures.aero/blog/submodels-breakout-models-fea/ In this article, they mention one use of submodelling/breakout models is to iteratively design local component so that you don't need to run your full model. Quoting: "When should I use submodels? In what circumstances might you use a submodel? When a small design change requires analysis. When a small portion of a large design needs to be iteratively designed You don’t want to have to run your large analysis model over and over again. Instead, you can iterate the submodel and save computation time on the solution. When a feature is added to an existing part. In our first example, we will look at a scenario where avionics wants to add a pass-through to a wing-rib. It will be computationally expensive to run the entire model just to analyze the new mesh on the rib, so a breakout model would be useful." EquivalentStaticModel_Global.fem EquivalentStaticModel_Panel4l.fem
  4. Hello, I was following the tutorial HM 9010 up until step 8. When I get to the highlighted step, no loadcases are found. I did skip the first part because I am not interested in creating shear moment/potato plots and started from step 7. The tutorial said I could start from this point. If anyone has suggestions on what I might have missed please let me know. I would also like to know: When performing analysis on a cross section, how can I also enforce the displacements correctly? See the last two pictures attached: The first is a panel in my global model. The second is my panel in the DFEM (.fem files attached). I used the FBD->Forces tool to extract the loads on the section I want, however when I import those forces to my model via BC->Create->Forces->Interpolation, I end up with a ridiculous stress concentration in one part of my model. I'm not sure why this happens, but as far as I can tell there is no way to constrain the model correctly according to the global model. In the global model, all nodes are displaced a certain amount, but in the DFEM the nodes along the edge are forced to be constrained. Is there a way to ensure agreement between the two models? EquivalentStaticModel_Panel4l.fem EquivalentStaticModel_Global.fem
  5. Hi, I am trying to connect the beam modelled as 3D elements to the composite plate. Is there a faster way to do this? I tried using spot connectors and it did not work... It turns out that the reason connectors are not working well is because I am running a modal analysis. Can anyone explain why rigids cause problems in modal analysis? .
  6. Thank you for the info. Considering I have to import the displacement data, is it possible to create a refined mesh of the portion of interest too, or will it have to be the same mesh exactly? Thanks
  7. Is it possible to create a breakout model in hypermesh? I want to take a part of a large model and analyse that on its own. Thanks
  8. Hi, I realise this site is mostly for software help, however I am wondering if anyone can recommend any documentation on how to take characteristic sections of your model and do FEM on those? For example, imagine you are designing a plane wing iteratively. It is really hard to get convergence if you optimize each beam and panel all at once, so you take one characteristic panel and optimize that in a separate model. Now you need to generate an FEM of this characteristic panel, however this panel was part of a much more complex system of moving parts. My question is how you would constrain this panel. In the global model, the edges of this panel might have a displacement by a certain amount. Is there a specific and easy way to tell the BCs to allow for a certain amount of displacement before loads begin deforming the panel? Thanks
  9. Hi Robert, Thanks for the answer. I implemented the suggestions as you recommended. I did not constrain the center node of the RBE3 elements and have attached the undercarriage beams to the dependent node, while the independent nodes are on the shells. The issue however is still persistent. Is there anything else I may have screwed up? It seems to work fine when I perform static analysis, however it can't seem to handle modal... Looking at the statsub file, it seems the point in the simulation causing problems is from this part of the run: Total time spent in section :AMLSPRP2; CPU= 23.55; WALL= 224.67 Total time spent in section :AMLSPRP3; CPU= 12.09; WALL= 126.00 Would you be able to explain to me what this step does? Thanks again! EquivalentStaticModel_TopologyInterp.fem
  10. Hi, This is very complicated but can be done: %uploading a .fem to optistruct and reading punch file using matlab %step 0 add punch card request(s) at the top of the file % DISPLACEMENT(SORT1,PUNCH,REAL,NORMAL) = ALL % ESE(PUNCH,PEAK) = ALL %element strain energies (for compliance optimization) % GPFORCE(PUNCH,REAL) = ALL % GPSTRAIN(PUNCH,GLOBAL,ALL) = ALL % STRAIN(SORT1,PUNCH,REAL,ALL) = ALL % STRESS(SORT1,PUNCH,REAL,ALL,CENTER) = ALL %step 1 get path to fem path_new_fem = "INSERT FILEPATH TO FEM FILE HERE"; %step 2 get path to optistruct loc_opti = 'C:\Program Files\Altair\2017\hwsolvers\scripts\optistruct.bat'; %step 3 send to solver using system() or dos() command_string1 = char(strcat('"',loc_opti,'" "',path_new_fem,'" -monitor')); answer = system(command_string1); %step 4 get path of the punch file punch_path = 'INSERT FILEPATH TO PUNCH FILE'; %step 5 read the punch file PCH = reading_punch(punch_path); Using this code, matlab will run optistruct. One thing I have not included is the reading_punch code, which reads a punch file output from NASTRAN/OS. If you need this let me know, however I am certain punch file readers exist for matlab online already. If you are going to do it this way, you will need many other scripts, including one which will take your input variables calculated by matlab and write them to an FEM file. The punch reader can be used to read outputs from OS to matlab such as stress etc. What you will need is heavily dependent on what you are trying to do.
  11. Hi, I am running the following model in OS. Due to issues with artificial stress concentrations, I applied RBE3 to distribute the loads more realistically. At the same time, I am also running a modal analysis as subcase 5. When I run, I get the following information message: *** INFORMATION # 3454 MPC constraints for subcase 5 will be enforced with elimination of dependent dofs. The simulation is stuck at 3% for a very long time before finishing. Is there something theoretical I am missing here about RBE3 and its validity in modal analysis? Thanks EquivalentStaticModel_TopologyInterp.fem
  12. Hi, When I run OptiStruct I get xxxx.out, then when I run I get xxxx_1.out, then xxxx_2.out on the next run and so one. I am having matlab read my .out file and running OptiStruct through it as I go, so I need it to keep overwriting the file as it goes. How can I make it so I get only one output file that keeps getting overwritten? Thanks in advance Edit: Sorry, immediately after I posted this I found a solution. In case anyone happens to be looking for it ever, here it is: https://insider.altairhyperworks.com/syssettings-save-file/
  13. Hi, I got my sysadmin to update me to OS 2019. It currently runs slower than it did on 2017, please advise what the issue could be. The one labelled with _013 was run on OS2017 2 days ago. Without the label was run this morning with OS2019. I also have attached a run where I used one core and -np 4. It appears that CPU time is not improved, however wall time increases. Is there a reason for this on my end? Something which did not occur to me: is SPMD or SMP recommended for a single Linear Static analysis? I have four load cases. Is this something which can be effectively parallelized? Thanks HopperModel.stat HopperModel_013.stat HopperModel_onecore.stat HopperModelnp4.stat
  14. Hi, I am using SPMD on the attached model with: -optskip -mpi i -ldm -np 4 Without using LDM, I get a simulation time of 19 seconds. With it, I get 18 seconds. Is there anything else I can do to speed up the simulation? Am I perhaps using it incorrectly? I used the attached guide to start the SPMD run. I also tried SMP and it did not give any noticeable advantages. HopperModel.fem OptiStruct SPMD.docx
  15. Hi, In the pictures shown, I am using the mesh refinement toolbox as instructed by the guide, however instead of a refined mesh, it is also shrinking my elements: Result: Can anyone explain? Thanks Edit: With a more refined mesh:
  • Create New...