cs algorithms are ill-suited to calculating the transmission of a partially open screen. The sampling of rays required, and indeed the lack of actual wave-based movement of sound intensity makes them only suitable for large scale studies of spaces making the following assumptions, among others:
- The primary behavior of sound can be described by rays
- Diffraction lends only low significance effects
- Few, preferably no obstructions between the source and reciever
With regard to sound hitting a partially open screen, a variety of behaviors come into play. Sound moves in and out and around various points of a screen - meaning that rays can not describe the behavior of sound for such small delicate structures.
The good news is that some of the latest versions of Pachyderm also employ numerical methods. Try typing "Pachyderm_Numeric_Timedomain into the command prompt, and you'll get the controls for the Finite Volume Method. This method accounts for wave-based phenomena.
Now more bad news: The method does not have implemented an insertion loss calculation, so you would have to work in the source code to implement it, and it still does not have materials implemented (that last part may not be terribly important unless you intended to use porous sound absorptive materials).
So, in any case, I don't recommend using Pachyderm to determine the sound transmission of your design. Now for some more good news - you can do a rough calculation on a calculator, making a few assumptions, if you know the open area of your screen. Let's say that we assume your materials do not transmit at all (which they won't, but they will transmit far less than any opening in the screen). So let's assume you design a 50% open area screen. The transmission loss of the assembly, independent of octave band will be at most:
TL = 10*log10(0.5) = 3 dB
This means that the noise from your source will be 3 dB less on the quiet side of the screen than it will be on the railway side of the fence. Let's say that isn't enough... ok 20% open.
TL = 10*log10(0.2) = 7 dB
So now it is 7 dB less on the quiet side than it is on the rail side (it will probably be up to 3 dB louder at low frequencies, but this is a rough estimate).
So now the last bit of bad news - it is difficult, maybe impossible to get a strong amount of attenuation with a screen with open area. Even with a wall with no open area, the maximum attenuation will be 20 dBA. When you open it up, this will severely hamper the isolation of the screen. I hope this helps.
- Arthur…
t lengths and panels, and a system for identifying where each strut and panel will go (so as to avoid building the world's worst / hardest 3d puzzle)
If you look at how people have overcome this for simple surfaces such as domes, the nodes are often either crude or ugly and there are only 3 different nodes, 3 different strut lengths and 2 panels (for a 3rd order geodesic).
If you do what you are proposing for a geodesic dome, you get half an icosohedron (20 sided shape made up of equilateral triangles) and it then seems impossible to approximate complex surfaces with only equilateral triangles (I might be wrong)
If you could determine the geometry for each node and had a very big budget, you could 3d print each unique node and identify it. You can certainly, easily identify and cut varying length struts, and you can do the same with panels unless you wanted to stamp them (i.e. waterjet cut or CNC router to cut a nest of the panels.) It would still be quite a mission to assemble all this though!
I had the same problem that you have when I wanted to build a geodesic dome... I thought I could just print the nodes, cut all the struts and panels the same and start assembling... then I realised I could only do that for an icosohedron.
…
he "source_" = 0 (SRTMGL1) is limited to 60 degrees North. The bug is fixed. Check the attached file.
Thank you for posting the link to ArcticDEM! I was not aware of it, it certainly looks very intersting!The 2 meter resolution also sounds wonderful!
Gismo at the moment only generates terrain and underwater terrain from three upper mentioned sources: SRTMGL1, AW3D30, GMRT.
https://www2.jpl.nasa.gov/srtmhttps://www.eorc.jaxa.jp/ALOS/en/aw3d30https://www.gmrt.org/services
The reson for this is because all thre of them are supported throug opentopography.org's query terrain web service, which enables to get the DEM data only for defined boundaries (in Gismo's case the _location and the radius_ inputs). This means that the terrain model is automatically generated by just defining these two inputs.The same principle is followed for openstreetmap shapes - automatic generation for given two inputs.
Geting DEM from services as ArcticDEM, would require finding the appropriate DEM tile containing the desired _location, downloading it manually and then loading it to Gismo.Even though this is possible and "under the hood" Gismo and MapWinGIS have methods capable of performing such task, I am still reluctant to do it. My assumption is that it may create a number of questions about reprojections, and non-alignment caused by the use of different coordinate reference systems.But if this feature is asked from a certain number of users, I assume that in the end I would have to provide it.
Let me know if the upper used "source_" = 1 (resolution 20 to 30 meters) fulfils your current terrain requirements.…
Added by djordje to Gismo at 9:30am on April 7, 2019
the iteration process of the fitness in the picture:
I think the problem is the settings for the used evolutionary solver which are:
Population: 20
Initial boost: 3
Maintain: 5%
Inbreeding: 75%
Anyone who know what could be better as index? I think the problem might be something with the "Maintain" or "inbreeding" indexes?
Hope someone can help me and thank you very much!
…
Added by Pil Lauridsen at 7:51am on February 9, 2014
instead of 10. The count seems ok, but no1 gets repeated in the bottom of every element.
When I flatten the last segment I get 10 values, & the count seems random but there are no extra values at the bottom.
Any idea what is going wrong here?
Thanks a lot
…
model and a list of 40 wood trapezoidal (rectangular) cross sections. Is there a rule of thumb for how many iterations to use in the "opt cros sec" component? The component will often return no errors for 20 iterations, but then will complain about 3 members needing to be bigger at 100 iterations. Again at 300 iterations, no errors...
Also, the choice of initial cross-section to use when assembling the model seems to effect these error messages (larger initial section seems to work better).
We'd like the analysis to include buckling at the member level and the model seems to be accounting for that satisfactorily. Though, the Karamba manual does mention that "during the optimization of cross sections normal forces NII are not updated" and to "use 'Analysis ThII' to determine NII iteratively. Is it indeed necessary to use the "Analysis ThII" component along with the "opt cros sec" component, and if so what is the typical setup for this?
Any thoughts are much appreciated - …
Horticulture and Landscape in same time.
The most common plastic materials used as agricultural films are the low density polyethylene (LDPE, with a density less than 0.93 kg m−3), the copolymer of ethylene and vinyl-acetate (EVA)
Also here you can find the characteristics of the flexible materials for greenhouse covers (adapted from CPA, 1992 and Tesi, 2001) as much as i get.
UV-PE Film ( UV-PE~ polyethylene Long life or UV)
Thickness (mm) = 0.18
Direct PAR transmissivity (%) = 90
Diffuse PAR transmissivity (%)= 86
Long-wave IR transmissivity (%)= 65
EVA Film ( EVA~Ethylene vinyl-acetate copolymer)
Thickness (mm) = 0.18
Direct PAR transmissivity (%) = 90
Diffuse PAR transmissivity (%)= 76
Long-wave IR transmissivity (%)= 27
and here you will find the global heat transfer coefficient’ (K in W m−2 °C−1) for the above greenhouse covering materials, measured under normalized conditions (temperatures: exterior: −10°C, interior: +20°C, wind: 4 m s−1). (Source: Nisen and Deltour, 1986.)
Cover Clear sky Overcast Sky
Single PE 8.8-9.0 7.1- 7.2
Single EVA 7.8 6.6
Note : the PAR radiation (photosynthetically active or photoactive radiation and its the amounts to 45–50% of the global radiation; Berninger, 1989)
The name PAR is used to designate the radiation with wavelengths useful for plant photosynthesis. It is accepted that the PAR radiation ranges from 400 to 700 nm (McCree, 1972), although some authors consider the PAR from 350 to 850 nm.
The composition of the radiation changes with time, as a function of the Sun’s elevation and the cloudiness. When the Sun is low over the horizon, the short wavelengths are reduced (less UV and more red). The clouds reduce the amount of energy, greatly decreasing the NIR.
The PAR proportion in relation to the global radiation increases with scattering (diffusion). It is lower with clear sky and in the summer (45–48%).
kind regards
rafat …
ifically, in your picture, it looks like you're feeding two different pieces of data into the same Data input (D0) of the Anemone Loop Start component. If you zoom in on the component in Grasshopper, you'll see that you can add and subtract Data inputs via little +/- symbols, so you can have D0, D1, D2, etc. (Note: when you do this, Anemone Loop End will return an error if it doesn't have the same amount of Data inputs as the Loop Start, so be sure to add them there as well.) Attaching your original data to different inputs keeps them nicely separated during the looped Anemone process.
The nature (and usefulness) of Anemone is that it allows you to take data output by some functions and use it as the input for that same set of functions (normally forbidden under usual Grasshopper logic). So let's say that you want to take a sphere(Sphere0) and stack progressively smaller versions of that sphere on top of it. You feed the sphere into [Loop Start] as D0, and right away, it comes out of the [Loop Start] D0 output exactly the same, because nothing has happened to it yet. You take Sphere0 from the D0 output, let's say scale it by .8, and transform it up appropriately so it sits on top of the last sphere. Now you have Sphere1! Feed Sphere1 into the D0 input of [Loop End], and now (if the # of repeats allows) Sphere1 is the D0 output of [Loop Start]. So if it goes again, it'll scale and transform Sphere1, resulting in a smaller Sphere2, and so on and so forth for as long as you want. If you right-click on the [Loop End] component, you'll see some options labelled "Output after the last" and "Record Data". If neither option is checked, then you'll see the loop calculating in real time, and the only thing that will come out of the D0 output for [Loop End] is the smallest sphere. If you check only "Record Data," then D0 will contain all of the spheres made from the loops. If you check only "Output after the last," then you won't see anything output to D0 until it's entirely finished calculating all the loops. If you check both options, then D0 will output all the spheres, but only after it's finished calculating everything.
In my snake pictured here, there is a constant # of scales placed around each loop of the tube, let's say 10. But since the tube has variable circumferences, the size of the scales needs to vary based on the circumference of their loop. Furthermore, since the size of the scales varies, the distance between each loop must also vary so that there aren't unsightly gaps between loops. So you take the length of Loop0 and divide it by 20 (2 times the # of scales, since you only use every other scale to achieve this pattern), and use that as the distance between Loop0 and Loop1. But since Loop1 has a smaller circumference, Loop1 divided by 20 is going to yield a smaller number than the first one, and that's why you need to use Anemone to make a loop to find all of this out.
This might be more granular than you wanted, but I hope that some of it helps.
…
used of 180 being for the northern hemisphere and 0 for the southern hemisphere.For the optimal tilt, to my knowledge, they are mostly based on correcting location's latitude through a single formula.TOF component is more sophisticated. It essentially replicates the Solmetric's Annual Insolation Lookup tool.What it does is that it creates a grid of points. Each point represents the calculated annual insolation on the surface (PV module, SWH collector, facade, any kind of surface) for a single tilt and azimuth angle.Each point is then elevated according to the annual insolation values. The mesh is created from that grid of points. The portion of the mesh which is the highest, represents the optimal tilt and azimuth angles. So the higher your "precision_" input is, the more points in a mesh you'll have - thus the more precise final optimal tilt and azimuth will be.For the diffuse component of the annual incident solar radiation for each point the Perez 1990 modified model is used. Direct is from classical cosine law, and Ground reflected component from Liu and Jordan (1963).So TOF component calculates the optimal tilt and azimuth based on annual incident solar radiation, not AC energy....…
nside' the OnLine variable. It is instead stored somewhere else in memory, and the OnLine variable only contains the address of this chunk of far-away memory. In other words, it contains not the value, but a reference to the value.
So when I say:
Dim ln As New OnLine()
then the computer creates a new OnLine instance (the 6 numbers) somewhere deep down in the RAM, and ln merely holds the address of this instance.
When I call a function that takes an OnLine as an input, it is in fact given an address, meaning that any changes to the OnLine from within the function can have far reaching effects:
Dim ln As New OnLine()
ln.From = New On3dPoint(10, 10, 0)
ln.To = New On3dPoint(15, 20, 3)
...
...
Public Sub FlattenLine(ByVal line As OnLine)
Dim project As New OnXForm()
project.PlanarProjection(OnPlane.World_xy)
line.Transform(project)
End Sub
This function changes the line parameter, and since OnLine is a Reference Type, it also affects every other variable that points to the same memory.
to be continued >>>…
Added by David Rutten at 6:10am on September 9, 2010