Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by GonPer

  1. Hi vale, Read: "Member size control for Topology optimization - Minimum member size control", in Optistruct User Guide. I think it has a better explanation. Keep in mind that p is only a penalty factor. There must be something to choose which elements are penalized due the MINDIM card and DISCRETE acts on all elements. Both MINDIM and DISCRETE work different, as said in the user guide section mentioned above. However in my opinion, the only way you will understand it well, is to try both in a simple model such as a plate and analyse carefully the results. Hope it helps, Best regards, Gonçalo
  2. Hi Mehmet, Toplogy optimization filters the stress results. So there wont be any stress concentration. With this said you can't base your results in the stress obtained in this optimization. You must do a static study of the optimized smooth geometry in order to get the correct stresses. Best regards, Gonçalo
  3. Hi Nicolas, Extract the ply shapes as surfaces with Aerospace profile - Ply geometry smoothening. Then thicken it to the desired thickness. Or Use Aerospace profile - Shell to solid conversion, and then you can extract surface mesh from 3d mesh using FACES option in HyperMesh. Go to Tool page>> FACES>> Select elements/components>> find faces I hope it helps, Best regards, Gonçalo
  4. Hi neelc14, Check the constraints. I think you have an unconstrained model. Best regards, Gonçalo
  5. I ve sent a pdf via Filetransferlink with an example. Best regards, Gonçalo
  6. Hi Prakash, I've suceeded using this, but althought shuffling is divided into ranges of plies, I did not achieved a converged study yet. The way to go is to make a shuffling design variable for each range, using the same laminate. There wont be any error in the .out file. I know it did not work by observing the results. Just another thing I want to sugest, I'm making a cyclic symetric part and for this many simplifications must be made. If there were an option to glue plies together to be shuffled, it would help a lot. The current way is not possible to consider overlapping of different plies and the correct orientation. This because I need to make a super ply instead of using multiple plies with the different orientations in order to get a cyclic symmetric result. It's not difficult to implement and will expand Optistruct capabilities even more. The objective would be to make one ply by joining multiple plies with different directions and overlapping, it's like a set of plies to be used in the laminate and etc... Thank you and Best regards, Gonçalo
  7. It's working, however I need to implement more than one RANGE parameter. I've tried: + RANGE 1 20 21 30.... and + RANGE 1 20 + RANGE 21 30 ... And neither work because it only reads "+ RANGE in last". Is it necessary to divide in multiple stack cards? Best regards, Gonçalo
  8. Thank you Prakash, I will implement it in the model right away. Best regards, Gonçalo
  9. Hi everyone, In the Optistruct 13.0 Reference guide, it says that in the DSHUFFLE card can be defined a RANGE parameter. However I can't find it in my software which is v13.0. Can anybody explain why? Thank you, Gonçalo
  10. Hi Nicolas, You will get the correct thickness from size optimization. Free size is good to take ply pattern and thickness estimation. Free size optimizes element orientation thickness continuously, so the thickness of each ply varies across geometry. Then FSTOSZ just simplify the model by dividing the continuous distribuition into 4 (default) ply shapes with a certain median thickness. You cant base your results from free-size, it's just to get an idea on where to put material so you should start with a little bit higher thickness in the plies. This in order to have sufficient orientation thickness where it is needed. The Size optimization will optimize ply thickness, so you can use TMANUF in order to get a multiple of this number as ply thickness. Hope it helps. Best regards, Gonçalo
  11. Hi Prakash, Thank you for your help. Just another thing, I dont know why but the SZTOSH option, produced a .fem file that is all changed up. Different orientations in plies, lost ply systems, different element sets in the plies. So it isn't usable. When I used this option with simple models it worked ok, I dont know why it didn't work this way. I will do it by hand, but just for information I think you should let the Devs know aswell so they can improve it. Best regards, Gonçalo
  12. Hi Prakash, Yes I had it on. But it isn't necessary because all the 45, -45 plies are connected in the same desvar. Another thing that did not make sense, was that the numbers on desvars and dlinks in the error were not the same as I defined. So far is runing without problems. Thank you very much, I tought that one week of work went down the toilet, but fortunetly no. Best regards, Gonçalo
  13. Also I dont have any DLINK card defined. I guess the error says DLINK maybe because the DVPREL uses a DLINK to connect to DV? Gonçalo
  14. Hi Prakash, Thank you for your fast answer. The error is: *** ERROR # 532 *** Independent DESVAR -2 on DLINK 6 is also declared dependent on DLINK -2. I created 20 DV. I have 116 plies and made the generic relationship to each ply, linking it to a DV. Each DV has multiple plies linked to it via the generic relationship. Didn't link DV to DV, linked multiple DVPREL to a DV. best regards, Gonçalo
  15. Hi everyone, I m making a composite size optimization and need to use the same design variable to multiple plies. Simplified, I need several different plies to have the same thickness and I need several plies with diferent thickness aswell. I formulated the problem this way and create a generic relationship to each ply, using only one design variable for multiple plies. This didn't work and appeared an error. I checked the dlink card but I dont know if that fits my purpose because how can I link DVs in order to have the same value? Any ideia on how can I do this? Best regards, Gonçalo
  16. Hi Frehab, The NORM will only try to normalize the difference between the eigen values and the compliance. If there is much diference between the sum of W*C and the norm... You should put weigths in the eigenvalues. As far as the different weigths (both eigenvalues and compliance), I will give an simple example to you. Being weigths = Wi and compliance = Ci. Imagine two load cases which give a certain compliance. C1 = 2000, C2 = 20 If you have W1=W2=1 this will give sum WC = 1*2000 + 1*20. Which means, if a variation in the optimization of 5 is present in C1 or in the sum W*C, this is nothing. But if a variation of 5 is present in C2 is a lot. This means that the optimization will be based on the C1 because of the convergence target of the optimization, which will be a diference between iterations of the objective. And this must be computanional efficient, so the gradient optimizer will not be here searching for ever for better results and will accept the result when it is not changing much. On the other hand if you use: w1=1 and W2 = 100, this will give a sum WC = 1*2000 + 100*20 = 2000 + 2000. In terms of a mathematical problem those will matter the same. I dont know if there is some built in algorithm for this or not. You do not have to be rigorous with this, as long as it is near the magnitude, should be ok. And it depends if this a engineering problem or school problem. The room for playing with this will be different because if this is a engineering problem you want results fast and not be here searching for perfection which you wont get. That's also a problem with the constraints, but there, the penalty factor increases in order to achieve same orders of magnitude. I'm not at all familiar with the way the optimizer has been formulated, I'm talking from experience in simple examples outside Optistruct. Hope you got it. Best regards, Gonçalo
  17. Hi Frehab, Mass is always the first priority, but in my understanding, this is a compromise you must make. You cant minimize mass unless you know the compliance target value for each load case. As the compliance value varies largely with the load cases, its very difficult to achieved a minimum mass design with this. You can use displacements aswell, this could be a way out of compliance. The compliance weigth is used when you have diferent compliance values in diferent load cases. If you want to minimize it for every load case equally, you will need to add different weights in order to achieve a W*C almost equal in all load cases, this way all of them will matter equally. But for start you can use 1 as weigths. It depends largely on what kind of optimization you are doing, and whats the purpose. People are mislead sometimes with optimization because you feal like its just one optimization you make and have a final result. Almost everytime this is not the case and you have to make a iteration based design as we do usualy without optimization. I'm not sure but I think the modes are the eigenvalues, for a first design you can use only the first. For a BC set you have multiple eigenvalues, imagine the vibration modes, first, second... Being the first the most important in a concept design. For simplicity I suggest using only weigthed compliance. For a sugestion you would need to show details. Hope it helps, Best regards, Gonçalo
  18. Hi everyone, I ve a problem modeling a laminate composite. I have a ply that intersects two element sets (for interleaving plies), and each one must have diferent material directions because this is a cyclic part. Is it possible to get ply orientation continuity? In the picture I have a blue ply that is changing direction in the border of element set and I want it with only one direction. But the material orientation must continue the same. Any sugestion? Thank you, Gonçalo
  19. Another thing, it makes sense in the way that minimizing compliance will increase the material everywhere. So if you implement a volume fraction or mass constraint, only the areas that contribute the less for the deformation of the structure will be eliminated. If you minimize mass or volume, the optimizer will reduce it everywhere, so you will have to implement a constraint that will force the keeping of the solicitaded areas. Usually only displacement can do this well because stress is not usuable in topology or free-size. Or if you have a known compliance target you can use it. This is good when you know exactly the loads of the structure and it does not need to consider different directions. So when you want a rigid structure, want to avoid low natural frequencies and buckling loads, the compliance index is a good objective to obtain a idea of the best geometry. Best regards Gonçalo
  20. Hi Frehab, I will try to explain it to you simply, without knowing if you already know anything about the subject or not. The compliance is the elastic strain energy present in the structure induced by the load case. The sum of W*C, is the sumation of the all strain energies in the different load cases, with weights in each load case, so you can choose what load case matters the most. In the compliance index, the eigen values of the structure is added aswell, so you will minimize the strain energy and the inverse of the eigen value, which is maximizing the first eigen value of the structure for those BCs. When optimizing a structure, you want to have material in the weak areas. This weak areas deform more than the rest of the structures, so the strain energy will be high in those areas. If you minimize the compliance you will reduce the strain energy overall in the structure making the structure stiffer. Minimizing compliance is the same as maximixing rigidity, so you will have a stiffer structure with less weigth because it puts material where it is needed. Now for the sumation of compliances. Each load case will produce a value of strain energy, so if you want to consider the structure to all load cases, the objective is to maximize rigidity of the structure to the load cases, thats why the compliance of each load case is summed. The eigen value comes from the buckling factor or natural frequency which is a parameter that you want to increase in order to have a rigid structure aswell. So it could be added in the objective. However, eigenvalue is adimensional, compliance have energy units and the orders of magnitude of both are very very different. Something must be done as the objective must have a unit as every value in physics. In order to implement the eigenvalue, it must have a energy unit aswell. So a engineering aproximation is made by multipling it by the biggest compliance and the lowest eigenvalue. This will normalize the eigen value in order to give a value between 0 - 1. Then multiplied by the biggest compliance in order to achieve a total value in the same order of magnitude as the sum of compliances. This will make possible to optimize for both and not only for the compliance. I dont know if I made myself clear but I gave it a try Best regards, Gonçalo
  21. Hi JBosmans, I cant open your model because of compatible issues. But one thing I can tell you from the pics, Von Mises is not a composite failure criteria and you should not base your decisions with it. Von Mises is for ductile metals. Search for Tsai-Hill, Tsai-Wu, Maximum strain and Hoffman criteria as they can be used in Optistruct. Also check if there is layers of the non 0º in the areas you cant see them, because it looks like there isnt. Or if they are there it is not with the name of the layer you are seeing I guess. Best regards, Gonçalo
  22. Hi meera, I tried to have a look but it's too much for my laptop. In such a simple model you should reduce drasticly the element count, it would be easier to troubleshoot and then if needed increase the number of elements. In a topology optimization you only going to get an ideia where to put material so the element count should be much much lower, and the goal is to use as few elements as possible to achieve faster runs. Even 2D shell would give a good estimation. Then for the final static analysis increase the element count but still not that much. Best regards, Gonçalo
  23. Thank you for the fast answer. I haven't been able to get a list that big. I might not included the .fem file and only the .h3d. I will give it a try. Best regards Gonçalo
  24. Hi Prakash, Thank you for your answer. I've used the PARAM,SRCOMPS card to get the reserve factor of a failure criteria. I've read in the user manual that Hoffman and Tsai Wu doesnt work with this, only MaxStrn and Hill because those are really easy to calculate. However I've runned a analysis with this card on, with Hoffman criteria and it gives values. Why? If you can give a guideway to use TsaiWuRF I would appreciate, I know how to make equations but only easy ones. Best regards, Gonçalo
  • Create New...