circuit-json 0.0.507 → 0.0.508
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +117 -1
- package/dist/index.mjs +261 -243
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -4162,10 +4162,26 @@ var cad_component = z188.object({
|
|
|
4162
4162
|
}).describe("Defines CAD geometry, optionally associated with a PCB component");
|
|
4163
4163
|
expectTypesMatch(true);
|
|
4164
4164
|
|
|
4165
|
-
// src/
|
|
4165
|
+
// src/cad/cad_collision_error.ts
|
|
4166
4166
|
import { z as z189 } from "zod";
|
|
4167
|
-
var
|
|
4168
|
-
|
|
4167
|
+
var cad_collision_error = base_circuit_json_error.extend({
|
|
4168
|
+
type: z189.literal("cad_collision_error"),
|
|
4169
|
+
cad_collision_error_id: getZodPrefixedIdWithDefault("cad_collision_error"),
|
|
4170
|
+
error_type: z189.literal("cad_collision_error").default("cad_collision_error"),
|
|
4171
|
+
cad_component_ids: z189.array(z189.string()).min(1),
|
|
4172
|
+
pcb_component_ids: z189.array(z189.string()).optional(),
|
|
4173
|
+
source_component_ids: z189.array(z189.string()).min(1),
|
|
4174
|
+
intersection_area_mm2: z189.number().finite().nonnegative(),
|
|
4175
|
+
threshold_area_mm2: z189.number().finite().nonnegative()
|
|
4176
|
+
}).describe(
|
|
4177
|
+
"An aperture-bearing part intersects the finished enclosure. The intersection_area_mm2 is the union silhouette area of the solid intersection projected along the aperture face normal, in the right-handed Circuit JSON world frame (+X right, +Y top, +Z above). It is an area in square millimetres, not intersection volume or surface area. This indicates possible aperture misplacement, insufficient size/depth, or body clearance problems; it does not prove which cause applies."
|
|
4178
|
+
);
|
|
4179
|
+
expectTypesMatch(true);
|
|
4180
|
+
|
|
4181
|
+
// src/simulation/simulation_voltage_source.ts
|
|
4182
|
+
import { z as z190 } from "zod";
|
|
4183
|
+
var wave_shape = z190.enum(["sinewave", "square", "triangle", "sawtooth"]);
|
|
4184
|
+
var percentage = z190.union([z190.string(), z190.number()]).transform((val) => {
|
|
4169
4185
|
if (typeof val === "string") {
|
|
4170
4186
|
if (val.endsWith("%")) {
|
|
4171
4187
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -4174,32 +4190,32 @@ var percentage = z189.union([z189.string(), z189.number()]).transform((val) => {
|
|
|
4174
4190
|
}
|
|
4175
4191
|
return val;
|
|
4176
4192
|
}).pipe(
|
|
4177
|
-
|
|
4193
|
+
z190.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
4178
4194
|
);
|
|
4179
|
-
var simulation_dc_voltage_source =
|
|
4180
|
-
type:
|
|
4195
|
+
var simulation_dc_voltage_source = z190.object({
|
|
4196
|
+
type: z190.literal("simulation_voltage_source"),
|
|
4181
4197
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
4182
4198
|
"simulation_voltage_source"
|
|
4183
4199
|
),
|
|
4184
|
-
is_dc_source:
|
|
4185
|
-
positive_source_port_id:
|
|
4186
|
-
negative_source_port_id:
|
|
4187
|
-
positive_source_net_id:
|
|
4188
|
-
negative_source_net_id:
|
|
4200
|
+
is_dc_source: z190.literal(true).optional().default(true),
|
|
4201
|
+
positive_source_port_id: z190.string().optional(),
|
|
4202
|
+
negative_source_port_id: z190.string().optional(),
|
|
4203
|
+
positive_source_net_id: z190.string().optional(),
|
|
4204
|
+
negative_source_net_id: z190.string().optional(),
|
|
4189
4205
|
voltage,
|
|
4190
4206
|
ac_magnitude: voltage.optional(),
|
|
4191
4207
|
ac_phase: rotation.optional()
|
|
4192
4208
|
}).describe("Defines a DC voltage source for simulation");
|
|
4193
|
-
var simulation_ac_voltage_source =
|
|
4194
|
-
type:
|
|
4209
|
+
var simulation_ac_voltage_source = z190.object({
|
|
4210
|
+
type: z190.literal("simulation_voltage_source"),
|
|
4195
4211
|
simulation_voltage_source_id: getZodPrefixedIdWithDefault(
|
|
4196
4212
|
"simulation_voltage_source"
|
|
4197
4213
|
),
|
|
4198
|
-
is_dc_source:
|
|
4199
|
-
terminal1_source_port_id:
|
|
4200
|
-
terminal2_source_port_id:
|
|
4201
|
-
terminal1_source_net_id:
|
|
4202
|
-
terminal2_source_net_id:
|
|
4214
|
+
is_dc_source: z190.literal(false),
|
|
4215
|
+
terminal1_source_port_id: z190.string().optional(),
|
|
4216
|
+
terminal2_source_port_id: z190.string().optional(),
|
|
4217
|
+
terminal1_source_net_id: z190.string().optional(),
|
|
4218
|
+
terminal2_source_net_id: z190.string().optional(),
|
|
4203
4219
|
voltage: voltage.optional(),
|
|
4204
4220
|
frequency: frequency.optional(),
|
|
4205
4221
|
peak_to_peak_voltage: voltage.optional(),
|
|
@@ -4214,14 +4230,14 @@ var simulation_ac_voltage_source = z189.object({
|
|
|
4214
4230
|
ac_magnitude: voltage.optional(),
|
|
4215
4231
|
ac_phase: rotation.optional()
|
|
4216
4232
|
}).describe("Defines an AC voltage source for simulation");
|
|
4217
|
-
var simulation_voltage_source =
|
|
4233
|
+
var simulation_voltage_source = z190.union([simulation_dc_voltage_source, simulation_ac_voltage_source]).describe("Defines a voltage source for simulation");
|
|
4218
4234
|
expectTypesMatch(true);
|
|
4219
4235
|
expectTypesMatch(true);
|
|
4220
4236
|
expectTypesMatch(true);
|
|
4221
4237
|
|
|
4222
4238
|
// src/simulation/simulation_current_source.ts
|
|
4223
|
-
import { z as
|
|
4224
|
-
var percentage2 =
|
|
4239
|
+
import { z as z191 } from "zod";
|
|
4240
|
+
var percentage2 = z191.union([z191.string(), z191.number()]).transform((val) => {
|
|
4225
4241
|
if (typeof val === "string") {
|
|
4226
4242
|
if (val.endsWith("%")) {
|
|
4227
4243
|
return parseFloat(val.slice(0, -1)) / 100;
|
|
@@ -4230,32 +4246,32 @@ var percentage2 = z190.union([z190.string(), z190.number()]).transform((val) =>
|
|
|
4230
4246
|
}
|
|
4231
4247
|
return val;
|
|
4232
4248
|
}).pipe(
|
|
4233
|
-
|
|
4249
|
+
z191.number().min(0, "Duty cycle must be non-negative").max(1, "Duty cycle cannot be greater than 100%")
|
|
4234
4250
|
);
|
|
4235
|
-
var simulation_dc_current_source =
|
|
4236
|
-
type:
|
|
4251
|
+
var simulation_dc_current_source = z191.object({
|
|
4252
|
+
type: z191.literal("simulation_current_source"),
|
|
4237
4253
|
simulation_current_source_id: getZodPrefixedIdWithDefault(
|
|
4238
4254
|
"simulation_current_source"
|
|
4239
4255
|
),
|
|
4240
|
-
is_dc_source:
|
|
4241
|
-
positive_source_port_id:
|
|
4242
|
-
negative_source_port_id:
|
|
4243
|
-
positive_source_net_id:
|
|
4244
|
-
negative_source_net_id:
|
|
4256
|
+
is_dc_source: z191.literal(true).optional().default(true),
|
|
4257
|
+
positive_source_port_id: z191.string().optional(),
|
|
4258
|
+
negative_source_port_id: z191.string().optional(),
|
|
4259
|
+
positive_source_net_id: z191.string().optional(),
|
|
4260
|
+
negative_source_net_id: z191.string().optional(),
|
|
4245
4261
|
current,
|
|
4246
4262
|
ac_magnitude: current.optional(),
|
|
4247
4263
|
ac_phase: rotation.optional()
|
|
4248
4264
|
}).describe("Defines a DC current source for simulation");
|
|
4249
|
-
var simulation_ac_current_source =
|
|
4250
|
-
type:
|
|
4265
|
+
var simulation_ac_current_source = z191.object({
|
|
4266
|
+
type: z191.literal("simulation_current_source"),
|
|
4251
4267
|
simulation_current_source_id: getZodPrefixedIdWithDefault(
|
|
4252
4268
|
"simulation_current_source"
|
|
4253
4269
|
),
|
|
4254
|
-
is_dc_source:
|
|
4255
|
-
terminal1_source_port_id:
|
|
4256
|
-
terminal2_source_port_id:
|
|
4257
|
-
terminal1_source_net_id:
|
|
4258
|
-
terminal2_source_net_id:
|
|
4270
|
+
is_dc_source: z191.literal(false),
|
|
4271
|
+
terminal1_source_port_id: z191.string().optional(),
|
|
4272
|
+
terminal2_source_port_id: z191.string().optional(),
|
|
4273
|
+
terminal1_source_net_id: z191.string().optional(),
|
|
4274
|
+
terminal2_source_net_id: z191.string().optional(),
|
|
4259
4275
|
current: current.optional(),
|
|
4260
4276
|
frequency: frequency.optional(),
|
|
4261
4277
|
peak_to_peak_current: current.optional(),
|
|
@@ -4265,58 +4281,58 @@ var simulation_ac_current_source = z190.object({
|
|
|
4265
4281
|
ac_magnitude: current.optional(),
|
|
4266
4282
|
ac_phase: rotation.optional()
|
|
4267
4283
|
}).describe("Defines an AC current source for simulation");
|
|
4268
|
-
var simulation_current_source =
|
|
4284
|
+
var simulation_current_source = z191.union([simulation_dc_current_source, simulation_ac_current_source]).describe("Defines a current source for simulation");
|
|
4269
4285
|
expectTypesMatch(true);
|
|
4270
4286
|
expectTypesMatch(true);
|
|
4271
4287
|
expectTypesMatch(true);
|
|
4272
4288
|
|
|
4273
4289
|
// src/simulation/simulation_experiment.ts
|
|
4274
|
-
import { z as
|
|
4290
|
+
import { z as z193 } from "zod";
|
|
4275
4291
|
|
|
4276
4292
|
// src/simulation/simulation_units.ts
|
|
4277
|
-
import { z as
|
|
4278
|
-
var simulation_dc_sweep_unit =
|
|
4293
|
+
import { z as z192 } from "zod";
|
|
4294
|
+
var simulation_dc_sweep_unit = z192.custom(
|
|
4279
4295
|
(dcSweepUnit) => dcSweepUnit === "V" || dcSweepUnit === "A"
|
|
4280
4296
|
);
|
|
4281
|
-
var simulation_parameter_unit =
|
|
4297
|
+
var simulation_parameter_unit = z192.custom(
|
|
4282
4298
|
(parameterUnit) => parameterUnit === "\u03A9" || parameterUnit === "F" || parameterUnit === "H" || parameterUnit === "V" || parameterUnit === "A"
|
|
4283
4299
|
);
|
|
4284
4300
|
|
|
4285
4301
|
// src/simulation/simulation_experiment.ts
|
|
4286
|
-
var experiment_type =
|
|
4287
|
-
|
|
4288
|
-
|
|
4289
|
-
|
|
4290
|
-
|
|
4302
|
+
var experiment_type = z193.union([
|
|
4303
|
+
z193.literal("spice_dc_sweep"),
|
|
4304
|
+
z193.literal("spice_dc_operating_point"),
|
|
4305
|
+
z193.literal("spice_transient_analysis"),
|
|
4306
|
+
z193.literal("spice_ac_analysis")
|
|
4291
4307
|
]);
|
|
4292
|
-
var spice_simulation_options =
|
|
4293
|
-
method:
|
|
4294
|
-
reltol:
|
|
4295
|
-
abstol:
|
|
4296
|
-
vntol:
|
|
4308
|
+
var spice_simulation_options = z193.object({
|
|
4309
|
+
method: z193.enum(["trap", "gear"]).optional(),
|
|
4310
|
+
reltol: z193.union([z193.number(), z193.string()]).optional(),
|
|
4311
|
+
abstol: z193.union([z193.number(), z193.string()]).optional(),
|
|
4312
|
+
vntol: z193.union([z193.number(), z193.string()]).optional()
|
|
4297
4313
|
}).describe("SPICE solver options for a simulation experiment");
|
|
4298
|
-
var simulation_experiment =
|
|
4299
|
-
type:
|
|
4314
|
+
var simulation_experiment = z193.object({
|
|
4315
|
+
type: z193.literal("simulation_experiment"),
|
|
4300
4316
|
simulation_experiment_id: getZodPrefixedIdWithDefault(
|
|
4301
4317
|
"simulation_experiment"
|
|
4302
4318
|
),
|
|
4303
|
-
name:
|
|
4319
|
+
name: z193.string(),
|
|
4304
4320
|
experiment_type,
|
|
4305
4321
|
time_per_step: duration_ms.optional(),
|
|
4306
4322
|
start_time_ms: ms.optional(),
|
|
4307
4323
|
end_time_ms: ms.optional(),
|
|
4308
4324
|
spice_options: spice_simulation_options.optional(),
|
|
4309
|
-
dc_sweep_voltage_source_id:
|
|
4310
|
-
dc_sweep_current_source_id:
|
|
4311
|
-
dc_sweep_start:
|
|
4312
|
-
dc_sweep_stop:
|
|
4313
|
-
dc_sweep_step:
|
|
4325
|
+
dc_sweep_voltage_source_id: z193.string().optional(),
|
|
4326
|
+
dc_sweep_current_source_id: z193.string().optional(),
|
|
4327
|
+
dc_sweep_start: z193.number().optional(),
|
|
4328
|
+
dc_sweep_stop: z193.number().optional(),
|
|
4329
|
+
dc_sweep_step: z193.number().refine((dcSweepStep) => dcSweepStep !== 0).optional(),
|
|
4314
4330
|
dc_sweep_unit: simulation_dc_sweep_unit.optional(),
|
|
4315
|
-
ac_sweep_type:
|
|
4316
|
-
ac_samples_per_interval:
|
|
4317
|
-
ac_sample_count:
|
|
4318
|
-
ac_start_frequency_hz:
|
|
4319
|
-
ac_stop_frequency_hz:
|
|
4331
|
+
ac_sweep_type: z193.enum(["linear", "decade", "octave"]).optional(),
|
|
4332
|
+
ac_samples_per_interval: z193.number().int().positive().optional(),
|
|
4333
|
+
ac_sample_count: z193.number().int().positive().optional(),
|
|
4334
|
+
ac_start_frequency_hz: z193.number().positive().optional(),
|
|
4335
|
+
ac_stop_frequency_hz: z193.number().positive().optional()
|
|
4320
4336
|
}).superRefine((experiment, context) => {
|
|
4321
4337
|
if (experiment.experiment_type === "spice_dc_sweep") {
|
|
4322
4338
|
const requiredFields = [
|
|
@@ -4328,7 +4344,7 @@ var simulation_experiment = z192.object({
|
|
|
4328
4344
|
for (const field of requiredFields) {
|
|
4329
4345
|
if (experiment[field] === void 0) {
|
|
4330
4346
|
context.addIssue({
|
|
4331
|
-
code:
|
|
4347
|
+
code: z193.ZodIssueCode.custom,
|
|
4332
4348
|
path: [field],
|
|
4333
4349
|
message: `${field} is required for a DC sweep`
|
|
4334
4350
|
});
|
|
@@ -4338,7 +4354,7 @@ var simulation_experiment = z192.object({
|
|
|
4338
4354
|
const hasCurrentSource = experiment.dc_sweep_current_source_id !== void 0;
|
|
4339
4355
|
if (hasVoltageSource === hasCurrentSource) {
|
|
4340
4356
|
context.addIssue({
|
|
4341
|
-
code:
|
|
4357
|
+
code: z193.ZodIssueCode.custom,
|
|
4342
4358
|
path: ["dc_sweep_voltage_source_id"],
|
|
4343
4359
|
message: "Exactly one DC sweep voltage or current source ID is required"
|
|
4344
4360
|
});
|
|
@@ -4347,35 +4363,35 @@ var simulation_experiment = z192.object({
|
|
|
4347
4363
|
if (experiment.experiment_type === "spice_ac_analysis") {
|
|
4348
4364
|
if (experiment.ac_sweep_type === void 0) {
|
|
4349
4365
|
context.addIssue({
|
|
4350
|
-
code:
|
|
4366
|
+
code: z193.ZodIssueCode.custom,
|
|
4351
4367
|
path: ["ac_sweep_type"],
|
|
4352
4368
|
message: "ac_sweep_type is required for an AC analysis"
|
|
4353
4369
|
});
|
|
4354
4370
|
}
|
|
4355
4371
|
if (experiment.ac_start_frequency_hz === void 0) {
|
|
4356
4372
|
context.addIssue({
|
|
4357
|
-
code:
|
|
4373
|
+
code: z193.ZodIssueCode.custom,
|
|
4358
4374
|
path: ["ac_start_frequency_hz"],
|
|
4359
4375
|
message: "ac_start_frequency_hz is required for an AC analysis"
|
|
4360
4376
|
});
|
|
4361
4377
|
}
|
|
4362
4378
|
if (experiment.ac_stop_frequency_hz === void 0) {
|
|
4363
4379
|
context.addIssue({
|
|
4364
|
-
code:
|
|
4380
|
+
code: z193.ZodIssueCode.custom,
|
|
4365
4381
|
path: ["ac_stop_frequency_hz"],
|
|
4366
4382
|
message: "ac_stop_frequency_hz is required for an AC analysis"
|
|
4367
4383
|
});
|
|
4368
4384
|
}
|
|
4369
4385
|
if (experiment.ac_sweep_type === "linear" && experiment.ac_sample_count === void 0) {
|
|
4370
4386
|
context.addIssue({
|
|
4371
|
-
code:
|
|
4387
|
+
code: z193.ZodIssueCode.custom,
|
|
4372
4388
|
path: ["ac_sample_count"],
|
|
4373
4389
|
message: "ac_sample_count is required for a linear AC analysis"
|
|
4374
4390
|
});
|
|
4375
4391
|
}
|
|
4376
4392
|
if ((experiment.ac_sweep_type === "decade" || experiment.ac_sweep_type === "octave") && experiment.ac_samples_per_interval === void 0) {
|
|
4377
4393
|
context.addIssue({
|
|
4378
|
-
code:
|
|
4394
|
+
code: z193.ZodIssueCode.custom,
|
|
4379
4395
|
path: ["ac_samples_per_interval"],
|
|
4380
4396
|
message: "ac_samples_per_interval is required for decade and octave AC analyses"
|
|
4381
4397
|
});
|
|
@@ -4385,87 +4401,87 @@ var simulation_experiment = z192.object({
|
|
|
4385
4401
|
expectTypesMatch(true);
|
|
4386
4402
|
|
|
4387
4403
|
// src/simulation/simulation_transient_voltage_graph.ts
|
|
4388
|
-
import { z as
|
|
4404
|
+
import { z as z195 } from "zod";
|
|
4389
4405
|
|
|
4390
4406
|
// src/simulation/simulation_parameter_sweep_coordinate.ts
|
|
4391
|
-
import { z as
|
|
4392
|
-
var simulation_parameter_sweep_coordinate =
|
|
4393
|
-
simulation_parameter_sweep_id:
|
|
4394
|
-
sweep_index:
|
|
4395
|
-
parameter_value:
|
|
4407
|
+
import { z as z194 } from "zod";
|
|
4408
|
+
var simulation_parameter_sweep_coordinate = z194.object({
|
|
4409
|
+
simulation_parameter_sweep_id: z194.string(),
|
|
4410
|
+
sweep_index: z194.number().int().nonnegative(),
|
|
4411
|
+
parameter_value: z194.number(),
|
|
4396
4412
|
parameter_unit: simulation_parameter_unit
|
|
4397
4413
|
});
|
|
4398
4414
|
expectTypesMatch(true);
|
|
4399
4415
|
|
|
4400
4416
|
// src/simulation/simulation_transient_voltage_graph.ts
|
|
4401
|
-
var simulation_transient_voltage_graph =
|
|
4402
|
-
type:
|
|
4417
|
+
var simulation_transient_voltage_graph = z195.object({
|
|
4418
|
+
type: z195.literal("simulation_transient_voltage_graph"),
|
|
4403
4419
|
simulation_transient_voltage_graph_id: getZodPrefixedIdWithDefault(
|
|
4404
4420
|
"simulation_transient_voltage_graph"
|
|
4405
4421
|
),
|
|
4406
|
-
simulation_experiment_id:
|
|
4422
|
+
simulation_experiment_id: z195.string(),
|
|
4407
4423
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4408
|
-
timestamps_ms:
|
|
4409
|
-
voltage_levels:
|
|
4410
|
-
source_component_id:
|
|
4411
|
-
subcircuit_connectivity_map_key:
|
|
4424
|
+
timestamps_ms: z195.array(z195.number()).optional(),
|
|
4425
|
+
voltage_levels: z195.array(z195.number()),
|
|
4426
|
+
source_component_id: z195.string().optional(),
|
|
4427
|
+
subcircuit_connectivity_map_key: z195.string().optional(),
|
|
4412
4428
|
time_per_step: duration_ms,
|
|
4413
4429
|
start_time_ms: ms,
|
|
4414
4430
|
end_time_ms: ms,
|
|
4415
|
-
name:
|
|
4416
|
-
color:
|
|
4431
|
+
name: z195.string().optional(),
|
|
4432
|
+
color: z195.string().optional()
|
|
4417
4433
|
}).describe("Stores voltage measurements over time for a simulation");
|
|
4418
4434
|
expectTypesMatch(true);
|
|
4419
4435
|
|
|
4420
4436
|
// src/simulation/simulation_transient_current_graph.ts
|
|
4421
|
-
import { z as
|
|
4422
|
-
var simulation_transient_current_graph =
|
|
4423
|
-
type:
|
|
4437
|
+
import { z as z196 } from "zod";
|
|
4438
|
+
var simulation_transient_current_graph = z196.object({
|
|
4439
|
+
type: z196.literal("simulation_transient_current_graph"),
|
|
4424
4440
|
simulation_transient_current_graph_id: getZodPrefixedIdWithDefault(
|
|
4425
4441
|
"simulation_transient_current_graph"
|
|
4426
4442
|
),
|
|
4427
|
-
simulation_experiment_id:
|
|
4443
|
+
simulation_experiment_id: z196.string(),
|
|
4428
4444
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4429
|
-
timestamps_ms:
|
|
4430
|
-
current_levels:
|
|
4431
|
-
source_component_id:
|
|
4432
|
-
subcircuit_connectivity_map_key:
|
|
4445
|
+
timestamps_ms: z196.array(z196.number()).optional(),
|
|
4446
|
+
current_levels: z196.array(z196.number()),
|
|
4447
|
+
source_component_id: z196.string().optional(),
|
|
4448
|
+
subcircuit_connectivity_map_key: z196.string().optional(),
|
|
4433
4449
|
time_per_step: duration_ms,
|
|
4434
4450
|
start_time_ms: ms,
|
|
4435
4451
|
end_time_ms: ms,
|
|
4436
|
-
name:
|
|
4437
|
-
color:
|
|
4452
|
+
name: z196.string().optional(),
|
|
4453
|
+
color: z196.string().optional()
|
|
4438
4454
|
}).describe("Stores current measurements over time for a simulation");
|
|
4439
4455
|
expectTypesMatch(true);
|
|
4440
4456
|
|
|
4441
4457
|
// src/simulation/simulation_switch.ts
|
|
4442
|
-
import { z as
|
|
4443
|
-
var simulation_switch =
|
|
4444
|
-
type:
|
|
4458
|
+
import { z as z197 } from "zod";
|
|
4459
|
+
var simulation_switch = z197.object({
|
|
4460
|
+
type: z197.literal("simulation_switch"),
|
|
4445
4461
|
simulation_switch_id: getZodPrefixedIdWithDefault("simulation_switch"),
|
|
4446
|
-
source_component_id:
|
|
4462
|
+
source_component_id: z197.string().optional(),
|
|
4447
4463
|
closes_at: ms.optional(),
|
|
4448
4464
|
opens_at: ms.optional(),
|
|
4449
|
-
starts_closed:
|
|
4465
|
+
starts_closed: z197.boolean().optional(),
|
|
4450
4466
|
switching_frequency: frequency.optional()
|
|
4451
4467
|
}).describe("Defines a switch for simulation timing control");
|
|
4452
4468
|
expectTypesMatch(true);
|
|
4453
4469
|
|
|
4454
4470
|
// src/simulation/simulation_voltage_probe.ts
|
|
4455
|
-
import { z as
|
|
4456
|
-
var simulation_voltage_probe =
|
|
4457
|
-
type:
|
|
4471
|
+
import { z as z198 } from "zod";
|
|
4472
|
+
var simulation_voltage_probe = z198.object({
|
|
4473
|
+
type: z198.literal("simulation_voltage_probe"),
|
|
4458
4474
|
simulation_voltage_probe_id: getZodPrefixedIdWithDefault(
|
|
4459
4475
|
"simulation_voltage_probe"
|
|
4460
4476
|
),
|
|
4461
|
-
source_component_id:
|
|
4462
|
-
name:
|
|
4463
|
-
signal_input_source_port_id:
|
|
4464
|
-
signal_input_source_net_id:
|
|
4465
|
-
reference_input_source_port_id:
|
|
4466
|
-
reference_input_source_net_id:
|
|
4467
|
-
subcircuit_id:
|
|
4468
|
-
color:
|
|
4477
|
+
source_component_id: z198.string().optional(),
|
|
4478
|
+
name: z198.string().optional(),
|
|
4479
|
+
signal_input_source_port_id: z198.string().optional(),
|
|
4480
|
+
signal_input_source_net_id: z198.string().optional(),
|
|
4481
|
+
reference_input_source_port_id: z198.string().optional(),
|
|
4482
|
+
reference_input_source_net_id: z198.string().optional(),
|
|
4483
|
+
subcircuit_id: z198.string().optional(),
|
|
4484
|
+
color: z198.string().optional()
|
|
4469
4485
|
}).describe(
|
|
4470
4486
|
"Defines a voltage probe for simulation. If a reference input is not provided, it measures against ground. If a reference input is provided, it measures the differential voltage between two points."
|
|
4471
4487
|
).superRefine((data, ctx) => {
|
|
@@ -4475,20 +4491,20 @@ var simulation_voltage_probe = z197.object({
|
|
|
4475
4491
|
const has_nets = !!data.signal_input_source_net_id || !!data.reference_input_source_net_id;
|
|
4476
4492
|
if (has_ports && has_nets) {
|
|
4477
4493
|
ctx.addIssue({
|
|
4478
|
-
code:
|
|
4494
|
+
code: z198.ZodIssueCode.custom,
|
|
4479
4495
|
message: "Cannot mix port and net connections in a differential probe."
|
|
4480
4496
|
});
|
|
4481
4497
|
} else if (has_ports) {
|
|
4482
4498
|
if (!data.signal_input_source_port_id || !data.reference_input_source_port_id) {
|
|
4483
4499
|
ctx.addIssue({
|
|
4484
|
-
code:
|
|
4500
|
+
code: z198.ZodIssueCode.custom,
|
|
4485
4501
|
message: "Differential port probe requires both signal_input_source_port_id and reference_input_source_port_id."
|
|
4486
4502
|
});
|
|
4487
4503
|
}
|
|
4488
4504
|
} else if (has_nets) {
|
|
4489
4505
|
if (!data.signal_input_source_net_id || !data.reference_input_source_net_id) {
|
|
4490
4506
|
ctx.addIssue({
|
|
4491
|
-
code:
|
|
4507
|
+
code: z198.ZodIssueCode.custom,
|
|
4492
4508
|
message: "Differential net probe requires both signal_input_source_net_id and reference_input_source_net_id."
|
|
4493
4509
|
});
|
|
4494
4510
|
}
|
|
@@ -4496,7 +4512,7 @@ var simulation_voltage_probe = z197.object({
|
|
|
4496
4512
|
} else {
|
|
4497
4513
|
if (!!data.signal_input_source_port_id === !!data.signal_input_source_net_id) {
|
|
4498
4514
|
ctx.addIssue({
|
|
4499
|
-
code:
|
|
4515
|
+
code: z198.ZodIssueCode.custom,
|
|
4500
4516
|
message: "A voltage probe must have exactly one of signal_input_source_port_id or signal_input_source_net_id."
|
|
4501
4517
|
});
|
|
4502
4518
|
}
|
|
@@ -4505,20 +4521,20 @@ var simulation_voltage_probe = z197.object({
|
|
|
4505
4521
|
expectTypesMatch(true);
|
|
4506
4522
|
|
|
4507
4523
|
// src/simulation/simulation_current_probe.ts
|
|
4508
|
-
import { z as
|
|
4509
|
-
var simulation_current_probe =
|
|
4510
|
-
type:
|
|
4524
|
+
import { z as z199 } from "zod";
|
|
4525
|
+
var simulation_current_probe = z199.object({
|
|
4526
|
+
type: z199.literal("simulation_current_probe"),
|
|
4511
4527
|
simulation_current_probe_id: getZodPrefixedIdWithDefault(
|
|
4512
4528
|
"simulation_current_probe"
|
|
4513
4529
|
),
|
|
4514
|
-
source_component_id:
|
|
4515
|
-
name:
|
|
4516
|
-
positive_source_port_id:
|
|
4517
|
-
negative_source_port_id:
|
|
4518
|
-
positive_source_net_id:
|
|
4519
|
-
negative_source_net_id:
|
|
4520
|
-
subcircuit_id:
|
|
4521
|
-
color:
|
|
4530
|
+
source_component_id: z199.string().optional(),
|
|
4531
|
+
name: z199.string().optional(),
|
|
4532
|
+
positive_source_port_id: z199.string().optional(),
|
|
4533
|
+
negative_source_port_id: z199.string().optional(),
|
|
4534
|
+
positive_source_net_id: z199.string().optional(),
|
|
4535
|
+
negative_source_net_id: z199.string().optional(),
|
|
4536
|
+
subcircuit_id: z199.string().optional(),
|
|
4537
|
+
color: z199.string().optional()
|
|
4522
4538
|
}).describe(
|
|
4523
4539
|
"Defines a current probe for simulation. It measures current flowing from the positive endpoint to the negative endpoint."
|
|
4524
4540
|
).superRefine((data, ctx) => {
|
|
@@ -4530,7 +4546,7 @@ var simulation_current_probe = z198.object({
|
|
|
4530
4546
|
const hasNets = hasPositiveNet || hasNegativeNet;
|
|
4531
4547
|
if (hasPorts && hasNets) {
|
|
4532
4548
|
ctx.addIssue({
|
|
4533
|
-
code:
|
|
4549
|
+
code: z199.ZodIssueCode.custom,
|
|
4534
4550
|
message: "Cannot mix port and net connections in a current probe."
|
|
4535
4551
|
});
|
|
4536
4552
|
return;
|
|
@@ -4538,7 +4554,7 @@ var simulation_current_probe = z198.object({
|
|
|
4538
4554
|
if (hasPorts) {
|
|
4539
4555
|
if (!hasPositivePort || !hasNegativePort) {
|
|
4540
4556
|
ctx.addIssue({
|
|
4541
|
-
code:
|
|
4557
|
+
code: z199.ZodIssueCode.custom,
|
|
4542
4558
|
message: "Current probe using source ports requires both positive_source_port_id and negative_source_port_id."
|
|
4543
4559
|
});
|
|
4544
4560
|
}
|
|
@@ -4547,71 +4563,71 @@ var simulation_current_probe = z198.object({
|
|
|
4547
4563
|
if (hasNets) {
|
|
4548
4564
|
if (!hasPositiveNet || !hasNegativeNet) {
|
|
4549
4565
|
ctx.addIssue({
|
|
4550
|
-
code:
|
|
4566
|
+
code: z199.ZodIssueCode.custom,
|
|
4551
4567
|
message: "Current probe using source nets requires both positive_source_net_id and negative_source_net_id."
|
|
4552
4568
|
});
|
|
4553
4569
|
}
|
|
4554
4570
|
return;
|
|
4555
4571
|
}
|
|
4556
4572
|
ctx.addIssue({
|
|
4557
|
-
code:
|
|
4573
|
+
code: z199.ZodIssueCode.custom,
|
|
4558
4574
|
message: "A current probe must have either positive/negative source port ids or positive/negative source net ids."
|
|
4559
4575
|
});
|
|
4560
4576
|
});
|
|
4561
4577
|
expectTypesMatch(true);
|
|
4562
4578
|
|
|
4563
4579
|
// src/simulation/simulation_unknown_experiment_error.ts
|
|
4564
|
-
import { z as
|
|
4580
|
+
import { z as z200 } from "zod";
|
|
4565
4581
|
var simulation_unknown_experiment_error = base_circuit_json_error.extend({
|
|
4566
|
-
type:
|
|
4582
|
+
type: z200.literal("simulation_unknown_experiment_error"),
|
|
4567
4583
|
simulation_unknown_experiment_error_id: getZodPrefixedIdWithDefault(
|
|
4568
4584
|
"simulation_unknown_experiment_error"
|
|
4569
4585
|
),
|
|
4570
|
-
error_type:
|
|
4571
|
-
simulation_experiment_id:
|
|
4572
|
-
subcircuit_id:
|
|
4586
|
+
error_type: z200.literal("simulation_unknown_experiment_error").default("simulation_unknown_experiment_error"),
|
|
4587
|
+
simulation_experiment_id: z200.string().optional(),
|
|
4588
|
+
subcircuit_id: z200.string().optional()
|
|
4573
4589
|
}).describe("An unknown error occurred during the simulation experiment.");
|
|
4574
4590
|
expectTypesMatch(true);
|
|
4575
4591
|
|
|
4576
4592
|
// src/simulation/simulation_parameter_sweep.ts
|
|
4577
|
-
import { z as
|
|
4578
|
-
var simulation_parameter_type =
|
|
4593
|
+
import { z as z201 } from "zod";
|
|
4594
|
+
var simulation_parameter_type = z201.enum([
|
|
4579
4595
|
"resistance",
|
|
4580
4596
|
"capacitance",
|
|
4581
4597
|
"inductance",
|
|
4582
4598
|
"voltage",
|
|
4583
4599
|
"current"
|
|
4584
4600
|
]);
|
|
4585
|
-
var simulation_parameter_sweep_base =
|
|
4586
|
-
type:
|
|
4601
|
+
var simulation_parameter_sweep_base = z201.object({
|
|
4602
|
+
type: z201.literal("simulation_parameter_sweep"),
|
|
4587
4603
|
simulation_parameter_sweep_id: getZodPrefixedIdWithDefault(
|
|
4588
4604
|
"simulation_parameter_sweep"
|
|
4589
4605
|
),
|
|
4590
|
-
simulation_experiment_id:
|
|
4591
|
-
name:
|
|
4592
|
-
parameter_values:
|
|
4606
|
+
simulation_experiment_id: z201.string(),
|
|
4607
|
+
name: z201.string().optional(),
|
|
4608
|
+
parameter_values: z201.array(z201.number()).min(1),
|
|
4593
4609
|
parameter_unit: simulation_parameter_unit
|
|
4594
4610
|
});
|
|
4595
|
-
var simulation_parameter_sweep =
|
|
4611
|
+
var simulation_parameter_sweep = z201.discriminatedUnion("parameter_type", [
|
|
4596
4612
|
simulation_parameter_sweep_base.extend({
|
|
4597
|
-
parameter_type:
|
|
4598
|
-
resistor_source_component_id:
|
|
4613
|
+
parameter_type: z201.literal("resistance"),
|
|
4614
|
+
resistor_source_component_id: z201.string()
|
|
4599
4615
|
}),
|
|
4600
4616
|
simulation_parameter_sweep_base.extend({
|
|
4601
|
-
parameter_type:
|
|
4602
|
-
capacitor_source_component_id:
|
|
4617
|
+
parameter_type: z201.literal("capacitance"),
|
|
4618
|
+
capacitor_source_component_id: z201.string()
|
|
4603
4619
|
}),
|
|
4604
4620
|
simulation_parameter_sweep_base.extend({
|
|
4605
|
-
parameter_type:
|
|
4606
|
-
inductor_source_component_id:
|
|
4621
|
+
parameter_type: z201.literal("inductance"),
|
|
4622
|
+
inductor_source_component_id: z201.string()
|
|
4607
4623
|
}),
|
|
4608
4624
|
simulation_parameter_sweep_base.extend({
|
|
4609
|
-
parameter_type:
|
|
4610
|
-
source_net_id:
|
|
4625
|
+
parameter_type: z201.literal("voltage"),
|
|
4626
|
+
source_net_id: z201.string()
|
|
4611
4627
|
}),
|
|
4612
4628
|
simulation_parameter_sweep_base.extend({
|
|
4613
|
-
parameter_type:
|
|
4614
|
-
current_source_component_id:
|
|
4629
|
+
parameter_type: z201.literal("current"),
|
|
4630
|
+
current_source_component_id: z201.string()
|
|
4615
4631
|
})
|
|
4616
4632
|
]).describe("Repeats a simulation experiment over component parameter values");
|
|
4617
4633
|
expectTypesMatch(
|
|
@@ -4619,52 +4635,52 @@ expectTypesMatch(
|
|
|
4619
4635
|
);
|
|
4620
4636
|
|
|
4621
4637
|
// src/simulation/simulation_dc_operating_point_voltage.ts
|
|
4622
|
-
import { z as
|
|
4623
|
-
var simulation_dc_operating_point_voltage =
|
|
4624
|
-
type:
|
|
4638
|
+
import { z as z202 } from "zod";
|
|
4639
|
+
var simulation_dc_operating_point_voltage = z202.object({
|
|
4640
|
+
type: z202.literal("simulation_dc_operating_point_voltage"),
|
|
4625
4641
|
simulation_dc_operating_point_voltage_id: getZodPrefixedIdWithDefault(
|
|
4626
4642
|
"simulation_dc_operating_point_voltage"
|
|
4627
4643
|
),
|
|
4628
|
-
simulation_experiment_id:
|
|
4644
|
+
simulation_experiment_id: z202.string(),
|
|
4629
4645
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4630
|
-
simulation_voltage_probe_id:
|
|
4631
|
-
voltage:
|
|
4632
|
-
name:
|
|
4633
|
-
color:
|
|
4646
|
+
simulation_voltage_probe_id: z202.string(),
|
|
4647
|
+
voltage: z202.number(),
|
|
4648
|
+
name: z202.string().optional(),
|
|
4649
|
+
color: z202.string().optional()
|
|
4634
4650
|
});
|
|
4635
4651
|
expectTypesMatch(true);
|
|
4636
4652
|
|
|
4637
4653
|
// src/simulation/simulation_dc_operating_point_current.ts
|
|
4638
|
-
import { z as
|
|
4639
|
-
var simulation_dc_operating_point_current =
|
|
4640
|
-
type:
|
|
4654
|
+
import { z as z203 } from "zod";
|
|
4655
|
+
var simulation_dc_operating_point_current = z203.object({
|
|
4656
|
+
type: z203.literal("simulation_dc_operating_point_current"),
|
|
4641
4657
|
simulation_dc_operating_point_current_id: getZodPrefixedIdWithDefault(
|
|
4642
4658
|
"simulation_dc_operating_point_current"
|
|
4643
4659
|
),
|
|
4644
|
-
simulation_experiment_id:
|
|
4660
|
+
simulation_experiment_id: z203.string(),
|
|
4645
4661
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4646
|
-
simulation_current_probe_id:
|
|
4647
|
-
current:
|
|
4648
|
-
name:
|
|
4649
|
-
color:
|
|
4662
|
+
simulation_current_probe_id: z203.string(),
|
|
4663
|
+
current: z203.number(),
|
|
4664
|
+
name: z203.string().optional(),
|
|
4665
|
+
color: z203.string().optional()
|
|
4650
4666
|
});
|
|
4651
4667
|
expectTypesMatch(true);
|
|
4652
4668
|
|
|
4653
4669
|
// src/simulation/simulation_dc_sweep_voltage_graph.ts
|
|
4654
|
-
import { z as
|
|
4655
|
-
var simulation_dc_sweep_voltage_graph =
|
|
4656
|
-
type:
|
|
4670
|
+
import { z as z204 } from "zod";
|
|
4671
|
+
var simulation_dc_sweep_voltage_graph = z204.object({
|
|
4672
|
+
type: z204.literal("simulation_dc_sweep_voltage_graph"),
|
|
4657
4673
|
simulation_dc_sweep_voltage_graph_id: getZodPrefixedIdWithDefault(
|
|
4658
4674
|
"simulation_dc_sweep_voltage_graph"
|
|
4659
4675
|
),
|
|
4660
|
-
simulation_experiment_id:
|
|
4676
|
+
simulation_experiment_id: z204.string(),
|
|
4661
4677
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4662
|
-
simulation_voltage_probe_id:
|
|
4663
|
-
sweep_values:
|
|
4678
|
+
simulation_voltage_probe_id: z204.string(),
|
|
4679
|
+
sweep_values: z204.array(z204.number()),
|
|
4664
4680
|
sweep_unit: simulation_dc_sweep_unit,
|
|
4665
|
-
voltage_levels:
|
|
4666
|
-
name:
|
|
4667
|
-
color:
|
|
4681
|
+
voltage_levels: z204.array(z204.number()),
|
|
4682
|
+
name: z204.string().optional(),
|
|
4683
|
+
color: z204.string().optional()
|
|
4668
4684
|
}).refine(
|
|
4669
4685
|
(graph) => graph.sweep_values.length === graph.voltage_levels.length,
|
|
4670
4686
|
{
|
|
@@ -4674,20 +4690,20 @@ var simulation_dc_sweep_voltage_graph = z203.object({
|
|
|
4674
4690
|
expectTypesMatch(true);
|
|
4675
4691
|
|
|
4676
4692
|
// src/simulation/simulation_dc_sweep_current_graph.ts
|
|
4677
|
-
import { z as
|
|
4678
|
-
var simulation_dc_sweep_current_graph =
|
|
4679
|
-
type:
|
|
4693
|
+
import { z as z205 } from "zod";
|
|
4694
|
+
var simulation_dc_sweep_current_graph = z205.object({
|
|
4695
|
+
type: z205.literal("simulation_dc_sweep_current_graph"),
|
|
4680
4696
|
simulation_dc_sweep_current_graph_id: getZodPrefixedIdWithDefault(
|
|
4681
4697
|
"simulation_dc_sweep_current_graph"
|
|
4682
4698
|
),
|
|
4683
|
-
simulation_experiment_id:
|
|
4699
|
+
simulation_experiment_id: z205.string(),
|
|
4684
4700
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4685
|
-
simulation_current_probe_id:
|
|
4686
|
-
sweep_values:
|
|
4701
|
+
simulation_current_probe_id: z205.string(),
|
|
4702
|
+
sweep_values: z205.array(z205.number()),
|
|
4687
4703
|
sweep_unit: simulation_dc_sweep_unit,
|
|
4688
|
-
current_levels:
|
|
4689
|
-
name:
|
|
4690
|
-
color:
|
|
4704
|
+
current_levels: z205.array(z205.number()),
|
|
4705
|
+
name: z205.string().optional(),
|
|
4706
|
+
color: z205.string().optional()
|
|
4691
4707
|
}).refine(
|
|
4692
4708
|
(graph) => graph.sweep_values.length === graph.current_levels.length,
|
|
4693
4709
|
{
|
|
@@ -4697,29 +4713,29 @@ var simulation_dc_sweep_current_graph = z204.object({
|
|
|
4697
4713
|
expectTypesMatch(true);
|
|
4698
4714
|
|
|
4699
4715
|
// src/simulation/simulation_ac_sweep_voltage_graph.ts
|
|
4700
|
-
import { z as
|
|
4716
|
+
import { z as z207 } from "zod";
|
|
4701
4717
|
|
|
4702
4718
|
// src/simulation/simulation_complex_sample.ts
|
|
4703
|
-
import { z as
|
|
4704
|
-
var simulation_complex_sample =
|
|
4705
|
-
re:
|
|
4706
|
-
im:
|
|
4719
|
+
import { z as z206 } from "zod";
|
|
4720
|
+
var simulation_complex_sample = z206.object({
|
|
4721
|
+
re: z206.number(),
|
|
4722
|
+
im: z206.number()
|
|
4707
4723
|
});
|
|
4708
4724
|
expectTypesMatch(true);
|
|
4709
4725
|
|
|
4710
4726
|
// src/simulation/simulation_ac_sweep_voltage_graph.ts
|
|
4711
|
-
var simulation_ac_sweep_voltage_graph =
|
|
4712
|
-
type:
|
|
4727
|
+
var simulation_ac_sweep_voltage_graph = z207.object({
|
|
4728
|
+
type: z207.literal("simulation_ac_sweep_voltage_graph"),
|
|
4713
4729
|
simulation_ac_sweep_voltage_graph_id: getZodPrefixedIdWithDefault(
|
|
4714
4730
|
"simulation_ac_sweep_voltage_graph"
|
|
4715
4731
|
),
|
|
4716
|
-
simulation_experiment_id:
|
|
4732
|
+
simulation_experiment_id: z207.string(),
|
|
4717
4733
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4718
|
-
simulation_voltage_probe_id:
|
|
4719
|
-
frequencies_hz:
|
|
4720
|
-
complex_voltages:
|
|
4721
|
-
name:
|
|
4722
|
-
color:
|
|
4734
|
+
simulation_voltage_probe_id: z207.string(),
|
|
4735
|
+
frequencies_hz: z207.array(z207.number()),
|
|
4736
|
+
complex_voltages: z207.array(simulation_complex_sample),
|
|
4737
|
+
name: z207.string().optional(),
|
|
4738
|
+
color: z207.string().optional()
|
|
4723
4739
|
}).refine(
|
|
4724
4740
|
(graph) => graph.frequencies_hz.length === graph.complex_voltages.length,
|
|
4725
4741
|
{
|
|
@@ -4729,19 +4745,19 @@ var simulation_ac_sweep_voltage_graph = z206.object({
|
|
|
4729
4745
|
expectTypesMatch(true);
|
|
4730
4746
|
|
|
4731
4747
|
// src/simulation/simulation_ac_sweep_current_graph.ts
|
|
4732
|
-
import { z as
|
|
4733
|
-
var simulation_ac_sweep_current_graph =
|
|
4734
|
-
type:
|
|
4748
|
+
import { z as z208 } from "zod";
|
|
4749
|
+
var simulation_ac_sweep_current_graph = z208.object({
|
|
4750
|
+
type: z208.literal("simulation_ac_sweep_current_graph"),
|
|
4735
4751
|
simulation_ac_sweep_current_graph_id: getZodPrefixedIdWithDefault(
|
|
4736
4752
|
"simulation_ac_sweep_current_graph"
|
|
4737
4753
|
),
|
|
4738
|
-
simulation_experiment_id:
|
|
4754
|
+
simulation_experiment_id: z208.string(),
|
|
4739
4755
|
simulation_parameter_sweep_coordinate: simulation_parameter_sweep_coordinate.optional(),
|
|
4740
|
-
simulation_current_probe_id:
|
|
4741
|
-
frequencies_hz:
|
|
4742
|
-
complex_currents:
|
|
4743
|
-
name:
|
|
4744
|
-
color:
|
|
4756
|
+
simulation_current_probe_id: z208.string(),
|
|
4757
|
+
frequencies_hz: z208.array(z208.number()),
|
|
4758
|
+
complex_currents: z208.array(simulation_complex_sample),
|
|
4759
|
+
name: z208.string().optional(),
|
|
4760
|
+
color: z208.string().optional()
|
|
4745
4761
|
}).refine(
|
|
4746
4762
|
(graph) => graph.frequencies_hz.length === graph.complex_currents.length,
|
|
4747
4763
|
{
|
|
@@ -4751,52 +4767,52 @@ var simulation_ac_sweep_current_graph = z207.object({
|
|
|
4751
4767
|
expectTypesMatch(true);
|
|
4752
4768
|
|
|
4753
4769
|
// src/simulation/simulation_op_amp.ts
|
|
4754
|
-
import { z as
|
|
4755
|
-
var simulation_op_amp =
|
|
4756
|
-
type:
|
|
4770
|
+
import { z as z209 } from "zod";
|
|
4771
|
+
var simulation_op_amp = z209.object({
|
|
4772
|
+
type: z209.literal("simulation_op_amp"),
|
|
4757
4773
|
simulation_op_amp_id: getZodPrefixedIdWithDefault("simulation_op_amp"),
|
|
4758
|
-
source_component_id:
|
|
4759
|
-
inverting_input_source_port_id:
|
|
4760
|
-
non_inverting_input_source_port_id:
|
|
4761
|
-
output_source_port_id:
|
|
4762
|
-
positive_supply_source_port_id:
|
|
4763
|
-
negative_supply_source_port_id:
|
|
4774
|
+
source_component_id: z209.string().optional(),
|
|
4775
|
+
inverting_input_source_port_id: z209.string(),
|
|
4776
|
+
non_inverting_input_source_port_id: z209.string(),
|
|
4777
|
+
output_source_port_id: z209.string(),
|
|
4778
|
+
positive_supply_source_port_id: z209.string(),
|
|
4779
|
+
negative_supply_source_port_id: z209.string()
|
|
4764
4780
|
}).describe("Defines a simple ideal operational amplifier for simulation");
|
|
4765
4781
|
expectTypesMatch(true);
|
|
4766
4782
|
|
|
4767
4783
|
// src/simulation/simulation_spice_subcircuit.ts
|
|
4768
|
-
import { z as
|
|
4769
|
-
var simulation_spice_subcircuit =
|
|
4770
|
-
type:
|
|
4784
|
+
import { z as z210 } from "zod";
|
|
4785
|
+
var simulation_spice_subcircuit = z210.object({
|
|
4786
|
+
type: z210.literal("simulation_spice_subcircuit"),
|
|
4771
4787
|
simulation_spice_subcircuit_id: getZodPrefixedIdWithDefault(
|
|
4772
4788
|
"simulation_spice_subcircuit"
|
|
4773
4789
|
),
|
|
4774
|
-
source_component_id:
|
|
4775
|
-
spice_pin_to_source_port_map:
|
|
4776
|
-
subcircuit_source:
|
|
4790
|
+
source_component_id: z210.string(),
|
|
4791
|
+
spice_pin_to_source_port_map: z210.record(z210.string(), z210.string()),
|
|
4792
|
+
subcircuit_source: z210.string()
|
|
4777
4793
|
}).describe("Defines a custom SPICE subcircuit model for simulation");
|
|
4778
4794
|
expectTypesMatch(
|
|
4779
4795
|
true
|
|
4780
4796
|
);
|
|
4781
4797
|
|
|
4782
4798
|
// src/simulation/simulation_oscilloscope_trace.ts
|
|
4783
|
-
import { z as
|
|
4799
|
+
import { z as z211 } from "zod";
|
|
4784
4800
|
var hasValue = (value) => value !== void 0;
|
|
4785
|
-
var simulation_oscilloscope_trace =
|
|
4786
|
-
type:
|
|
4801
|
+
var simulation_oscilloscope_trace = z211.object({
|
|
4802
|
+
type: z211.literal("simulation_oscilloscope_trace"),
|
|
4787
4803
|
simulation_oscilloscope_trace_id: getZodPrefixedIdWithDefault(
|
|
4788
4804
|
"simulation_oscilloscope_trace"
|
|
4789
4805
|
),
|
|
4790
|
-
simulation_transient_voltage_graph_id:
|
|
4791
|
-
simulation_transient_current_graph_id:
|
|
4792
|
-
simulation_voltage_probe_id:
|
|
4793
|
-
simulation_current_probe_id:
|
|
4794
|
-
display_name:
|
|
4795
|
-
color:
|
|
4796
|
-
display_center_value:
|
|
4797
|
-
display_center_offset_divs:
|
|
4798
|
-
volts_per_div:
|
|
4799
|
-
amps_per_div:
|
|
4806
|
+
simulation_transient_voltage_graph_id: z211.string().optional(),
|
|
4807
|
+
simulation_transient_current_graph_id: z211.string().optional(),
|
|
4808
|
+
simulation_voltage_probe_id: z211.string().optional(),
|
|
4809
|
+
simulation_current_probe_id: z211.string().optional(),
|
|
4810
|
+
display_name: z211.string().optional(),
|
|
4811
|
+
color: z211.string().optional(),
|
|
4812
|
+
display_center_value: z211.number().optional(),
|
|
4813
|
+
display_center_offset_divs: z211.number().optional(),
|
|
4814
|
+
volts_per_div: z211.number().positive().optional(),
|
|
4815
|
+
amps_per_div: z211.number().positive().optional()
|
|
4800
4816
|
}).describe(
|
|
4801
4817
|
"Defines how a simulation measurement is rendered as an oscilloscope-style trace."
|
|
4802
4818
|
).superRefine((data, ctx) => {
|
|
@@ -4810,19 +4826,19 @@ var simulation_oscilloscope_trace = z210.object({
|
|
|
4810
4826
|
].filter(hasValue).length;
|
|
4811
4827
|
if (voltageReferences + currentReferences !== 1) {
|
|
4812
4828
|
ctx.addIssue({
|
|
4813
|
-
code:
|
|
4829
|
+
code: z211.ZodIssueCode.custom,
|
|
4814
4830
|
message: "An oscilloscope trace must reference exactly one voltage graph, current graph, voltage probe, or current probe."
|
|
4815
4831
|
});
|
|
4816
4832
|
}
|
|
4817
4833
|
if (voltageReferences > 0 && data.amps_per_div !== void 0) {
|
|
4818
4834
|
ctx.addIssue({
|
|
4819
|
-
code:
|
|
4835
|
+
code: z211.ZodIssueCode.custom,
|
|
4820
4836
|
message: "Voltage oscilloscope traces must use volts_per_div, not amps_per_div."
|
|
4821
4837
|
});
|
|
4822
4838
|
}
|
|
4823
4839
|
if (currentReferences > 0 && data.volts_per_div !== void 0) {
|
|
4824
4840
|
ctx.addIssue({
|
|
4825
|
-
code:
|
|
4841
|
+
code: z211.ZodIssueCode.custom,
|
|
4826
4842
|
message: "Current oscilloscope traces must use amps_per_div, not volts_per_div."
|
|
4827
4843
|
});
|
|
4828
4844
|
}
|
|
@@ -4830,8 +4846,8 @@ var simulation_oscilloscope_trace = z210.object({
|
|
|
4830
4846
|
expectTypesMatch(true);
|
|
4831
4847
|
|
|
4832
4848
|
// src/any_circuit_element.ts
|
|
4833
|
-
import { z as
|
|
4834
|
-
var any_circuit_element =
|
|
4849
|
+
import { z as z212 } from "zod";
|
|
4850
|
+
var any_circuit_element = z212.union([
|
|
4835
4851
|
source_runtime_error,
|
|
4836
4852
|
source_trace,
|
|
4837
4853
|
source_bus,
|
|
@@ -4984,6 +5000,7 @@ var any_circuit_element = z211.union([
|
|
|
4984
5000
|
schematic_table,
|
|
4985
5001
|
schematic_table_cell,
|
|
4986
5002
|
cad_component,
|
|
5003
|
+
cad_collision_error,
|
|
4987
5004
|
simulation_voltage_source,
|
|
4988
5005
|
simulation_current_source,
|
|
4989
5006
|
simulation_experiment,
|
|
@@ -5017,6 +5034,7 @@ export {
|
|
|
5017
5034
|
battery_capacity,
|
|
5018
5035
|
brep_shape,
|
|
5019
5036
|
cadModelDefaultDirectionMap,
|
|
5037
|
+
cad_collision_error,
|
|
5020
5038
|
cad_component,
|
|
5021
5039
|
cad_model_axis_directions,
|
|
5022
5040
|
cad_model_formats,
|