Recent Posts

Pages: 1 [2] 3 4 ... 10
Damage & Loss (PELICUN) / Re: Perlicun Ver3- Location of the Components
« Last post by adamzs on May 05, 2022, 05:16:54 PM »
Hi Pooya,

Thanks for the feedback. I'll make the update in the next release.

Damage & Loss (PELICUN) / Re: Generation of Simulated Demands
« Last post by Jiajun on May 05, 2022, 04:12:06 PM »
Hello Adam,

As you said, I want to reproduce the method from Appendix G in pelicun, but I don't know how to do it. It would be useful for me if pelicun can handle the raw demand as the method from Appendix G directly. This shows how powerful and flexible the pelicun is. So can you tell me how to do this or give me some guidance?

1.Thank you so much for your detailed and patient response about this question, they solved my doubts.

2.Although I am not familiar with the development work you mentioned, I am very interested in it. My only regret is that I am currently a new PhD student and have limited time and energy. But I will continue to learn about it and try to do this work in my free time. If I make any progress, I would be happy to share my results with you.

Finally, thank you for your patience and professional response!

Damage & Loss (PELICUN) / Re: Perlicun Ver3- Location of the Components
« Last post by rezvan on May 05, 2022, 02:29:01 AM »
Hi Adam,

Both suggestions look so interesting and innovative to me.

I just tried the second method and it worked perfectly!
I totally agree to define the 'roof' keyword to be parsed as "number of stories + 1"; I think it makes more sense.

I appreciate your innovative solution.


Damage & Loss (PELICUN) / Re: Generation of Simulated Demands
« Last post by adamzs on May 05, 2022, 01:43:37 AM »
Hi Jiajun,

Do you want to use the Matlab code provided by FEMA P58 or you want to reproduce the method from Appendix G in Pelicun?
That method describes fitting a multivariate lognormal distribution to EDP data, increasing the log standard deviations, and then sampling it. Pelicun can certainly do this if you are interested.

 1 The values in the example are indeed different from the data provided in the tables that you pasted. I wanted to have EDPs for two directions and those tables only provide one value per floor. Furthermore, I could not find in the document what those values are. They might be the average, geometric mean, maximum, or some other combination of the results in the two directions.
The nonlinear analysis results from Figure 1-14 - 1-21 gave me the 10th percentile, median, and 90th percentile of EDPs in two directions on each floor at each intensity level. Those were sufficient information to fit a lognormal distribution and I considered them the raw results of the analysis. Note that these do not match the results in Table 1-35 - 1-42, so those must have been processed in some way.
If you have some suggestions of how to reconcile those differences, please let me know.

2. I have good news: adding environmental impact is high on our list. The framework is ready to support it, but the actual timeline depends on who gets the job done. The worst-case scenario is I have to do it, which means it will be available sometime around the end of this year. I might get some help from graduate students that could expedite this development by a few months.
If you are interested in adding this feature, that's also an option and I would be more than happy to guide you on the way. To give you an idea of what such a development would entail:
- You'd need to create a new consequence function table that describes the parameters of functions used for environmental impacts. This is similar to the repair cost/time table I already have prepared in a CSV file.
- Then, you'd need to add a new child class of the LossModel in the module that handles the calculation of such impacts. Based on my superficial understanding of the environmental impact calculation, you might be able to use most of the BldgRepairModel and perhaps even have the EnvironmentalImpactModel be a child of that class to make the calculation simpler.
That's all we need to get this done. Let me know if you're interested.

Damage & Loss (PELICUN) / Re: Uncertainty in consequence models
« Last post by adamzs on May 05, 2022, 01:16:58 AM »
Hi Andres,

I'm sorry for the delay. I'll get back to you with a detailed description tomorrow.

Damage & Loss (PELICUN) / Re: Perlicun Ver3- Location of the Components
« Last post by adamzs on May 05, 2022, 01:13:10 AM »
Hi Pooya,

That's a great question.

The offset defined in FEMA P58 for D.30.31.023 is 0. I think this suggests the developers of P58 intended to assign it to the floor of a story - rather than to the ceiling - which makes perfect sense. Let me walk you through two approaches to handle the ground floor and roof cases:

1, Expand the component library
You could add another chiller component to the library (i.e., another row to the fragility_DB_FEMA_P58_2nd.csv file) that has an offset of 1 and otherwise is identical to the existing chiller. You could call this D.30.31.023_roof, for example. Then, if you want to put a chiller on the roof, you would assign this component to the top floor. If you want to put a chiller on any other floor, you would assign the original component to that floor.

