4

我希望有一个人可以帮助我。

我有一个包含电压响应和电流阶跃值的 CSV 文件。我必须在mathematica中制作一个RC模型并找到R和C值。

如何在数学中对 RC 进行建模并从 CSV 文件中的值中提取参数?

我这样做了:

Data=Import["T:/file.csv","CSV"];

我的数据有一个标题和 2 列。电流列和电压响应列。

Voltage=data[[35;;,1]];Current=data[[35;;,2]];

我的文件有一个标题,这就是为什么我写 35 来删除标题。 Hier ist my Current step Hier ist my 电压响应

所以现在我有一个 RC 模型,其中电阻器与电容器并联并与其他电阻器串联 我的遥控模型

Z= Ri+Rt//Ct  --> complex Form (Ri+Rt/1+jwR2Ct)

我在数学中的模型看起来像:

OutputResponse[StateSpaceModel[TransferFunction[{{Ri+Rt+sRt}/{1+sRt}},s,SamplingPeriod->0.1,SystemsModelLabels->None]],current];

如何从电压响应中提取 Ri Rt 和 Ct 以将它们放入我的传递函数中以获得与图2所示相同的电压响应

4

1 回答 1

0

我不确定我是否完全理解你的问题。
是否如下:您有一个包含变量值表的 CSV 数据文件RiRt并且Ct您想将这些值插入您的公式中?

如果是这种情况,您可以先定义一个函数

response[Ri_ , Rt_, Ct_] := OutputResponse[... (as above)

然后假设您Data的表在第 1、2 和 3 列中具有这些值(您可能需要采用此方法)。

然后你可以:

Map[Function[r, response[r[[1]], r[[2]], r[[3]]], Data] 

获取包含结果的表格。

于 2015-03-06T12:44:23.970 回答