d with the surfaces in the connected HBZones."
* in addition, the surface results could be red by the " Surface data based on type" but could not by the " detailed one". and it showed this Msg "1. Solution exception:'Brep' object has no attribute 'upper'"
* compared to the earlier model, I noticed that the new simulation results have changed a bit, the zones tend to be more "sensitive to sun" as if it have a lower thermal capacity/ less thermal mass, meanwhile the cooling load is reduced!
* although I was able to collect the CSV files form the Run E+ component, the IDF file was showing this error "1. Solution exception:'NoneType' object is unsubscriptable" I thought the IDF file is kind of a early check up for the geometry before running the simulation, as in Chris tutorial (Chris tutorial no 7)
sorry for the very long Msg, I hope I find a way to deeply understand these results. …
ice 2007. So I went out and bought Office 2010, and all my Excel interopservices vb.net scripts are now failing. They had all worked fine before...now when I execute they give the following error:
error: Invalid class string (Exception from HRESULT: 0x800401F3 (CO_E_CLASSSTRING)) (line: 0)
Here's the boiled down script:
If activate = True Then
Dim oldCI As System.Globalization.CultureInfo = system.Threading.Thread.CurrentThread.CurrentCulture
System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("en-US")
Dim xlApp As Object
xlApp = System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application")
Dim xlSheet As Object
xlSheet = xlApp.ActiveSheet
xlSheet.Range("A1").Value = "test"
End If
The failure happens with the addition of the InteropServices line. I'm mid-project right now, and it's pretty critical that I regain the ability to go back and forth from GH to Excel in the scripting environment...does anyone know if I need to deactivate any security options in Windows, make sure any dll's are properly installed...anything? I've tried all of the other Excel components that various users here have already been generous enough to share (my scripts are all based on them). I can't seem to find any documentation (that I understand) about this particular error message, or how to fix it. Really could use a little help!
thanks in advance,
Dave…
Added by David Stasiuk at 2:20am on January 24, 2011
ehow acquire different settings/are calculated differently. Appears at random “rows” of points, sometimes it all works fine, so I need to do a series for the error to show. See images below.
In the Ladybug fly run the VT of the window changes.
It’s taken me a day and a half to track this error down. Phew.
I get the same error on two different comps.
What is causing this? Does anyone get the same error? Images below created with RADquality set to 2, and 7 cores. Fiddling with Radsettings dont help, I think, except error goes away with very low ab.
…
oo culm and the web is mad of bamboo slats connected to the culms on either side of the attachment points. To make things clearer (extracted from the above paper):
The authors of the paper did a numerical beam-model in ANSYS to see if they could replicate their theoretical results, and it is fairly correct (some differences due to the non-linear behavior of the semi-ring joints that they use, they remain of an order of 5-10% difference in maximum deflection).
My problem is that I am not able to obtain the same deflection values that the authors did (11.4 mm for a total service load of 7.063 kN applied punctually on the upper chord where the truss elements meet, or even replicate the load/deflection curve). Using an orthotropic material, with the engineering constants taken from (ResearchGate - A bamboo Beam-Column Connection Capable to Transmit Moment), my model is too flexible and I get a maximum deflection of 24.28 mm. I tried other orthotropic mechanical characterizations from other sources (Kathry & Mishra, 2012, Finite element analysis of bamboo and joints using steel members under various loading conditions for design study and Chand , Shukla & Sharma, 2008, Analysis of Mechanical Behaviour of Bamboo (Dendrocalamus strictus) by Using FEM), to no avail.
Of course, the problem could be with the material properties I inputted but I am trying to contact the research team to see directly with them. In the meantime, I am looking to make sure the model itself is not flawed.
It also seems to me that gravity was not accounted for in the numerical of the paper, but it seemed to much of an oversight to be possible (still, the deflection curve of their paper goes through 0).
There are several points I am not quite sure about: after all I am still fairly new to Karamba3D and may still have some things to learn about the inner mechanics of the plugin.
The very first is: should I put eccentricities of the slat-elements of the truss in the definition of their cross-section (directly with the Cross Section box) or as an offset of the beam element (with the ModifyElem box)? I tried both approaches and they seem to yield similar results (max. deflection change by 0.65mm in my latest model).
Second is: is it good practice to subdivide the beam elements in more than one element (and connecting the pieces rigidly) in order to get better results? I imagine some meshing or subdivision is performed when the analysis is run but there is no way of visualizing it (that I found in any case). Subdividing the chord elements seems to give smoother deformation results (though I did not check stress I have to admit). My issue on this topic is that the subdivision of the slat-elements of the web is problematic. On the screenshot below, where the elements are divided in two, lets take the example of node 18. It seems to me that all elements of the diagonal element (28, 29, 34 & 35) are all rigidly connected to the node 18. 28 & 29 are not connected together, independently from 34 & 35. The added rigidity may not be a bad thing for my model, but it is not correct I think? Is there a way of solving the problem?
Element tags:
Node tags:
And here is my GH file (clean enough hopefully): verification-model-V04.gh
Thank you all in advance for any insight (even on the inner logics of Karamba)!
…
ld work.
For example there's a grid shell and I've got a number of control points (for example 3) that can move up and down.
Depending on the control points I get forms that are structurally good and some that are bad.
In my office we've got a GH-Component, which leads the geometry in structural members and solves the structural forces and so on through an external Software called Sofistik and afterwards gives back to GH some Values, for example maximum bending moments. (Like Karamba)
Now I want to create this optimization component or something like that to minimize e.g. the bending moments in the given geometry.
Let's start with the work of the component.
So when I've three control points that can only move in z-direction.
P1(0,0,Z1), P2(10,0,Z2), P3(5,5,Z3)
They only depend on Z, so everything depends on Z1 to Z3 which have a range between 0 and 10 f.e.
First I want to get some (between 9 and 15) random Particles, one particle consists of this 3 different Z's.
So for example the first particle Part1 is [Z1=10, Z2=5, Z3=7]
and the second particle Part2 is [Z1=7, Z2=1, Z3=9]
and so on.
I created these Start Particles in a Cluster. See attached file.
I also tried this in C#, but thought it is easier in GH.
After I've got the Start Particles I want to give out the first particle and evaluate with its including Z's the target value in GH. Therefore I had to take the first branch and graft this branch (Discussion before)
Afterwards I want to save this Target Value that depends on the first starting Particle. Then I want to give out the second starting Particle to evaluate its target Value and store it. And so on till the last target Value of the last Starting Particle got assigned.
Then I want to assign the particles with its target values. E.g. part1: t=0.9, part2: t=1.8...
Then I want to define neighborhoods or the count of the expected local minima.
These neighborhoods can look like: Each neighborhood has to include not less than 3 particles. And the particles have to be next to each other.
E.g. if there are 12 particles and I want to have a look for 3 local minima, I need 3 or 4 neighborhoods. Then I would take 3 neighborhoods, because the more particles in one neighborhood, the better.
So the Count of the neighborhoods would be N=min{(Count of Part/3)& N_min}
How to define these neighborhoods I don't know at the moment. I think it has to be searched for the distance between the particles. E.g. part1 with (9,9,9) and part2 with (9,9,8) are next to each other but part 3 with(1,1,2) is far away.
Then each StartParticle is set to Partx_localbest.
And in each Neighbourhood the best of these localbeststs is Part_NyBest. (The best ist the one with the smallest target Value)
Loop:
Now I want to create new Particles. These Particles don't change their Z-values randomly. They change their Z-Values depending on Part_NxBest and Part_localBest. Therefore it has to be evaluated a new velocityfactor with v_Partx_new=0,792*v_PartxOld+1,5*random(0,1)*(partx_localbest-partx)+1,5*random(0,1)*(part_NyBest-partx)
The new particles will then be partx_new=partx+v_Partx_new.
The new Particle partx_new will be set to partx and then set in the output.
then there has to be caught the targetValue of part1 afterwards part2 can be put out and its target value caught and so on.
Then it has to be looked for the Partx_localbest through comparing the partx_localbest and its target value with the new part_x and its target value. If the target value of the new partx is smaller than partx_localbest,
then partx_localbest is the new partx.
This has to be done for each partx. Afterwards the same for neighborhoods best (best of all partx_localbest in one neighborhood)
Endloop if velocity gets small.
Output all part_NxBest
Output all targetvalues of the part_NxBests.
So in the Input there have to be:
StartParticles if they are given through the cluster attached.
Device on the target Value like in the attached gh.file from David Rutten I found in the discussions
Count of neighborhoods
And in the output
Output particle for evaluation
Output all part_NxBest
Output all targetvalues of the part_NxBests
Hope didn’t forget anything. And hope it isn’t crushed to badly. Sorry for my bad English by the way ;-)
For more explanation, how the PSO works in other programs. There’s attached a workflow script (is it called like that?) I think for GH it should be a little bit changed like I tried in my explanations.
So if you can help me a in some parts or you have any advices would be great, otherwise thank you nevertheless!!!!
Thankfully there’s no limit for the words in the discussions :-D
Best, Heiko
…
omputational knowledge to model parametric 3D shapes.
For this particular class, the participants will be using Jewellery and Industrial Design models as their main 3D geometry. This class is suitable for all users of Rhino, RhinoGold, RhinoJewel, Matrix3D or any other Rhino based solution for Jewellery Design.
Instructors:
Andres Gonzalez, Mcneel Miami
Arthur Mamou-Mani, SimplyRhino
----------
This course is for the design professional who wants to efficiently learn the concepts and features of Grasshopper and Generative Jewellery Design methods at an accelerated pace in an instructor-lead environment.
Course Requirements
• Trainees should be conversant with the • modeling environment in Rhino. The first • part of the workshop refreshes this content.
• Knowledge of basic simple maths.
• Knowledge of Windows XP/Windows 7
This class is being run at the Goldsmiths Centre, London.
www.goldsmiths-centre.org
Download the full course details in PDF format.
----------
To book a place on this course contact:
fionuala@simplyrhino.co.uk
jackie@mcneel.com…
es, but I have a sneaking suspicion that it's the same problem. If I save the GH file, then try to reopen it, it always gets the error Marios shows above. The file still opens, but the Crv parameter with the internalized data is gone.
For even more fun and excitement, if I instead try to select the Crv parameter and make a cluster, it crashes all of Rhino. I sent that to McNeel with the Rhino error reporting tool, but I've also included the three files here.
I zipped all the files together; let me know if you can't access something.
Now, I'm one of those crazy Mac people, and McNeel already sent the standard "you shouldn't use Rhino in Parallels" reply, but I'm guessing this problem has nothing to do with lack of 3D acceleration. I've been working on a giant GH script and some involved Rhino files for months, in Parallels, with no problem.
More info: Before this error, I saved another script with a cluster containing an earlier version of my internalized number tags, and I can still open that script and use it. I included the 3dm and gh files for this; they are the ones named, jokingly, "elegant ..."
Between saving the "elegant" version, which worked, and the newer GH file that generates the error, there were some updates that Windows 7 installed, so I wonder if that might have something to do with it. If you want some Windows system files pertaining to this, let me know. I've included a screenshot of the latest Windows updates.
Other than the Win7 updates, I can't think of anything else that's changed. Before this error began I already had all the latest versions of Rhino 4, GH, Parallels, and Mac OS X Lion.
Thanks for all your work. I love GH. Carl Wedell
Denver, Colorado, USA…
pending on registered students
Who is it for > Aimed to professionals or students in engineering, architecture, art, design (interior, industrial, product, jewelry, furniture...) and backgrounds related
Requirements > Zoom app and Rhino 6 or 7 for Windows or Mac.
Is previous knowledge in Grasshopper required?
It is expected students know the Grasshopper interface, connections, basic operations and transformations, simple data list structures: longest list, flatten, graft... We do recommend check the program of the course "Grasshopper Basics" HERE in order to make sure you have knowledge on these tools.
Dates April 9-10
Registration deadline Monday April 4
Schedule: Saturday and Sunday. 3,30 - 8,30pm
More info:
https://controlmad.com/eng/formacion/curso-grasshopper-intermedio/
…
cribes a set of machine movements in X, Y and Z (Z being Pen Up and Pen Down) directions. It very closely related to G-code in this way - just slightly more simple than G-code overall.
For tool selection you use the Select Pen - SPx - command, x is the number of the pen you are using. As I'm using a vinyl cutter without a pen/tool changer I just use SP1 in the file header/ini of the cutter.
Without knowing the full spec of your machine it is hard to say for certain BUT all of my experience with CNC machines - of all sizes and spec levels - the actual control files are pretty much the same. Very simple text based HPGL or G-code text files run all motion control - even on things like 7 axis robot arms etc. For plotting I'd expect you'd be able to get a usable HPGL/PLT file without a lot of work - its just a matter of matching the file to what the machine is expecting.
To answer your question about getting the file to the printer its maybe best to explain it this way: there are two parts to this project1/ Create the correctly formatted text/hpgl/plt file ready to send to the printer2/ Send the file to printer
For part 1/ the procedure is:
Select the curves you want to printConvert the curves into a set of pointsFormat these points into HPGL Save this HPGL as a text file
For 2/ we need a way to stream the text file to a printer port
To do this I've used an old dos command line technique that allows allow you to 'copy' a text file to a printer LPT or COM port:
copy /b c:\spool\ini.plt LPT1
Type the above into a DOS command line and it will send a text file called ini.plt to the printer on LPT1 port. As you'll see in my attached code I use os.system calls in my python code to send files when needed.
So your original code was doing some strange things with the conversion from curves to points. Lines/Polylines were OK - with the code just using the line end points. For curves and polycurves the code code was exploding these into segments and then dividing into set of points. However this led to two issues: - curves that started off as closed polycurves would end up being plotted as open curve segments - which is not very good for a cut file and not very smooth for a plot file.- the division of the curves to points was by distance - and if this wasn't an exact division of the length of the curve the end point would not match up with the next line - again not ideal for a cutting file which needs to be a closed curve.
To solve the above I changed to using rs.ConvertCurveToPolyline - with the tolerance set to match the HPGL resolution of 0.025mm - this converts all curves needed to plot to polylines, leaves everything closed and ends points line up perfectly.
I had one other problem with my setup - I ran into a file size/curve number/plotting points upper limit. A small number of curves would cut/plot fine, however at a certain number in one file the print driver would throw an error and the plotter would not even start plotting the file. I could not work out where is the system this limit was being imposed. The current working version of my code is attached - it gets around this file size limit by creating a separate print file for each curve required and sending them to the plotter in sequence. Not as completely tidy as I'd like as it flashes up a cmd window on every loop - but plots/cuts are perfect.
The final 'nice touch' for the project is I've created a custom tool bar button to run the script - all I have to do to cut a file is hit the button on the tool bar, select the curves and hit enter = SO EASY!
I've attached my latest code, a sample HPGL file to plot a rectangle, and a screen shot of setting up the custom toolbar button.
Cheers
DK…