2, Assign the component to a non-existing story
Pelicun will not have a problem with you assigning a component to the 5th floor of a 4-story building. You could keep using the original component from FEMA P58 and specify its location as 5. Then, internally, pelicun will see that the component uses PFA as demand and look for a PFA-4 to calculate the damage - which is exactly what you want.

Looking at the two options above, the second one seems more intuitive to me. I am inclined to revise the interpretation of the 'roof' keyword to be parsed as "number of stories + 1". That would make it easy for users to assign such components to the roof without having to worry about the above mechanism inside Pelicun. If you agree, I will get this implemented in the upcoming 3.1.b5

Let me know your thoughts.

Damage & Loss (PELICUN) / Re: Uncertainty in consequence models
« Last post by joramh on May 04, 2022, 05:24:44 PM »
Hey Adam,

Apologies if you're super busy, but do you think you could give me more information about this please?
Damage & Loss (PELICUN) / Re: Generation of Simulated Demands
« Last post by Jiajun on May 04, 2022, 03:59:01 PM »
Hello Adam,

Thank you for your detailed response for my questions.

In fact, what I want to do is to generate samples by the method mentioned in Appendix G of the FEMA P58 Vol1, and then use these samples to perform the damage and loss analysis. You can refer to the attachment for the exact process. This matlab code is provided by FEMA P58 in Appendix G. For this procedure, I just need to input the EDPs,βm,βgm.

Other than that, I have two questions:
1. I notice that the input of the raw demand in the example file seems to  be much different from the background document of FEMAp58, especially the log_std (I compared the input demand data with the data provided in the "Table 1-37 Demand Vectors, Intensity 3, Conditioned on No Collapse" in the BD document). I wonder about the reason for this difference.
2.This question is not related to this topic. It represents a personal expectation of mine. The environmental impact is a major update to the FEMA 2nd documentation, and the corresponding database is provided. After reading some current literature, I found that this is also a concern for many researchers. I wonder if pelicun is considering adding this feature as well. I checked the source code, it doesn't seem to be available for pelicun now. Or if I want to use pelicun to calculate the loss of carbon/energy caused by the earthquake, do you have any good suggestions?

Thank you so much, Adam.

Now, I completely understand the definition of the location parameter.

However, I still have a doubt about some acceleration-sensitive components that should be assigned to the floors and not the stories.
Consider two different cases in a 4-story building where we want to put a chiller (D.30.31.023) or cooling tower (D.30.31.023) either on the roof or on the ground (as far as I know both cases are very common).

How can we define the location in these two cases? Because here we have 5 floors and we want to use the EDP of the first and the last floor which are gound and roof levels.
If the offset of 1 is defined for the cooling tower, then how to use the EDP of the ground floor?
If that offset is not defined, then how to use the EDP of the roof?

So many thanks,

Hi Pooya,

Thanks for the extensive testing and great questions!

The location parameter in pelicun3 works slightly differently from pelicun 2. I'll explain below and that will hopefully answer all your questions.

First of all, the "0" location is considered special and reserved for components where the location is not applicable. Think about 'collapse', for example. Pelicun treats those locations and components assigned to those locations differently.

When it comes to components in FEMA P58, you do not need to assign anything to "0". If the component is on the ground floor, you would assign it to "1". You correctly mention that the traction elevator, for example, shall be assigned to the ground floor to be able to use the PGA as a demand. But that mapping of component location to demand location happens automatically inside pelicun. When a component uses floor acceleration, the demands automatically come from the bottom of the floor, that is, from PFA-0. For components that are on the roof, there is an offset variable in the metadata that tell pelicun to get the acceleration from the top slab - so it is okay to assign roof components to the top floor because the offset will make sure you get the right acceleration value for them.

When you use "all" in the location column, it is replaced internally with "1-#stories". Hence, pelicun never assigns anything to the roof.

When you use "roof", it is replaced with the top story, not the top story + 1.

As I mentioned earlier, some components, such as the suspended ceiling, have an offset of 1 prescribed so that the PFA values from the top slab are used to assess their damage.

I think the above information already answers your first question.

As for your second question, I would like to emphasize that component assignment is not influenced by the type of demand the component uses. I intentionally decoupled these to make asset modeling more straightforward. All you need to consider when assigning components is which floor they are actually in.

As for your third question, if you put 2-4 in the location column, pelicun would consider stories 2, 3, and 4. The 0-4 option is not recommended because floor 0 has a special meaning as I explained earlier.

Let me know if any of the above is not clear.

Pages: 1 [2] 3 4 ... 10